Browse Source

Upgrade to Chromium 85.0.4183.83

Zoraver Kang 3 years ago
parent
commit
7ba01e6c59
61 changed files with 844 additions and 760 deletions
  1. 1 1
      chromium_version.txt
  2. 140 57
      domain_substitution.list
  3. 1 1
      flags.gn
  4. 44 45
      patches/core/inox-patchset/0001-fix-building-without-safebrowsing.patch
  5. 1 1
      patches/core/inox-patchset/0003-disable-autofill-download-manager.patch
  6. 13 8
      patches/core/inox-patchset/0005-disable-default-extensions.patch
  7. 1 1
      patches/core/inox-patchset/0009-disable-google-ipv6-probes.patch
  8. 3 3
      patches/core/inox-patchset/0014-disable-translation-lang-fetch.patch
  9. 17 28
      patches/core/iridium-browser/all-add-trk-prefixes-to-possibly-evil-connections.patch
  10. 1 1
      patches/core/iridium-browser/safe_browsing-disable-incident-reporting.patch
  11. 3 12
      patches/core/iridium-browser/safe_browsing-disable-reporting-of-safebrowsing-over.patch
  12. 7 7
      patches/core/ungoogled-chromium/block-trk-and-subdomains.patch
  13. 3 3
      patches/core/ungoogled-chromium/disable-crash-reporter.patch
  14. 9 9
      patches/core/ungoogled-chromium/disable-fonts-googleapis-references.patch
  15. 7 7
      patches/core/ungoogled-chromium/disable-gaia.patch
  16. 42 22
      patches/core/ungoogled-chromium/disable-google-host-detection.patch
  17. 1 1
      patches/core/ungoogled-chromium/disable-mei-preload.patch
  18. 1 1
      patches/core/ungoogled-chromium/disable-signin.patch
  19. 1 1
      patches/core/ungoogled-chromium/disable-untraceable-urls.patch
  20. 8 8
      patches/core/ungoogled-chromium/disable-webstore-urls.patch
  21. 4 4
      patches/core/ungoogled-chromium/fix-building-without-enabling-reporting.patch
  22. 1 1
      patches/core/ungoogled-chromium/fix-building-without-one-click-signin.patch
  23. 90 92
      patches/core/ungoogled-chromium/fix-building-without-safebrowsing.patch
  24. 188 257
      patches/core/ungoogled-chromium/remove-unused-preferences-fields.patch
  25. 11 11
      patches/core/ungoogled-chromium/use-local-devtools-files.patch
  26. 27 27
      patches/extra/bromite/fingerprinting-flags-client-rects-and-measuretext.patch
  27. 10 10
      patches/extra/bromite/flag-fingerprinting-canvas-image-data-noise.patch
  28. 9 9
      patches/extra/bromite/flag-max-connections-per-host.patch
  29. 1 1
      patches/extra/debian/disable/android.patch
  30. 2 2
      patches/extra/debian/disable/fuzzers.patch
  31. 1 1
      patches/extra/debian/disable/welcome-page.patch
  32. 4 4
      patches/extra/inox-patchset/0006-modify-default-prefs.patch
  33. 1 1
      patches/extra/inox-patchset/0008-restore-classic-ntp.patch
  34. 1 1
      patches/extra/inox-patchset/0016-chromium-sandbox-pie.patch
  35. 2 2
      patches/extra/iridium-browser/Remove-EV-certificates.patch
  36. 1 1
      patches/extra/iridium-browser/browser-disable-profile-auto-import-on-first-run.patch
  37. 1 1
      patches/extra/iridium-browser/net-cert-increase-default-key-length-for-newly-gener.patch
  38. 1 1
      patches/extra/iridium-browser/prefs-always-prompt-for-download-directory-by-defaul.patch
  39. 3 3
      patches/extra/ungoogled-chromium/add-flag-for-bookmark-bar-ntp.patch
  40. 20 20
      patches/extra/ungoogled-chromium/add-flag-for-omnibox-autocomplete-filtering.patch
  41. 9 9
      patches/extra/ungoogled-chromium/add-flag-for-pdf-plugin-name.patch
  42. 12 19
      patches/extra/ungoogled-chromium/add-flag-for-search-engine-collection.patch
  43. 3 3
      patches/extra/ungoogled-chromium/add-flag-to-configure-extension-downloading.patch
  44. 2 2
      patches/extra/ungoogled-chromium/add-flag-to-force-punycode-hostnames.patch
  45. 5 5
      patches/extra/ungoogled-chromium/add-flag-to-scroll-tabs.patch
  46. 2 2
      patches/extra/ungoogled-chromium/add-flag-to-show-avatar-button.patch
  47. 2 2
      patches/extra/ungoogled-chromium/add-flag-to-stack-tabs.patch
  48. 2 2
      patches/extra/ungoogled-chromium/add-ipv6-probing-option.patch
  49. 3 3
      patches/extra/ungoogled-chromium/add-suggestions-url-field.patch
  50. 1 1
      patches/extra/ungoogled-chromium/disable-dial-repeating-discovery.patch
  51. 1 1
      patches/extra/ungoogled-chromium/disable-download-quarantine.patch
  52. 1 1
      patches/extra/ungoogled-chromium/disable-formatting-in-omnibox.patch
  53. 1 1
      patches/extra/ungoogled-chromium/disable-webgl-renderer-info.patch
  54. 1 1
      patches/extra/ungoogled-chromium/enable-default-prefetch-privacy-changes.patch
  55. 1 1
      patches/extra/ungoogled-chromium/enable-default-reduced-referrer-granularity.patch
  56. 1 1
      patches/extra/ungoogled-chromium/enable-menu-on-reload-button.patch
  57. 5 6
      patches/extra/ungoogled-chromium/enable-page-saving-on-more-pages.patch
  58. 1 1
      patches/extra/ungoogled-chromium/enable-paste-and-go-new-tab-button.patch
  59. 1 14
      patches/extra/ungoogled-chromium/fix-building-without-mdns-and-service-discovery.patch
  60. 1 1
      patches/extra/ungoogled-chromium/popups-to-tabs.patch
  61. 107 18
      pruning.list

+ 1 - 1
chromium_version.txt

@@ -1 +1 @@
-84.0.4147.135
+85.0.4183.83

File diff suppressed because it is too large
+ 140 - 57
domain_substitution.list


+ 1 - 1
flags.gn

@@ -1,6 +1,6 @@
 clang_use_chrome_plugins=false
-closure_compile=false
 enable_hangout_services_extension=false
+enable_js_type_check=false
 enable_mdns=false
 enable_mse_mpeg2ts_stream_parser=true
 enable_nacl=false

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

@@ -1,6 +1,6 @@
 --- a/chrome/browser/BUILD.gn
 +++ b/chrome/browser/BUILD.gn
-@@ -3187,8 +3187,6 @@ static_library("browser") {
+@@ -3099,8 +3099,6 @@ static_library("browser") {
        "download/download_commands.h",
        "download/download_crx_util.cc",
        "download/download_crx_util.h",
@@ -22,7 +22,7 @@
  namespace subresource_filter {
  class RulesetService;
  }
-@@ -207,9 +203,6 @@ class BrowserProcess {
+@@ -211,9 +207,6 @@ class BrowserProcess {
    // on this platform (or this is a unit test).
    virtual StatusTray* status_tray() = 0;
  
@@ -34,7 +34,7 @@
    virtual subresource_filter::RulesetService*
 --- a/chrome/browser/browser_process_impl.cc
 +++ b/chrome/browser/browser_process_impl.cc
-@@ -70,7 +70,6 @@
+@@ -69,7 +69,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"
@@ -42,7 +42,7 @@
  #include "chrome/browser/shell_integration.h"
  #include "chrome/browser/site_isolation/prefs_observer.h"
  #include "chrome/browser/ssl/secure_origin_prefs_observer.h"
-@@ -374,8 +373,6 @@ void BrowserProcessImpl::StartTearDown()
+@@ -375,8 +374,6 @@ void BrowserProcessImpl::StartTearDown()
  
    metrics_services_manager_.reset();
    intranet_redirect_detector_.reset();
@@ -51,7 +51,7 @@
    network_time_tracker_.reset();
  #if BUILDFLAG(ENABLE_PLUGINS)
    plugins_resource_service_.reset();
-@@ -989,14 +986,6 @@ StatusTray* BrowserProcessImpl::status_t
+@@ -990,14 +987,6 @@ StatusTray* BrowserProcessImpl::status_t
    return status_tray_.get();
  }
  
@@ -66,7 +66,7 @@
  subresource_filter::RulesetService*
  BrowserProcessImpl::subresource_filter_ruleset_service() {
    DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-@@ -1255,26 +1244,6 @@ void BrowserProcessImpl::CreateBackgroun
+@@ -1264,26 +1253,6 @@ void BrowserProcessImpl::CreateBackgroun
  #endif
  }
  
@@ -102,8 +102,8 @@
 -  safe_browsing::SafeBrowsingService* safe_browsing_service() override;
    subresource_filter::RulesetService* subresource_filter_ruleset_service()
        override;
-   optimization_guide::OptimizationGuideService* optimization_guide_service()
-@@ -312,9 +311,6 @@ class BrowserProcessImpl : public Browse
+   federated_learning::FlocBlocklistService* floc_blocklist_service() override;
+@@ -314,9 +313,6 @@ class BrowserProcessImpl : public Browse
    std::unique_ptr<BackgroundModeManager> background_mode_manager_;
  #endif
  
@@ -115,7 +115,7 @@
        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
-@@ -63,7 +63,6 @@
+@@ -65,7 +65,6 @@
  #include "chrome/browser/previews/previews_service.h"
  #include "chrome/browser/previews/previews_service_factory.h"
  #include "chrome/browser/profiles/profile.h"
@@ -123,7 +123,7 @@
  #include "chrome/browser/translate/chrome_translate_client.h"
  #include "chrome/browser/ui/find_bar/find_bar_state.h"
  #include "chrome/browser/ui/find_bar/find_bar_state_factory.h"
-@@ -653,36 +652,6 @@ void ChromeBrowsingDataRemoverDelegate::
+@@ -692,36 +691,6 @@ void ChromeBrowsingDataRemoverDelegate::
          ContentSettingsType::CLIENT_HINTS, base::Time(), base::Time::Max(),
          website_settings_filter);
  
@@ -162,7 +162,7 @@
  
 --- a/chrome/browser/chrome_content_browser_client.cc
 +++ b/chrome/browser/chrome_content_browser_client.cc
-@@ -855,30 +855,6 @@ void SetApplicationLocaleOnIOThread(cons
+@@ -873,30 +873,6 @@ void SetApplicationLocaleOnIOThread(cons
    GetIOThreadApplicationLocale() = locale;
  }
  
@@ -193,7 +193,7 @@
  #if BUILDFLAG(ENABLE_EXTENSIONS)
  
  AppLoadedInTabSource ClassifyAppLoadedInTabSource(
-@@ -1377,7 +1353,6 @@ void ChromeContentBrowserClient::PostAft
+@@ -1396,7 +1372,6 @@ void ChromeContentBrowserClient::PostAft
    InitNetworkContextsParentDirectory();
  
    DCHECK_CURRENTLY_ON(BrowserThread::UI);
@@ -201,7 +201,7 @@
  }
  
  bool ChromeContentBrowserClient::IsBrowserStartupComplete() {
-@@ -2193,8 +2168,7 @@ void ChromeContentBrowserClient::AppendE
+@@ -2225,8 +2200,7 @@ void ChromeContentBrowserClient::AppendE
        // Disable client-side phishing detection in the renderer if it is
        // disabled in the Profile preferences, or by command line flag.
        if (!safe_browsing::IsSafeBrowsingEnabled(*prefs) ||
@@ -211,7 +211,7 @@
          command_line->AppendSwitch(
              switches::kDisableClientSidePhishingDetection);
        }
-@@ -4012,7 +3986,7 @@ ChromeContentBrowserClient::CreateThrott
+@@ -4040,7 +4014,7 @@ ChromeContentBrowserClient::CreateThrott
        base::BindRepeating(&MaybeTriggerSecurityInterstitialShownEvent));
    throttles.push_back(std::make_unique<SSLErrorNavigationThrottle>(
        handle,
@@ -220,7 +220,7 @@
        base::BindOnce(&HandleSSLErrorWrapper), base::BindOnce(&IsInHostedApp)));
  
    throttles.push_back(std::make_unique<LoginNavigationThrottle>(handle));
-@@ -4033,9 +4007,6 @@ ChromeContentBrowserClient::CreateThrott
+@@ -4061,9 +4035,6 @@ ChromeContentBrowserClient::CreateThrott
        &throttles);
  #endif
  
@@ -255,7 +255,7 @@
  }  // namespace
 --- a/chrome/browser/download/chrome_download_manager_delegate.cc
 +++ b/chrome/browser/download/chrome_download_manager_delegate.cc
-@@ -328,13 +328,6 @@ ChromeDownloadManagerDelegate::~ChromeDo
+@@ -358,13 +358,6 @@ ChromeDownloadManagerDelegate::~ChromeDo
  
  void ChromeDownloadManagerDelegate::SetDownloadManager(DownloadManager* dm) {
    download_manager_ = dm;
@@ -269,7 +269,7 @@
  }
  
  #if defined(OS_ANDROID)
-@@ -656,16 +649,6 @@ void ChromeDownloadManagerDelegate::Choo
+@@ -697,16 +690,6 @@ void ChromeDownloadManagerDelegate::Choo
  
  void ChromeDownloadManagerDelegate::SanitizeSavePackageResourceName(
      base::FilePath* filename) {
@@ -288,7 +288,7 @@
  void ChromeDownloadManagerDelegate::SanitizeDownloadParameters(
 --- a/chrome/browser/download/download_item_model.cc
 +++ b/chrome/browser/download/download_item_model.cc
-@@ -79,7 +79,7 @@ class DownloadItemModelData : public bas
+@@ -81,7 +81,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.
@@ -297,7 +297,7 @@
  
    // Whether the download is currently being revived.
    bool is_being_revived_;
-@@ -116,7 +116,7 @@ DownloadItemModelData::DownloadItemModel
+@@ -118,7 +118,7 @@ DownloadItemModelData::DownloadItemModel
      : should_show_in_shelf_(true),
        was_ui_notified_(false),
        should_prefer_opening_in_browser_(false),
@@ -306,7 +306,7 @@
        is_being_revived_(false) {}
  
  } // namespace
-@@ -400,13 +400,13 @@ void DownloadItemModel::SetShouldPreferO
+@@ -402,13 +402,13 @@ void DownloadItemModel::SetShouldPreferO
    data->should_prefer_opening_in_browser_ = preference;
  }
  
@@ -323,7 +323,7 @@
    DownloadItemModelData* data = DownloadItemModelData::GetOrCreate(download_);
    data->danger_level_ = danger_level;
  }
-@@ -567,9 +567,6 @@ bool DownloadItemModel::IsCommandEnabled
+@@ -569,9 +569,6 @@ bool DownloadItemModel::IsCommandEnabled
        // filename. Don't base an "Always open" decision based on it. Also
        // exclude extensions.
        return download_->CanOpenDownload() &&
@@ -335,7 +335,7 @@
        return !download_->IsSavePackageDownload() &&
 --- a/chrome/browser/download/download_prefs.cc
 +++ b/chrome/browser/download/download_prefs.cc
-@@ -256,14 +256,7 @@ DownloadPrefs::DownloadPrefs(Profile* pr
+@@ -264,14 +264,7 @@ DownloadPrefs::DownloadPrefs(Profile* pr
          base::FilePath::StringType(1, base::FilePath::kExtensionSeparator) +
          extension);
  
@@ -351,7 +351,7 @@
    }
  }
  
-@@ -431,10 +424,6 @@ bool DownloadPrefs::IsAutoOpenByPolicy(c
+@@ -457,10 +450,6 @@ bool DownloadPrefs::IsAutoOpenByPolicy(c
  bool DownloadPrefs::EnableAutoOpenByUserBasedOnExtension(
      const base::FilePath& file_name) {
    base::FilePath::StringType extension = file_name.Extension();
@@ -378,7 +378,7 @@
    // If no mime type or explicitly specified a name, don't replace file
    // extension.
    if (sniffed_mime_type.empty() || !suggested_filename.empty())
-@@ -1085,29 +1078,7 @@ DownloadFileType::DangerLevel DownloadTa
+@@ -1090,29 +1083,7 @@ DownloadFileType::DangerLevel DownloadTa
        download_->HasUserGesture())
      return DownloadFileType::NOT_DANGEROUS;
  
@@ -552,7 +552,7 @@
            referrer_entries)));
 --- a/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc
 +++ b/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc
-@@ -1028,51 +1028,9 @@ WebstorePrivateGetReferrerChainFunction:
+@@ -1036,51 +1036,9 @@ WebstorePrivateGetReferrerChainFunction:
  
  ExtensionFunction::ResponseAction
  WebstorePrivateGetReferrerChainFunction::Run() {
@@ -682,7 +682,7 @@
    // SimpleURLLoader -> (owned loader, extension id).
 --- a/chrome/browser/metrics/chrome_metrics_service_client.cc
 +++ b/chrome/browser/metrics/chrome_metrics_service_client.cc
-@@ -738,9 +738,6 @@ void ChromeMetricsServiceClient::Registe
+@@ -748,9 +748,6 @@ void ChromeMetricsServiceClient::Registe
    metrics_service_->RegisterMetricsProvider(
        std::make_unique<HttpsEngagementMetricsProvider>());
  
@@ -706,7 +706,7 @@
  // static
 --- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
 +++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
-@@ -236,7 +236,6 @@ void ChromeBrowserMainExtraPartsProfiles
+@@ -245,7 +245,6 @@ void ChromeBrowserMainExtraPartsProfiles
  #if BUILDFLAG(ENABLE_CAPTIVE_PORTAL_DETECTION)
    CaptivePortalServiceFactory::GetInstance();
  #endif
@@ -716,7 +716,7 @@
    ClientHintsFactory::GetInstance();
 --- a/chrome/browser/profiles/profile_impl.cc
 +++ b/chrome/browser/profiles/profile_impl.cc
-@@ -92,7 +92,6 @@
+@@ -94,7 +94,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"
@@ -724,7 +724,7 @@
  #include "chrome/browser/sharing/sharing_service_factory.h"
  #include "chrome/browser/signin/identity_manager_factory.h"
  #include "chrome/browser/signin/signin_ui_util.h"
-@@ -589,17 +588,6 @@ void ProfileImpl::LoadPrefsForNormalStar
+@@ -591,17 +590,6 @@ void ProfileImpl::LoadPrefsForNormalStar
  
    mojo::PendingRemote<prefs::mojom::TrackedPreferenceValidationDelegate>
        pref_validation_delegate;
@@ -764,7 +764,7 @@
    sources = [
      "chrome_controller_client.cc",
      "chrome_controller_client.h",
-@@ -61,6 +62,7 @@ static_library("safe_browsing") {
+@@ -62,6 +63,7 @@ static_library("safe_browsing") {
      ]
      deps += [ "//extensions/browser" ]
    }
@@ -774,7 +774,7 @@
      # "Safe Browsing Basic" files used for safe browsing in full mode
 --- a/chrome/browser/ssl/security_state_tab_helper.cc
 +++ b/chrome/browser/ssl/security_state_tab_helper.cc
-@@ -266,92 +266,6 @@ bool SecurityStateTabHelper::UsedPolicyI
+@@ -256,92 +256,6 @@ bool SecurityStateTabHelper::UsedPolicyI
  
  security_state::MaliciousContentStatus
  SecurityStateTabHelper::GetMaliciousContentStatus() const {
@@ -869,7 +869,7 @@
  
 --- a/chrome/browser/subresource_filter/chrome_subresource_filter_client.cc
 +++ b/chrome/browser/subresource_filter/chrome_subresource_filter_client.cc
-@@ -70,19 +70,6 @@ void ChromeSubresourceFilterClient::DidS
+@@ -69,18 +69,6 @@ void ChromeSubresourceFilterClient::DidS
  void ChromeSubresourceFilterClient::MaybeAppendNavigationThrottles(
      content::NavigationHandle* navigation_handle,
      std::vector<std::unique_ptr<content::NavigationThrottle>>* throttles) {
@@ -879,8 +879,7 @@
 -    throttles->push_back(
 -        std::make_unique<subresource_filter::
 -                             SubresourceFilterSafeBrowsingActivationThrottle>(
--            navigation_handle, this,
--            base::CreateSingleThreadTaskRunner({content::BrowserThread::IO}),
+-            navigation_handle, this, content::GetIOThreadTaskRunner({}),
 -            safe_browsing_service->database_manager()));
 -  }
 -
@@ -891,7 +890,7 @@
  void ChromeSubresourceFilterClient::OnReloadRequested() {
 --- a/chrome/browser/ui/BUILD.gn
 +++ b/chrome/browser/ui/BUILD.gn
-@@ -2960,7 +2960,6 @@ static_library("ui") {
+@@ -3292,7 +3292,6 @@ static_library("ui") {
        "views/device_chooser_content_view.h",
        "views/devtools_process_observer.cc",
        "views/devtools_process_observer.h",
@@ -901,7 +900,7 @@
        "views/download/download_item_view.cc",
 --- a/chrome/browser/ui/tab_helpers.cc
 +++ b/chrome/browser/ui/tab_helpers.cc
-@@ -300,10 +300,6 @@ void TabHelpers::AttachTabHelpers(WebCon
+@@ -297,10 +297,6 @@ void TabHelpers::AttachTabHelpers(WebCon
    resource_coordinator::ResourceCoordinatorTabHelper::CreateForWebContents(
        web_contents);
    ResourceLoadingHintsWebContentsObserver::CreateForWebContents(web_contents);
@@ -912,7 +911,7 @@
    ReputationWebContentsObserver::CreateForWebContents(web_contents);
    SearchEngineTabHelper::CreateForWebContents(web_contents);
    SecurityStateTabHelper::CreateForWebContents(web_contents);
-@@ -371,7 +367,6 @@ void TabHelpers::AttachTabHelpers(WebCon
+@@ -363,7 +359,6 @@ void TabHelpers::AttachTabHelpers(WebCon
    pdf::PDFWebContentsHelper::CreateForWebContentsWithClient(
        web_contents, std::make_unique<ChromePDFWebContentsHelperClient>());
    SadTabHelper::CreateForWebContents(web_contents);
@@ -1029,8 +1028,8 @@
    bool IsDeletingHistoryAllowed();
 --- a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc
 +++ b/chrome/browser/ui/webui/interstitials/interstitial_ui.cc
-@@ -272,113 +272,6 @@ std::unique_ptr<LookalikeUrlBlockingPage
-                                                      safe_url));
+@@ -287,113 +287,6 @@ CreateInsecureFormPage(content::WebConte
+                                                      request_url));
  }
  
 -std::unique_ptr<safe_browsing::SafeBrowsingBlockingPage>
@@ -1143,7 +1142,7 @@
  #if BUILDFLAG(ENABLE_CAPTIVE_PORTAL_DETECTION)
  std::unique_ptr<CaptivePortalBlockingPage> CreateCaptivePortalBlockingPage(
      content::WebContents* web_contents) {
-@@ -494,8 +387,6 @@ void InterstitialHTMLSource::StartDataRe
+@@ -510,8 +403,6 @@ void InterstitialHTMLSource::StartDataRe
      interstitial_delegate = CreateBlockedInterceptionBlockingPage(web_contents);
    } else if (path_without_query == "/legacy-tls") {
      interstitial_delegate = CreateLegacyTLSBlockingPage(web_contents);
@@ -1152,8 +1151,8 @@
    } else if (path_without_query == "/clock") {
      interstitial_delegate = CreateBadClockBlockingPage(web_contents);
    } else if (path_without_query == "/lookalike") {
-@@ -508,16 +399,12 @@ void InterstitialHTMLSource::StartDataRe
-     interstitial_delegate = CreateOriginPolicyInterstitialPage(web_contents);
+@@ -526,16 +417,12 @@ void InterstitialHTMLSource::StartDataRe
+     interstitial_delegate = CreateInsecureFormPage(web_contents);
    }
  
 -  if (path_without_query == "/quietsafebrowsing") {
@@ -1174,9 +1173,9 @@
      html = ui::ResourceBundle::GetSharedInstance().LoadDataResourceString(
 --- a/chrome/renderer/chrome_content_renderer_client.cc
 +++ b/chrome/renderer/chrome_content_renderer_client.cc
-@@ -88,7 +88,6 @@
- #include "components/paint_preview/buildflags/buildflags.h"
+@@ -92,7 +92,6 @@
  #include "components/pdf/renderer/pepper_pdf_host.h"
+ #include "components/prerender/common/prerender_types.mojom.h"
  #include "components/safe_browsing/buildflags.h"
 -#include "components/safe_browsing/content/renderer/threat_dom_details.h"
  #include "components/spellcheck/spellcheck_buildflags.h"
@@ -1184,7 +1183,7 @@
  #include "components/subresource_filter/content/renderer/unverified_ruleset_dealer.h"
 --- a/components/security_interstitials/content/cert_report_helper.cc
 +++ b/components/security_interstitials/content/cert_report_helper.cc
-@@ -160,7 +160,6 @@ void CertReportHelper::FinishCertCollect
+@@ -154,7 +154,6 @@ void CertReportHelper::FinishCertCollect
      return;
    }
  

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

@@ -1,6 +1,6 @@
 --- a/components/autofill/core/browser/autofill_download_manager.cc
 +++ b/components/autofill/core/browser/autofill_download_manager.cc
-@@ -833,94 +833,6 @@ AutofillDownloadManager::GetRequestURLAn
+@@ -842,94 +842,6 @@ AutofillDownloadManager::GetRequestURLAn
  }
  
  bool AutofillDownloadManager::StartRequest(FormRequestData request_data) {

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

@@ -10,7 +10,7 @@
  #if defined(OS_CHROMEOS)
 --- a/chrome/browser/extensions/component_loader.cc
 +++ b/chrome/browser/extensions/component_loader.cc
-@@ -347,11 +347,6 @@ void ComponentLoader::AddWebStoreApp() {
+@@ -349,11 +349,6 @@ void ComponentLoader::AddWebStoreApp() {
    if (!IsNormalSession())
      return;
  #endif
@@ -22,7 +22,7 @@
  }
  
  #if defined(OS_CHROMEOS)
-@@ -449,11 +444,6 @@ void ComponentLoader::AddDefaultComponen
+@@ -451,11 +446,6 @@ void ComponentLoader::AddDefaultComponen
    AddKeyboardApp();
  #else  // defined(OS_CHROMEOS)
    DCHECK(!skip_session_components);
@@ -34,7 +34,7 @@
  #endif  // defined(OS_CHROMEOS)
  
    if (!skip_session_components) {
-@@ -527,13 +517,6 @@ void ComponentLoader::AddDefaultComponen
+@@ -529,18 +519,6 @@ void ComponentLoader::AddDefaultComponen
      AddHangoutServicesExtension();
  #endif  // BUILDFLAG(ENABLE_HANGOUT_SERVICES_EXTENSION)
  
@@ -42,15 +42,20 @@
 -#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
 -    install_feedback = true;
 -#endif  // BUILDFLAG(GOOGLE_CHROME_BRANDING)
--    if (install_feedback)
--      Add(IDR_FEEDBACK_MANIFEST, base::FilePath(FILE_PATH_LITERAL("feedback")));
+-    if (install_feedback) {
+-      AddWithNameAndDescription(
+-          IDR_FEEDBACK_MANIFEST, base::FilePath(FILE_PATH_LITERAL("feedback")),
+-          l10n_util::GetStringUTF8(IDS_FEEDBACK_REPORT_APP_TITLE),
+-          // Description string
+-          l10n_util::GetStringUTF8(IDS_FEEDBACK_REPORT_PAGE_TITLE));
+-    }
 -
  #if defined(OS_CHROMEOS)
      AddChromeCameraApp();
      AddVideoPlayerExtension();
 --- a/chrome/browser/extensions/external_component_loader.cc
 +++ b/chrome/browser/extensions/external_component_loader.cc
-@@ -30,9 +30,6 @@ ExternalComponentLoader::~ExternalCompon
+@@ -31,9 +31,6 @@ ExternalComponentLoader::~ExternalCompon
  
  void ExternalComponentLoader::StartLoading() {
    auto prefs = std::make_unique<base::DictionaryValue>();
@@ -62,7 +67,7 @@
    {
 --- a/chrome/browser/extensions/webstore_installer.cc
 +++ b/chrome/browser/extensions/webstore_installer.cc
-@@ -562,20 +562,6 @@ void WebstoreInstaller::DownloadNextPend
+@@ -560,20 +560,6 @@ void WebstoreInstaller::DownloadNextPend
  void WebstoreInstaller::DownloadCrx(
      const std::string& extension_id,
      InstallSource source) {
@@ -83,7 +88,7 @@
  }
  
  // http://crbug.com/165634
-@@ -722,21 +708,6 @@ void WebstoreInstaller::UpdateDownloadPr
+@@ -720,21 +706,6 @@ void WebstoreInstaller::UpdateDownloadPr
  void WebstoreInstaller::StartCrxInstaller(const DownloadItem& download) {
    DCHECK_CURRENTLY_ON(BrowserThread::UI);
    DCHECK(!crx_installer_.get());

+ 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
-@@ -130,10 +130,10 @@ const unsigned kMinimumTTLSeconds = kCac
+@@ -131,10 +131,10 @@ const unsigned kMinimumTTLSeconds = kCac
  // cached.
  const int kIPv6ProbePeriodMs = 1000;
  

+ 3 - 3
patches/core/inox-patchset/0014-disable-translation-lang-fetch.patch

@@ -1,6 +1,6 @@
 --- a/chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc
 +++ b/chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc
-@@ -162,7 +162,6 @@ void SpellcheckHunspellDictionary::Retry
+@@ -169,7 +169,6 @@ void SpellcheckHunspellDictionary::Retry
      return;
    }
    browser_context_ = browser_context;
@@ -8,7 +8,7 @@
  }
  
  bool SpellcheckHunspellDictionary::IsReady() const {
-@@ -400,9 +399,6 @@ void SpellcheckHunspellDictionary::Initi
+@@ -423,9 +422,6 @@ void SpellcheckHunspellDictionary::Initi
      }
  
      if (browser_context_) {
@@ -34,7 +34,7 @@
 @@ -157,14 +157,10 @@ TranslateRankerImpl::TranslateRankerImpl
                                           ukm::UkmRecorder* ukm_recorder)
      : ukm_recorder_(ukm_recorder),
-       is_logging_enabled_(false),
+       is_uma_logging_enabled_(false),
 -      is_query_enabled_(base::FeatureList::IsEnabled(kTranslateRankerQuery)),
 -      is_enforcement_enabled_(
 -          base::FeatureList::IsEnabled(kTranslateRankerEnforcement)),

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

@@ -84,7 +84,7 @@ by default.
    for tag_suffix in _TagSuffixes():
 --- a/chrome/browser/chromeos/customization/customization_document.cc
 +++ b/chrome/browser/chromeos/customization/customization_document.cc
-@@ -173,7 +173,7 @@ std::string ReadFileInBackground(const b
+@@ -172,7 +172,7 @@ std::string ReadFileInBackground(const b
  
  // Template URL where to fetch OEM services customization manifest from.
  const char ServicesCustomizationDocument::kManifestUrl[] =
@@ -95,7 +95,7 @@ by default.
  // creates and uses to publish OEM default apps to the extensions system.
 --- a/chrome/browser/chromeos/extensions/file_manager/private_api_drive.cc
 +++ b/chrome/browser/chromeos/extensions/file_manager/private_api_drive.cc
-@@ -1045,7 +1045,7 @@ void FileManagerPrivateInternalGetDownlo
+@@ -1036,7 +1036,7 @@ void FileManagerPrivateInternalGetDownlo
    const CoreAccountId& account_id =
        identity_manager->GetPrimaryAccountId(signin::ConsentLevel::kNotRequired);
    std::vector<std::string> scopes;
@@ -106,7 +106,7 @@ by default.
        content::BrowserContext::GetDefaultStoragePartition(
 --- a/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc
 +++ b/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc
-@@ -84,7 +84,7 @@ namespace {
+@@ -86,7 +86,7 @@ namespace {
  
  using api::file_manager_private::ProfileInfo;
  
@@ -192,7 +192,7 @@ by default.
  ProfileAvatarDownloader::ProfileAvatarDownloader(size_t icon_index,
 --- a/chrome/browser/resources/default_apps/external_extensions.json
 +++ b/chrome/browser/resources/default_apps/external_extensions.json
-@@ -24,15 +24,15 @@
+@@ -23,15 +23,15 @@
    },
    // Google Sheets
    "aapocclcgogkmnckokdopfmhonfmgoek" : {
@@ -224,7 +224,7 @@ by default.
    std::unique_ptr<network::SimpleURLLoader> loader;
 --- a/chrome/browser/safe_browsing/download_protection/download_feedback.cc
 +++ b/chrome/browser/safe_browsing/download_protection/download_feedback.cc
-@@ -256,7 +256,7 @@ const int64_t DownloadFeedback::kMaxUplo
+@@ -255,7 +255,7 @@ const int64_t DownloadFeedback::kMaxUplo
  
  // static
  const char DownloadFeedback::kSbFeedbackURL[] =
@@ -235,7 +235,7 @@ by default.
  DownloadFeedbackFactory* DownloadFeedback::factory_ = nullptr;
 --- a/chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc
 +++ b/chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc
-@@ -255,7 +255,7 @@ GURL SpellcheckHunspellDictionary::GetDi
+@@ -277,7 +277,7 @@ GURL SpellcheckHunspellDictionary::GetDi
    DCHECK(!bdict_file.empty());
  
    static const char kDownloadServerUrl[] =
@@ -257,7 +257,7 @@ by default.
  
 --- a/chrome/browser/tracing/crash_service_uploader.cc
 +++ b/chrome/browser/tracing/crash_service_uploader.cc
-@@ -41,7 +41,7 @@ using std::string;
+@@ -40,7 +40,7 @@ using std::string;
  
  namespace {
  
@@ -326,7 +326,7 @@ by default.
  
  const char kSyncLearnMoreURL[] =
      "https://support.google.com/chrome/?p=settings_sign_in";
-@@ -388,7 +388,7 @@ const char kNaturalScrollHelpURL[] =
+@@ -384,7 +384,7 @@ const char kNaturalScrollHelpURL[] =
  const char kOemEulaURLPath[] = "oem";
  
  const char kOnlineEulaURLPath[] =
@@ -486,7 +486,7 @@ by default.
  
 --- a/components/password_manager/core/browser/password_store.cc
 +++ b/components/password_manager/core/browser/password_store.cc
-@@ -254,10 +254,10 @@ void PasswordStore::GetLogins(const Form
+@@ -255,10 +255,10 @@ void PasswordStore::GetLogins(const Form
    // TODO(mdm): actually delete them at some point, say M24 or so.
    base::Time cutoff;  // the null time
    if (form.scheme == PasswordForm::Scheme::kHtml &&
@@ -501,20 +501,9 @@ by default.
      static const base::Time::Exploded exploded_cutoff = {
          2012, 1, 0, 1, 0, 0, 0, 0};  // 00:00 Jan 1 2012
      base::Time out_time;
---- a/components/policy/core/common/policy_loader_win.cc
-+++ b/components/policy/core/common/policy_loader_win.cc
-@@ -56,7 +56,7 @@ const char kKeyThirdParty[] = "3rdparty"
- 
- // The web store url that is the only trusted source for extensions.
- const char kExpectedWebStoreUrl[] =
--    ";https://clients2.google.com/service/update2/crx";
-+    ";trk:15:https://clients2.google.com/service/update2/crx";
- // String to be prepended to each blocked entry.
- const char kBlockedExtensionPrefix[] = "[BLOCKED]";
- 
 --- a/components/policy/resources/policy_templates.json
 +++ b/components/policy/resources/policy_templates.json
-@@ -4281,7 +4281,7 @@
+@@ -4312,7 +4312,7 @@
          'dynamic_refresh': True,
          'per_profile': True,
        },
@@ -523,7 +512,7 @@ by default.
        'id': 34,
        'caption': '''Configure the list of force-installed apps and extensions''',
        'tags': ['full-admin-access'],
-@@ -8807,7 +8807,7 @@
+@@ -8940,7 +8940,7 @@
        'features': {
          'dynamic_refresh': True,
        },
@@ -577,9 +566,9 @@ by default.
        base::BindOnce(&TranslateURLFetcher::OnSimpleLoaderComplete,
 --- a/components/translate/core/common/translate_util.cc
 +++ b/components/translate/core/common/translate_util.cc
-@@ -18,7 +18,7 @@
+@@ -20,7 +20,7 @@ const char kDetectLanguageInSubFrames[]
  
- namespace translate {
+ }  // namespace
  
 -const char kSecurityOrigin[] = "https://translate.googleapis.com/";
 +const char kSecurityOrigin[] = "trk:220:https://translate.googleapis.com/";
@@ -599,7 +588,7 @@ by default.
      "http://clientservices.googleapis.com/chrome-variations/seed";
 --- a/content/browser/speech/speech_recognition_engine.cc
 +++ b/content/browser/speech/speech_recognition_engine.cc
-@@ -32,7 +32,7 @@ namespace content {
+@@ -30,7 +30,7 @@ namespace content {
  namespace {
  
  const char kWebServiceBaseUrl[] =
@@ -610,7 +599,7 @@ by default.
  
 --- a/content/shell/browser/shell_browser_main_parts.cc
 +++ b/content/shell/browser/shell_browser_main_parts.cc
-@@ -81,7 +81,7 @@ GURL GetStartupURL() {
+@@ -84,7 +84,7 @@ GURL GetStartupURL() {
  #else
    const base::CommandLine::StringVector& args = command_line->GetArgs();
    if (args.empty())
@@ -716,7 +705,7 @@ by default.
  const char kFCMOAuthScope[] =
 --- a/google_apis/gcm/engine/gservices_settings.cc
 +++ b/google_apis/gcm/engine/gservices_settings.cc
-@@ -29,18 +29,18 @@ const char kRegistrationURLKey[] = "gcm_
+@@ -30,18 +30,18 @@ const char kRegistrationURLKey[] = "gcm_
  
  const int64_t kDefaultCheckinInterval = 2 * 24 * 60 * 60;  // seconds = 2 days.
  const int64_t kMinimumCheckinInterval = 12 * 60 * 60;  // seconds = 12 hours.
@@ -762,7 +751,7 @@ by default.
  
 --- a/remoting/protocol/jingle_messages.cc
 +++ b/remoting/protocol/jingle_messages.cc
-@@ -24,7 +24,7 @@ const char kJabberNamespace[] = "jabber:
+@@ -25,7 +25,7 @@ const char kJabberNamespace[] = "jabber:
  const char kJingleNamespace[] = "urn:xmpp:jingle:1";
  
  // Namespace for transport messages when using standard ICE.

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

@@ -54,7 +54,7 @@ the URL so we get notified if this happens again in the future).
  
 --- a/chrome/browser/safe_browsing/safe_browsing_service.cc
 +++ b/chrome/browser/safe_browsing/safe_browsing_service.cc
-@@ -248,7 +248,7 @@ SafeBrowsingUIManager* SafeBrowsingServi
+@@ -247,7 +247,7 @@ SafeBrowsingUIManager* SafeBrowsingServi
  }
  
  void SafeBrowsingService::RegisterAllDelayedAnalysis() {

+ 3 - 12
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/chrome/browser/safe_browsing/client_side_detection_service.cc
 +++ b/chrome/browser/safe_browsing/client_side_detection_service.cc
-@@ -239,99 +239,8 @@ void ClientSideDetectionService::StartCl
+@@ -223,90 +223,8 @@ void ClientSideDetectionService::StartCl
    DCHECK_CURRENTLY_ON(BrowserThread::UI);
    std::unique_ptr<ClientPhishingRequest> request(verdict);
  
@@ -24,8 +24,8 @@ This prevents trk:148 (phishing) and trk:149 (malware).
 -  }
 -
 -  // Fill in metadata about which model we used.
+-  request->set_model_filename(model_loader_->name());
 -  if (is_extended_reporting || is_enhanced_reporting) {
--    request->set_model_filename(model_loader_extended_->name());
 -    if (is_enhanced_reporting) {
 -      request->mutable_population()->set_user_population(
 -          ChromeUserPopulation::ENHANCED_PROTECTION);
@@ -34,24 +34,15 @@ This prevents trk:148 (phishing) and trk:149 (malware).
 -          ChromeUserPopulation::EXTENDED_REPORTING);
 -    }
 -  } else {
--    request->set_model_filename(model_loader_standard_->name());
 -    request->mutable_population()->set_user_population(
 -        ChromeUserPopulation::SAFE_BROWSING);
 -  }
--  DVLOG(2) << "Starting report for hit on model " << request->model_filename();
--
 -  request->mutable_population()->set_profile_management_status(
 -      GetProfileManagementStatus(
 -          g_browser_process->browser_policy_connector()));
 -
 -  std::string request_data;
--  if (!request->SerializeToString(&request_data)) {
--    UMA_HISTOGRAM_COUNTS_1M("SBClientPhishing.RequestNotSerialized", 1);
--    DVLOG(1) << "Unable to serialize the CSD request. Proto file changed?";
--    if (!callback.is_null())
--      callback.Run(GURL(request->url()), false);
--    return;
--  }
+-  request->SerializeToString(&request_data);
 -
 -  net::NetworkTrafficAnnotationTag traffic_annotation =
 -      net::DefineNetworkTrafficAnnotation(

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

@@ -35,7 +35,7 @@
      GURL rewritten_tab_url = tab_url;
 --- a/components/omnibox/browser/autocomplete_input.cc
 +++ b/components/omnibox/browser/autocomplete_input.cc
-@@ -487,7 +487,8 @@ void AutocompleteInput::ParseForEmphasiz
+@@ -488,7 +488,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) ||
@@ -45,7 +45,7 @@
        (static_cast<int>(text.length()) > after_scheme_and_colon)) {
      // Obtain the URL prefixed by view-source or blob and parse it.
      base::string16 real_url(text.substr(after_scheme_and_colon));
-@@ -560,7 +561,9 @@ int AutocompleteInput::NumNonHostCompone
+@@ -561,7 +562,9 @@ int AutocompleteInput::NumNonHostCompone
  bool AutocompleteInput::HasHTTPScheme(const base::string16& input) {
    std::string utf8_input(base::UTF16ToUTF8(input));
    url::Component scheme;
@@ -71,7 +71,7 @@
      return GURL(parts.scheme.is_valid() ? text : FixupPath(text));
 --- a/content/browser/child_process_security_policy_impl.cc
 +++ b/content/browser/child_process_security_policy_impl.cc
-@@ -632,6 +632,7 @@ ChildProcessSecurityPolicyImpl::ChildPro
+@@ -634,6 +634,7 @@ ChildProcessSecurityPolicyImpl::ChildPro
  #endif  // BUILDFLAG(ENABLE_WEBSOCKETS)
    RegisterWebSafeScheme(url::kFtpScheme);
    RegisterWebSafeScheme(url::kDataScheme);
@@ -81,7 +81,7 @@
    // TODO(nick): https://crbug.com/651534 blob: and filesystem: schemes embed
 --- a/net/BUILD.gn
 +++ b/net/BUILD.gn
-@@ -1081,6 +1081,8 @@ component("net") {
+@@ -1083,6 +1083,8 @@ component("net") {
        "url_request/report_sender.h",
        "url_request/static_http_user_agent_settings.cc",
        "url_request/static_http_user_agent_settings.h",
@@ -196,7 +196,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_impl.h"
-@@ -605,6 +606,9 @@ std::unique_ptr<URLRequestContext> URLRe
+@@ -604,6 +605,9 @@ std::unique_ptr<URLRequestContext> URLRe
    }
    protocol_handlers_.clear();
  
@@ -228,7 +228,7 @@
  
 --- a/url/url_util.cc
 +++ b/url/url_util.cc
-@@ -56,7 +56,7 @@ struct SchemeRegistry {
+@@ -62,7 +62,7 @@ struct SchemeRegistry {
  
    // Schemes that do not trigger mixed content warning.
    std::vector<std::string> secure_schemes = {
@@ -237,7 +237,7 @@
    };
  
    // Schemes that normal pages cannot link to or access (i.e., with the same
-@@ -71,6 +71,7 @@ struct SchemeRegistry {
+@@ -77,6 +77,7 @@ struct SchemeRegistry {
        kAboutScheme,
        kJavaScriptScheme,
        kDataScheme,

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

@@ -2,7 +2,7 @@
 
 --- a/chrome/browser/tracing/crash_service_uploader.cc
 +++ b/chrome/browser/tracing/crash_service_uploader.cc
-@@ -130,11 +130,16 @@ void TraceCrashServiceUploader::DoUpload
+@@ -129,11 +129,16 @@ void TraceCrashServiceUploader::DoUpload
    progress_callback_ = progress_callback;
    done_callback_ = std::move(done_callback);
  
@@ -23,7 +23,7 @@
  }
  
  void TraceCrashServiceUploader::DoCompressOnBackgroundThread(
-@@ -307,6 +312,7 @@ bool TraceCrashServiceUploader::Compress
+@@ -306,6 +311,7 @@ bool TraceCrashServiceUploader::Compress
  void TraceCrashServiceUploader::CreateAndStartURLLoader(
      const std::string& upload_url,
      const std::string& post_data) {
@@ -36,7 +36,7 @@
 @@ -85,6 +85,7 @@ bool CheckForRequiredFlagsOrDie() {
  }
  
- int main(int argc, char *argv[]) {
+ int main(int argc, char* argv[]) {
 +  return 0;
    google::InitGoogleLogging(argv[0]);
    google::ParseCommandLineFlags(&argc, &argv, true);

+ 9 - 9
patches/core/ungoogled-chromium/disable-fonts-googleapis-references.patch

@@ -2,15 +2,15 @@
 
 --- a/components/dom_distiller/content/browser/dom_distiller_viewer_source.cc
 +++ b/components/dom_distiller/content/browser/dom_distiller_viewer_source.cc
-@@ -303,7 +303,7 @@ bool DomDistillerViewerSource::ShouldSer
- }
- 
- std::string DomDistillerViewerSource::GetContentSecurityPolicyStyleSrc() {
--  return "style-src 'self' https://fonts.googleapis.com;";
-+  return "style-src 'self';";
- }
- 
- std::string DomDistillerViewerSource::GetContentSecurityPolicyChildSrc() {
+@@ -337,7 +337,7 @@ bool DomDistillerViewerSource::ShouldSer
+ std::string DomDistillerViewerSource::GetContentSecurityPolicy(
+     network::mojom::CSPDirectiveName directive) {
+   if (directive == network::mojom::CSPDirectiveName::StyleSrc) {
+-    return "style-src 'self' https://fonts.googleapis.com;";
++    return "style-src 'self';";
+   } else if (directive == network::mojom::CSPDirectiveName::ChildSrc) {
+     return "child-src *;";
+   }
 --- a/components/dom_distiller/core/html/preview.html
 +++ b/components/dom_distiller/core/html/preview.html
 @@ -11,7 +11,7 @@ found in the LICENSE file.

+ 7 - 7
patches/core/ungoogled-chromium/disable-gaia.patch

@@ -4,16 +4,16 @@
 --- a/chrome/browser/browser_resources.grd
 +++ b/chrome/browser/browser_resources.grd
 @@ -141,7 +141,6 @@
-       <include name="IDR_INLINE_LOGIN_HTML" file="resources\inline_login\inline_login.html" compress="gzip" flattenhtml="true" allowexternalscript="true" type="BINDATA" preprocess="true" />
-       <include name="IDR_INLINE_LOGIN_CSS" file="resources\inline_login\inline_login.css" compress="gzip" flattenhtml="true" type="BINDATA" preprocess="true" />
-       <include name="IDR_INLINE_LOGIN_JS" file="resources\inline_login\inline_login.js" compress="gzip" flattenhtml="true" type="BINDATA" />
--      <include name="IDR_GAIA_AUTH_AUTHENTICATOR_JS" file="resources\gaia_auth_host\authenticator.js" compress="gzip" flattenhtml="true" type="BINDATA" />
+       <include name="IDR_INLINE_LOGIN_HTML" file="resources\inline_login\inline_login.html" flattenhtml="true" allowexternalscript="true" type="BINDATA" preprocess="true" />
+       <include name="IDR_INLINE_LOGIN_CSS" file="resources\inline_login\inline_login.css" flattenhtml="true" type="BINDATA" preprocess="true" />
+       <include name="IDR_INLINE_LOGIN_JS" file="resources\inline_login\inline_login.js" flattenhtml="true" type="BINDATA" />
+-      <include name="IDR_GAIA_AUTH_AUTHENTICATOR_JS" file="resources\gaia_auth_host\authenticator.js" flattenhtml="true" type="BINDATA" />
  
-       <include name="IDR_INSPECT_CSS" file="resources\inspect\inspect.css" compress="gzip" flattenhtml="true" type="BINDATA" />
-       <include name="IDR_INSPECT_HTML" file="resources\inspect\inspect.html" compress="gzip" flattenhtml="true" allowexternalscript="true" type="BINDATA" />
+       <include name="IDR_INSPECT_CSS" file="resources\inspect\inspect.css" flattenhtml="true" type="BINDATA" />
+       <include name="IDR_INSPECT_HTML" file="resources\inspect\inspect.html" flattenhtml="true" allowexternalscript="true" type="BINDATA" />
 --- a/chrome/browser/ui/webui/signin/inline_login_ui.cc
 +++ b/chrome/browser/ui/webui/signin/inline_login_ui.cc
-@@ -116,7 +116,6 @@ content::WebUIDataSource* CreateWebUIDat
+@@ -112,7 +112,6 @@ content::WebUIDataSource* CreateWebUIDat
    static constexpr webui::ResourcePath kResources[] = {
      {"inline_login.css", IDR_INLINE_LOGIN_CSS},
      {"inline_login.js", IDR_INLINE_LOGIN_JS},

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

@@ -2,8 +2,8 @@
 
 --- a/chrome/common/google_url_loader_throttle.cc
 +++ b/chrome/common/google_url_loader_throttle.cc
-@@ -9,10 +9,6 @@
- #include "components/google/core/common/google_util.h"
+@@ -13,10 +13,6 @@
+ #include "net/base/url_util.h"
  #include "services/network/public/mojom/url_response_head.mojom.h"
  
 -#if BUILDFLAG(ENABLE_EXTENSIONS)
@@ -13,7 +13,7 @@
  namespace {
  
  #if defined(OS_ANDROID)
-@@ -50,39 +46,6 @@ void GoogleURLLoaderThrottle::DetachFrom
+@@ -58,53 +54,6 @@ void GoogleURLLoaderThrottle::DetachFrom
  void GoogleURLLoaderThrottle::WillStartRequest(
      network::ResourceRequest* request,
      bool* defer) {
@@ -31,7 +31,7 @@
 -      dynamic_params_.youtube_restrict <
 -          safe_search_util::YOUTUBE_RESTRICT_COUNT) {
 -    safe_search_util::ForceYouTubeRestrict(
--        request->url, &request->headers,
+-        request->url, &request->cors_exempt_headers,
 -        static_cast<safe_search_util::YouTubeRestrictMode>(
 -            dynamic_params_.youtube_restrict));
 -  }
@@ -49,11 +49,25 @@
 -    request->cors_exempt_headers.SetHeader(kCCTClientDataHeader,
 -                                           client_data_header_);
 -  }
+-
+-  bool is_google_homepage_or_search =
+-      google_util::IsGoogleHomePageUrl(request->url) ||
+-      google_util::IsGoogleSearchUrl(request->url);
+-  if (is_google_homepage_or_search) {
+-    // TODO (crbug.com/1081510): Remove this experimental code once a final
+-    // solution is agreed upon.
+-    if (base::FeatureList::IsEnabled(features::kAndroidDarkSearch)) {
+-      request->url = net::AppendOrReplaceQueryParameter(
+-          request->url, "cs", night_mode_enabled_ ? "1" : "0");
+-    }
+-    base::UmaHistogramBoolean("Android.DarkTheme.DarkSearchRequested",
+-                              night_mode_enabled_);
+-  }
 -#endif
  }
  
  void GoogleURLLoaderThrottle::WillRedirectRequest(
-@@ -92,37 +55,6 @@ void GoogleURLLoaderThrottle::WillRedire
+@@ -114,37 +63,6 @@ void GoogleURLLoaderThrottle::WillRedire
      std::vector<std::string>* to_be_removed_headers,
      net::HttpRequestHeaders* modified_headers,
      net::HttpRequestHeaders* modified_cors_exempt_headers) {
@@ -70,7 +84,7 @@
 -      dynamic_params_.youtube_restrict <
 -          safe_search_util::YOUTUBE_RESTRICT_COUNT) {
 -    safe_search_util::ForceYouTubeRestrict(
--        redirect_info->new_url, modified_headers,
+-        redirect_info->new_url, modified_cors_exempt_headers,
 -        static_cast<safe_search_util::YouTubeRestrictMode>(
 -            dynamic_params_.youtube_restrict));
 -  }
@@ -91,7 +105,7 @@
  }
  
  #if BUILDFLAG(ENABLE_EXTENSIONS)
-@@ -130,16 +62,5 @@ void GoogleURLLoaderThrottle::WillProces
+@@ -152,16 +70,5 @@ void GoogleURLLoaderThrottle::WillProces
      const GURL& response_url,
      network::mojom::URLResponseHead* response_head,
      bool* defer) {
@@ -110,11 +124,10 @@
  #endif
 --- a/components/google/core/common/google_util.cc
 +++ b/components/google/core/common/google_util.cc
-@@ -46,107 +46,6 @@ namespace {
+@@ -45,109 +45,6 @@ namespace {
+ 
  bool gUseMockLinkDoctorBaseURLForTesting = false;
  
- bool g_ignore_port_numbers = false;
--
 -bool IsPathHomePageBase(base::StringPiece path) {
 -  return (path == "/") || (path == "/webhp");
 -}
@@ -172,6 +185,9 @@
 -// is DISALLOW_NON_STANDARD_PORTS, this also requires |url| to use the standard
 -// port for its scheme (80 for HTTP, 443 for HTTPS).
 -bool IsValidURL(const GURL& url, PortPermission port_permission) {
+-  static bool g_ignore_port_numbers =
+-      base::CommandLine::ForCurrentProcess()->HasSwitch(
+-          switches::kIgnoreGooglePortNumbers);
 -  return url.is_valid() && url.SchemeIsHTTPOrHTTPS() &&
 -         (url.port().empty() || g_ignore_port_numbers ||
 -          (port_permission == ALLOW_NON_STANDARD_PORTS));
@@ -218,7 +234,7 @@
  }  // namespace
  
  // Global functions -----------------------------------------------------------
-@@ -154,19 +53,11 @@ bool IsGoogleSearchSubdomainUrl(const GU
+@@ -155,19 +52,11 @@ bool IsGoogleSearchSubdomainUrl(const GU
  const char kGoogleHomepageURL[] = "https://www.google.com/";
  
  bool HasGoogleSearchQueryParam(base::StringPiece str) {
@@ -239,7 +255,7 @@
  }
  
  void SetMockLinkDoctorBaseURLForTesting() {
-@@ -180,161 +71,53 @@ std::string GetGoogleLocale(const std::s
+@@ -181,161 +70,53 @@ std::string GetGoogleLocale(const std::s
  
  GURL AppendGoogleLocaleParam(const GURL& url,
                               const std::string& application_locale) {
@@ -413,7 +429,7 @@
  
 --- a/components/page_load_metrics/browser/page_load_metrics_util.cc
 +++ b/components/page_load_metrics/browser/page_load_metrics_util.cc
-@@ -171,9 +171,7 @@ bool DidObserveLoadingBehaviorInAnyFrame
+@@ -184,9 +184,7 @@ bool DidObserveLoadingBehaviorInAnyFrame
  }
  
  bool IsGoogleSearchHostname(const GURL& url) {
@@ -468,7 +484,7 @@
  bool IsGoogleHostname(const GURL& url) {
 --- a/components/search_engines/template_url.cc
 +++ b/components/search_engines/template_url.cc
-@@ -508,11 +508,7 @@ base::string16 TemplateURLRef::SearchTer
+@@ -510,11 +510,7 @@ base::string16 TemplateURLRef::SearchTer
  bool TemplateURLRef::HasGoogleBaseURLs(
      const SearchTermsData& search_terms_data) const {
    ParseIfNecessary(search_terms_data);
@@ -493,8 +509,8 @@
 -
  namespace {
  
- // The result of checking if a URL should have variations headers appended.
-@@ -89,28 +85,7 @@ class VariationsHeaderHelper {
+ // The result of checking whether a request to a URL should have variations
+@@ -192,32 +188,7 @@ class VariationsHeaderHelper {
    }
  
    bool AppendHeaderIfNeeded(const GURL& url, InIncognito incognito) {
@@ -509,9 +525,13 @@
 -    //         international TLD domains *.google.<TLD> or *.youtube.<TLD>.
 -    // 2. Only transmit for non-Incognito profiles.
 -    // 3. For the X-Client-Data header, only include non-empty variation IDs.
--    if ((incognito == InIncognito::kYes) || !ShouldAppendVariationsHeader(url))
+-    if ((incognito == InIncognito::kYes) ||
+-        !ShouldAppendVariationsHeader(url, "Append"))
 -      return false;
 -
+-    // TODO(crbug/1094303): Use the result to determine which IDs to include.
+-    IsFirstPartyContext(*resource_request_);
+-
 -    if (variations_header_.empty())
 -      return false;
 -
@@ -524,16 +544,16 @@
    }
  
   private:
-@@ -153,8 +128,6 @@ void RemoveVariationsHeaderIfNeeded(
+@@ -260,8 +231,6 @@ void RemoveVariationsHeaderIfNeeded(
      const net::RedirectInfo& redirect_info,
      const network::mojom::URLResponseHead& response_head,
      std::vector<std::string>* to_be_removed_headers) {
--  if (!ShouldAppendVariationsHeader(redirect_info.new_url))
+-  if (!ShouldAppendVariationsHeader(redirect_info.new_url, "Remove"))
 -    to_be_removed_headers->push_back(kClientDataHeader);
  }
  
  std::unique_ptr<network::SimpleURLLoader>
-@@ -184,14 +157,11 @@ CreateSimpleURLLoaderWithVariationsHeade
+@@ -291,14 +260,11 @@ CreateSimpleURLLoaderWithVariationsHeade
  }
  
  bool IsVariationsHeader(const std::string& header_name) {
@@ -549,8 +569,8 @@
 +  return false;
  }
  
- bool ShouldAppendVariationsHeaderForTesting(const GURL& url) {
-@@ -200,12 +170,6 @@ bool ShouldAppendVariationsHeaderForTest
+ bool ShouldAppendVariationsHeaderForTesting(
+@@ -309,12 +275,6 @@ bool ShouldAppendVariationsHeaderForTest
  
  void UpdateCorsExemptHeaderForVariations(
      network::mojom::NetworkContextParams* params) {

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

@@ -15,7 +15,7 @@
        "//third_party/widevine/cdm",
      ]
    }
-@@ -984,7 +983,6 @@ if (is_win) {
+@@ -999,7 +998,6 @@ if (is_win) {
        ":keystone_registration_framework",
        ":swiftshader_library",
        ":widevine_cdm_library",

+ 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
-@@ -521,22 +521,6 @@ GURL GetOSSettingsUrl(const std::string&
+@@ -528,22 +528,6 @@ GURL GetOSSettingsUrl(const std::string&
  #if !defined(OS_ANDROID) && !defined(OS_CHROMEOS)
  void ShowBrowserSignin(Browser* browser,
                         signin_metrics::AccessPoint access_point) {

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

@@ -41,7 +41,7 @@
        update_renderers_callback_(update_renderers_callback),
        url_loader_factory_(url_loader_factory),
        last_client_model_status_(ClientModelStatus::MODEL_NEVER_FETCHED) {
-@@ -128,7 +126,7 @@ ModelLoader::ModelLoader(
+@@ -129,7 +127,7 @@ ModelLoader::ModelLoader(
      scoped_refptr<network::SharedURLLoaderFactory> url_loader_factory,
      const std::string& model_name)
      : name_(model_name),

+ 8 - 8
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
-@@ -605,10 +605,6 @@ std::vector<url::Origin> ChromeContentBr
+@@ -604,10 +604,6 @@ std::vector<url::Origin> ChromeContentBr
      GetOriginsRequiringDedicatedProcess() {
    std::vector<url::Origin> list;
  
@@ -102,7 +102,7 @@
  
  bool ShouldRetryRequest(const network::SimpleURLLoader* loader) {
    DCHECK(loader);
-@@ -304,12 +295,6 @@ void ExtensionDownloader::DoStartAllPend
+@@ -329,12 +320,6 @@ void ExtensionDownloader::DoStartAllPend
    ReportStats();
    url_stats_ = URLStats();
  
@@ -115,7 +115,7 @@
    fetches_preparing_.clear();
  }
  
-@@ -343,11 +328,6 @@ bool ExtensionDownloader::AddExtensionDa
+@@ -373,11 +358,6 @@ bool ExtensionDownloader::AddExtensionDa
      return false;
    }
  
@@ -127,7 +127,7 @@
    // Skip extensions with empty IDs.
    if (id.empty()) {
      DLOG(WARNING) << "Found extension with empty ID";
-@@ -356,12 +336,10 @@ bool ExtensionDownloader::AddExtensionDa
+@@ -386,12 +366,10 @@ bool ExtensionDownloader::AddExtensionDa
      return false;
    }
  
@@ -142,8 +142,8 @@
    } else {
      url_stats_.other_url_count++;
    }
-@@ -718,20 +696,6 @@ void ExtensionDownloader::HandleManifest
-         fetch_data->request_ids()));
+@@ -852,20 +830,6 @@ void ExtensionDownloader::HandleManifest
+                           update->info);
    }
  
 -  // If the manifest response included a <daystart> element, we want to save
@@ -153,7 +153,7 @@
 -    Time day_start =
 -        Time::Now() - TimeDelta::FromSeconds(results->daystart_elapsed_seconds);
 -
--    for (const std::string& id : fetch_data->extension_ids()) {
+-    for (const ExtensionId& id : extension_ids) {
 -      ExtensionDownloaderDelegate::PingResult& result = ping_results_[id];
 -      result.did_ping = fetch_data->DidPing(id, ManifestFetchData::ROLLCALL);
 -      result.day_start = day_start;
@@ -163,7 +163,7 @@
    NotifyExtensionsDownloadStageChanged(
        no_updates, ExtensionDownloaderDelegate::Stage::FINISHED);
    NotifyExtensionsDownloadFailed(
-@@ -1281,11 +1245,7 @@ bool ExtensionDownloader::IterateFetchCr
+@@ -1414,11 +1378,7 @@ bool ExtensionDownloader::IterateFetchCr
    // fetch.
    switch (fetch->credentials) {
      case ExtensionFetch::CREDENTIALS_NONE:

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

@@ -1,6 +1,6 @@
 --- a/content/browser/BUILD.gn
 +++ b/content/browser/BUILD.gn
-@@ -1277,6 +1277,8 @@ jumbo_source_set("browser") {
+@@ -1283,6 +1283,8 @@ jumbo_source_set("browser") {
      "net/browser_online_state_observer.cc",
      "net/browser_online_state_observer.h",
      "net/cookie_store_factory.cc",
@@ -9,12 +9,12 @@
      "net/network_errors_listing_ui.cc",
      "net/network_errors_listing_ui.h",
      "net/network_quality_observer_impl.cc",
-@@ -2694,8 +2696,6 @@ jumbo_source_set("browser") {
+@@ -2710,8 +2712,6 @@ jumbo_source_set("browser") {
  
    if (enable_reporting) {
      sources += [
 -      "net/cross_origin_embedder_policy_reporter.cc",
 -      "net/cross_origin_embedder_policy_reporter.h",
+       "net/cross_origin_opener_policy_reporter.cc",
+       "net/cross_origin_opener_policy_reporter.h",
        "net/reporting_service_proxy.cc",
-       "net/reporting_service_proxy.h",
-     ]

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

@@ -2,7 +2,7 @@
 
 --- a/chrome/browser/ui/BUILD.gn
 +++ b/chrome/browser/ui/BUILD.gn
-@@ -3681,8 +3681,6 @@ static_library("ui") {
+@@ -4017,8 +4017,6 @@ static_library("ui") {
          "views/sync/dice_bubble_sync_promo_view.h",
          "views/sync/dice_signin_button_view.cc",
          "views/sync/dice_signin_button_view.h",

+ 90 - 92
patches/core/ungoogled-chromium/fix-building-without-safebrowsing.patch

@@ -2,7 +2,7 @@
 
 --- a/chrome/browser/chrome_content_browser_client.cc
 +++ b/chrome/browser/chrome_content_browser_client.cc
-@@ -4007,11 +4007,13 @@ ChromeContentBrowserClient::CreateThrott
+@@ -4035,11 +4035,13 @@ ChromeContentBrowserClient::CreateThrott
        &throttles);
  #endif
  
@@ -16,11 +16,13 @@
  
  #if defined(OS_WIN) || defined(OS_MACOSX) || \
      (defined(OS_LINUX) && !defined(OS_CHROMEOS))
-@@ -5020,18 +5022,7 @@ ChromeContentBrowserClient::GetSafeBrows
-     bool safe_browsing_enabled_for_profile) {
+@@ -5092,20 +5094,7 @@ ChromeContentBrowserClient::GetSafeBrows
+     bool should_check_on_sb_disabled) {
    DCHECK_CURRENTLY_ON(BrowserThread::IO);
  
--  if (!safe_browsing_enabled_for_profile)
+-  // Should not bypass safe browsing check if the check is for enterprise
+-  // lookup.
+-  if (!safe_browsing_enabled_for_profile && !should_check_on_sb_disabled)
 -    return nullptr;
 -
 -  // |safe_browsing_service_| may be unavailable in tests.
@@ -35,10 +37,10 @@
 +  return nullptr;
  }
  
- base::Optional<std::string>
+ safe_browsing::RealTimeUrlLookupServiceBase*
 --- a/chrome/browser/download/chrome_download_manager_delegate.cc
 +++ b/chrome/browser/download/chrome_download_manager_delegate.cc
-@@ -118,7 +118,6 @@ using content::DownloadManager;
+@@ -122,7 +122,6 @@ using content::DownloadManager;
  using download::DownloadItem;
  using download::DownloadPathReservationTracker;
  using download::PathValidationResult;
@@ -46,7 +48,7 @@
  using safe_browsing::DownloadProtectionService;
  
  namespace {
-@@ -1253,8 +1252,6 @@ void ChromeDownloadManagerDelegate::OnDo
+@@ -1325,8 +1324,6 @@ void ChromeDownloadManagerDelegate::OnDo
      if (item->GetOriginalMimeType() == "application/x-x509-user-cert")
        DownloadItemModel(item).SetShouldPreferOpeningInBrowser(true);
  #endif
@@ -57,9 +59,9 @@
      target_info->result = download::DOWNLOAD_INTERRUPT_REASON_FILE_BLOCKED;
 --- a/chrome/browser/download/download_item_model.cc
 +++ b/chrome/browser/download/download_item_model.cc
-@@ -25,16 +25,12 @@
- #include "chrome/browser/download/download_stats.h"
- #include "chrome/browser/download/offline_item_utils.h"
+@@ -27,16 +27,12 @@
+ #include "chrome/browser/enterprise/connectors/common.h"
+ #include "chrome/browser/enterprise/connectors/connectors_manager.h"
  #include "chrome/browser/profiles/profile.h"
 -#include "chrome/browser/safe_browsing/download_protection/deep_scanning_request.h"
 -#include "chrome/browser/safe_browsing/download_protection/download_feedback_service.h"
@@ -74,7 +76,7 @@
  #include "content/public/browser/download_item_utils.h"
  #include "ui/base/l10n/l10n_util.h"
  #include "ui/base/l10n/time_format.h"
-@@ -47,7 +43,6 @@
+@@ -49,7 +45,6 @@
  using base::TimeDelta;
  using download::DownloadItem;
  using MixedContentStatus = download::DownloadItem::MixedContentStatus;
@@ -82,7 +84,7 @@
  
  namespace {
  
-@@ -77,10 +72,6 @@ class DownloadItemModelData : public bas
+@@ -79,10 +74,6 @@ class DownloadItemModelData : public bas
    // for the file type.
    bool should_prefer_opening_in_browser_;
  
@@ -93,7 +95,7 @@
    // Whether the download is currently being revived.
    bool is_being_revived_;
  
-@@ -116,7 +107,6 @@ DownloadItemModelData::DownloadItemModel
+@@ -118,7 +109,6 @@ DownloadItemModelData::DownloadItemModel
      : should_show_in_shelf_(true),
        was_ui_notified_(false),
        should_prefer_opening_in_browser_(false),
@@ -101,7 +103,7 @@
        is_being_revived_(false) {}
  
  } // namespace
-@@ -296,14 +286,7 @@ bool DownloadItemModel::IsMixedContent()
+@@ -298,14 +288,7 @@ bool DownloadItemModel::IsMixedContent()
  }
  
  bool DownloadItemModel::ShouldAllowDownloadFeedback() const {
@@ -116,7 +118,7 @@
  }
  
  bool DownloadItemModel::ShouldRemoveFromShelfWhenComplete() const {
-@@ -400,17 +383,6 @@ void DownloadItemModel::SetShouldPreferO
+@@ -402,17 +385,6 @@ void DownloadItemModel::SetShouldPreferO
    data->should_prefer_opening_in_browser_ = preference;
  }
  
@@ -173,7 +175,7 @@
        virtual_path_(initial_virtual_path),
        is_filetype_handled_safely_(false),
  #if defined(OS_ANDROID)
-@@ -769,24 +766,12 @@ DownloadTargetDeterminer::Result
+@@ -772,24 +769,12 @@ DownloadTargetDeterminer::Result
    DCHECK(!virtual_path_.empty());
    next_state_ = STATE_CHECK_VISITED_REFERRER_BEFORE;
  
@@ -200,7 +202,7 @@
    DoLoop();
  }
  
-@@ -795,50 +780,6 @@ DownloadTargetDeterminer::Result
+@@ -798,50 +783,6 @@ DownloadTargetDeterminer::Result
    DCHECK_CURRENTLY_ON(BrowserThread::UI);
    next_state_ = STATE_DETERMINE_INTERMEDIATE_PATH;
  
@@ -251,7 +253,7 @@
    return CONTINUE;
  }
  
-@@ -846,11 +787,6 @@ void DownloadTargetDeterminer::CheckVisi
+@@ -849,11 +790,6 @@ void DownloadTargetDeterminer::CheckVisi
      bool visited_referrer_before) {
    DCHECK_CURRENTLY_ON(BrowserThread::UI);
    DCHECK_EQ(STATE_DETERMINE_INTERMEDIATE_PATH, next_state_);
@@ -263,7 +265,7 @@
    DoLoop();
  }
  
-@@ -892,58 +828,31 @@ DownloadTargetDeterminer::Result
+@@ -895,58 +831,31 @@ DownloadTargetDeterminer::Result
    // target path. In practice the temporary download file that was created prior
    // to download filename determination is already named
    // download_->GetForcedFilePath().
@@ -326,7 +328,7 @@
    return COMPLETE;
  }
  
-@@ -954,8 +863,6 @@ void DownloadTargetDeterminer::ScheduleC
+@@ -957,8 +866,6 @@ void DownloadTargetDeterminer::ScheduleC
              << " Local:" << local_path_.AsUTF8Unsafe()
              << " Intermediate:" << intermediate_path_.AsUTF8Unsafe()
              << " Confirmation reason:" << static_cast<int>(confirmation_reason_)
@@ -335,7 +337,7 @@
              << " Result:" << static_cast<int>(result);
    std::unique_ptr<DownloadTargetInfo> target_info(new DownloadTargetInfo);
  
-@@ -966,8 +873,6 @@ void DownloadTargetDeterminer::ScheduleC
+@@ -969,8 +876,6 @@ void DownloadTargetDeterminer::ScheduleC
                 confirmation_reason_ != DownloadConfirmationReason::NONE
             ? DownloadItem::TARGET_DISPOSITION_PROMPT
             : DownloadItem::TARGET_DISPOSITION_OVERWRITE);
@@ -344,7 +346,7 @@
    target_info->intermediate_path = intermediate_path_;
    target_info->mime_type = mime_type_;
    target_info->is_filetype_handled_safely = is_filetype_handled_safely_;
-@@ -1054,33 +959,6 @@ bool DownloadTargetDeterminer::HasPrompt
+@@ -1059,33 +964,6 @@ bool DownloadTargetDeterminer::HasPrompt
                                  DownloadItem::TARGET_DISPOSITION_PROMPT);
  }
  
@@ -388,7 +390,7 @@
  #include "content/public/browser/download_manager_delegate.h"
  #include "ppapi/buildflags/buildflags.h"
  
-@@ -265,7 +264,7 @@ class DownloadTargetDeterminer : public
+@@ -267,7 +266,7 @@ class DownloadTargetDeterminer : public
  
    // Callback invoked after the delegate has checked the download URL. Sets the
    // danger type of the download to |danger_type|.
@@ -397,7 +399,7 @@
  
    // Checks if the user has visited the referrer URL of the download prior to
    // today. The actual check is only performed if it would be needed to
-@@ -314,16 +313,6 @@ class DownloadTargetDeterminer : public
+@@ -316,16 +315,6 @@ class DownloadTargetDeterminer : public
    // operation.
    bool HasPromptedForPath() const;
  
@@ -414,7 +416,7 @@
    // Generates the download file name based on information from URL, response
    // headers and sniffed mime type.
    base::FilePath GenerateFileName() const;
-@@ -338,8 +327,6 @@ class DownloadTargetDeterminer : public
+@@ -340,8 +329,6 @@ class DownloadTargetDeterminer : public
    bool create_target_directory_;
    download::DownloadPathReservationTracker::FilenameConflictAction
        conflict_action_;
@@ -435,15 +437,15 @@
        mixed_content_status(
 --- a/chrome/browser/download/download_target_info.h
 +++ b/chrome/browser/download/download_target_info.h
-@@ -11,7 +11,6 @@
- #include "components/download/public/common/download_danger_type.h"
+@@ -13,7 +13,6 @@
  #include "components/download/public/common/download_interrupt_reasons.h"
  #include "components/download/public/common/download_item.h"
+ #include "components/download/public/common/download_schedule.h"
 -#include "components/safe_browsing/core/proto/download_file_types.pb.h"
  
  struct DownloadTargetInfo {
    DownloadTargetInfo();
-@@ -56,7 +55,6 @@ struct DownloadTargetInfo {
+@@ -58,7 +57,6 @@ struct DownloadTargetInfo {
    //       UNKONWN, the file will still be conisdered a DANGEROUS_FILE. However,
    //       SafeBrowsing may flag the file as being malicious, in which case the
    //       malicious classification should take precedence.
@@ -453,7 +455,7 @@
    // path until all the bytes are available and the user has accepted a
 --- a/chrome/browser/download/download_ui_model.cc
 +++ b/chrome/browser/download/download_ui_model.cc
-@@ -34,7 +34,6 @@
+@@ -33,7 +33,6 @@
  
  using base::TimeDelta;
  using download::DownloadItem;
@@ -461,7 +463,7 @@
  using offline_items_collection::FailState;
  
  namespace {
-@@ -433,13 +432,6 @@ bool DownloadUIModel::ShouldPreferOpenin
+@@ -426,13 +425,6 @@ bool DownloadUIModel::ShouldPreferOpenin
  
  void DownloadUIModel::SetShouldPreferOpeningInBrowser(bool preference) {}
  
@@ -485,7 +487,7 @@
  
  #if !defined(OS_ANDROID)
  #include "chrome/browser/download/download_commands.h"
-@@ -177,15 +176,6 @@ class DownloadUIModel {
+@@ -168,15 +167,6 @@ class DownloadUIModel {
    // Change what's returned by ShouldPreferOpeningInBrowser to |preference|.
    virtual void SetShouldPreferOpeningInBrowser(bool preference);
  
@@ -503,7 +505,7 @@
    virtual download::DownloadItem::MixedContentStatus GetMixedContentStatus()
 --- a/chrome/browser/native_file_system/chrome_native_file_system_permission_context.cc
 +++ b/chrome/browser/native_file_system/chrome_native_file_system_permission_context.cc
-@@ -19,7 +19,6 @@
+@@ -18,7 +18,6 @@
  #include "chrome/browser/native_file_system/native_file_system_permission_context_factory.h"
  #include "chrome/browser/native_file_system/native_file_system_permission_request_manager.h"
  #include "chrome/browser/profiles/profile.h"
@@ -511,13 +513,12 @@
  #include "chrome/browser/ui/native_file_system_dialogs.h"
  #include "chrome/common/chrome_paths.h"
  #include "components/content_settings/core/browser/host_content_settings_map.h"
-@@ -214,81 +213,6 @@ BindResultCallbackToCurrentSequence(
+@@ -184,79 +183,6 @@ BindResultCallbackToCurrentSequence(
        base::SequencedTaskRunnerHandle::Get(), std::move(callback));
  }
  
 -void DoSafeBrowsingCheckOnUIThread(
--    int process_id,
--    int frame_id,
+-    content::GlobalFrameRoutingId frame_id,
 -    std::unique_ptr<content::NativeFileSystemWriteItem> item,
 -    safe_browsing::CheckDownloadCallback callback) {
 -  DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
@@ -533,7 +534,7 @@
 -
 -  if (!item->browser_context) {
 -    content::RenderProcessHost* rph =
--        content::RenderProcessHost::FromID(process_id);
+-        content::RenderProcessHost::FromID(frame_id.child_id);
 -    if (!rph) {
 -      std::move(callback).Run(safe_browsing::DownloadCheckResult::UNKNOWN);
 -      return;
@@ -542,8 +543,7 @@
 -  }
 -
 -  if (!item->web_contents) {
--    content::RenderFrameHost* rfh =
--        content::RenderFrameHost::FromID(process_id, frame_id);
+-    content::RenderFrameHost* rfh = content::RenderFrameHost::FromID(frame_id);
 -    if (rfh)
 -      item->web_contents = content::WebContents::FromRenderFrameHost(rfh);
 -  }
@@ -593,20 +593,20 @@
  }  // namespace
  
  ChromeNativeFileSystemPermissionContext::Grants::Grants() = default;
-@@ -383,29 +307,6 @@ void ChromeNativeFileSystemPermissionCon
-                      frame_id, std::move(callback)));
+@@ -324,29 +250,6 @@ void ChromeNativeFileSystemPermissionCon
+                      std::move(callback)));
  }
  
 -void ChromeNativeFileSystemPermissionContext::PerformAfterWriteChecks(
 -    std::unique_ptr<content::NativeFileSystemWriteItem> item,
--    int process_id,
--    int frame_id,
+-    content::GlobalFrameRoutingId frame_id,
+-
 -    base::OnceCallback<void(AfterWriteCheckResult)> callback) {
 -  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
--  base::PostTask(
--      FROM_HERE, {content::BrowserThread::UI},
+-  content::GetUIThreadTaskRunner({})->PostTask(
+-      FROM_HERE,
 -      base::BindOnce(
--          &DoSafeBrowsingCheckOnUIThread, process_id, frame_id, std::move(item),
+-          &DoSafeBrowsingCheckOnUIThread, frame_id, std::move(item),
 -          base::BindOnce(
 -              [](scoped_refptr<base::TaskRunner> task_runner,
 -                 base::OnceCallback<void(AfterWriteCheckResult result)>
@@ -625,29 +625,28 @@
          const url::Origin& origin,
 --- a/chrome/browser/native_file_system/chrome_native_file_system_permission_context.h
 +++ b/chrome/browser/native_file_system/chrome_native_file_system_permission_context.h
-@@ -59,11 +59,6 @@ class ChromeNativeFileSystemPermissionCo
-       int process_id,
-       int frame_id,
-       base::OnceCallback<void(PermissionStatus)> callback) override;
+@@ -52,10 +52,6 @@ class ChromeNativeFileSystemPermissionCo
+       bool is_directory,
+       content::GlobalFrameRoutingId frame_id,
+       base::OnceCallback<void(SensitiveDirectoryResult)> callback) override;
 -  void PerformAfterWriteChecks(
 -      std::unique_ptr<content::NativeFileSystemWriteItem> item,
--      int process_id,
--      int frame_id,
+-      content::GlobalFrameRoutingId frame_id,
 -      base::OnceCallback<void(AfterWriteCheckResult)> callback) override;
    bool CanObtainWritePermission(const url::Origin& origin) override;
  
    ContentSetting GetReadGuardContentSetting(const url::Origin& origin);
 --- a/chrome/browser/password_manager/chrome_password_manager_client.cc
 +++ b/chrome/browser/password_manager/chrome_password_manager_client.cc
-@@ -28,7 +28,6 @@
+@@ -30,7 +30,6 @@
  #include "chrome/browser/password_manager/password_store_factory.h"
  #include "chrome/browser/prerender/prerender_contents.h"
  #include "chrome/browser/profiles/profile.h"
 -#include "chrome/browser/safe_browsing/chrome_password_protection_service.h"
+ #include "chrome/browser/safe_browsing/user_interaction_observer.h"
  #include "chrome/browser/signin/identity_manager_factory.h"
- #include "chrome/browser/site_isolation/site_isolation_policy.h"
  #include "chrome/browser/sync/profile_sync_service_factory.h"
-@@ -98,10 +97,10 @@
+@@ -101,10 +100,10 @@
  #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"
@@ -658,8 +657,8 @@
 -#endif
  
  #if defined(OS_ANDROID)
- #include "chrome/browser/android/tab_android.h"
-@@ -755,6 +754,7 @@ std::string ChromePasswordManagerClient:
+ #include "base/feature_list.h"
+@@ -747,6 +746,7 @@ std::string ChromePasswordManagerClient:
    return std::string();
  }
  
@@ -667,7 +666,7 @@
  #if defined(ON_FOCUS_PING_ENABLED) || \
      defined(SYNC_PASSWORD_REUSE_DETECTION_ENABLED)
  safe_browsing::PasswordProtectionService*
-@@ -777,6 +777,7 @@ void ChromePasswordManagerClient::CheckS
+@@ -769,6 +769,7 @@ void ChromePasswordManagerClient::CheckS
    }
  }
  #endif  // defined(ON_FOCUS_PING_ENABLED)
@@ -675,7 +674,7 @@
  
  #if defined(SYNC_PASSWORD_REUSE_DETECTION_ENABLED)
  void ChromePasswordManagerClient::CheckProtectedPasswordEntry(
-@@ -785,24 +786,11 @@ void ChromePasswordManagerClient::CheckP
+@@ -777,24 +778,11 @@ void ChromePasswordManagerClient::CheckP
      const std::vector<password_manager::MatchingReusedCredential>&
          matching_reused_credentials,
      bool password_field_exists) {
@@ -700,7 +699,7 @@
  }
  #endif  // defined(SYNC_PASSWORD_REUSE_WARNING_ENABLED)
  
-@@ -1197,9 +1185,11 @@ void ChromePasswordManagerClient::OnPast
+@@ -1206,9 +1194,11 @@ void ChromePasswordManagerClient::OnPast
    base::string16 text;
    clipboard->ReadText(ui::ClipboardBuffer::kCopyPaste, &text);
    was_on_paste_called_ = true;
@@ -713,7 +712,7 @@
  
  void ChromePasswordManagerClient::RenderFrameCreated(
      content::RenderFrameHost* render_frame_host) {
-@@ -1236,7 +1226,9 @@ void ChromePasswordManagerClient::OnInpu
+@@ -1245,7 +1235,9 @@ void ChromePasswordManagerClient::OnInpu
    if (key_event.windows_key_code == (ui::VKEY_V & 0x1f)) {
      OnPaste();
    } else {
@@ -725,7 +724,7 @@
  }
 --- a/chrome/browser/password_manager/chrome_password_manager_client.h
 +++ b/chrome/browser/password_manager/chrome_password_manager_client.h
-@@ -174,13 +174,14 @@ class ChromePasswordManagerClient
+@@ -175,13 +175,14 @@ class ChromePasswordManagerClient
    void AnnotateNavigationEntry(bool has_password_field) override;
    std::string GetPageLanguage() const override;
  
@@ -758,7 +757,7 @@
  
  namespace {
  
-@@ -143,9 +141,6 @@ void ContextualNotificationPermissionUiS
+@@ -155,9 +153,6 @@ void ContextualNotificationPermissionUiS
  }
  
  void ContextualNotificationPermissionUiSelector::Cancel() {
@@ -768,7 +767,7 @@
  }
  
  ContextualNotificationPermissionUiSelector::
-@@ -156,24 +151,14 @@ void ContextualNotificationPermissionUiS
+@@ -168,24 +163,14 @@ void ContextualNotificationPermissionUiS
    base::Optional<Decision> decision = GetDecisionBasedOnSiteReputation(
        CrowdDenyPreloadData::GetInstance()->GetReputationDataForSite(origin));
  
@@ -800,7 +799,7 @@
  void ContextualNotificationPermissionUiSelector::OnSafeBrowsingVerdictReceived(
 --- a/chrome/browser/ui/tab_contents/chrome_web_contents_view_handle_drop.cc
 +++ b/chrome/browser/ui/tab_contents/chrome_web_contents_view_handle_drop.cc
-@@ -78,37 +78,8 @@ void HandleOnPerformDrop(
+@@ -79,37 +79,8 @@ void HandleOnPerformDrop(
      content::WebContents* web_contents,
      const content::DropData& drop_data,
      content::WebContentsViewDelegate::DropCompletionCallback callback) {
@@ -821,10 +820,10 @@
 -  // Collect the data that needs to be scanned.
 -  if (!drop_data.url_title.empty())
 -    data.text.push_back(drop_data.url_title);
--  if (!drop_data.text.is_null())
--    data.text.push_back(drop_data.text.string());
--  if (!drop_data.html.is_null())
--    data.text.push_back(drop_data.html.string());
+-  if (drop_data.text)
+-    data.text.push_back(*drop_data.text);
+-  if (drop_data.html)
+-    data.text.push_back(*drop_data.html);
 -  if (!drop_data.file_contents.empty())
 -    data.text.push_back(base::UTF8ToUTF16(drop_data.file_contents));
 -
@@ -844,9 +843,9 @@
  }
 --- a/chrome/browser/ui/views/download/download_item_view.cc
 +++ b/chrome/browser/ui/views/download/download_item_view.cc
-@@ -1308,16 +1308,20 @@ void DownloadItemView::ShowDeepScanningD
-           },
-           base::Unretained(this))));
+@@ -1221,16 +1221,20 @@ void DownloadItemView::ShowDeepScanningD
+   StyleFilename(*deep_scanning_label_, filename_offset, filename.length());
+   deep_scanning_label_->SizeToFit(GetLabelWidth(*deep_scanning_label_));
  
 +#if BUILDFLAG(FULL_SAFE_BROWSING)
    if (enterprise_connectors::ConnectorsManager::GetInstance()
@@ -865,7 +864,7 @@
  
    file_name_label_->SetVisible(false);
    status_label_->SetVisible(false);
-@@ -1628,7 +1632,9 @@ base::string16 DownloadItemView::ElidedF
+@@ -1553,7 +1557,9 @@ base::string16 DownloadItemView::ElidedF
  }
  
  void DownloadItemView::OpenDownloadDuringAsyncScanning() {
@@ -891,7 +890,7 @@
    modal_construction_start_time_ = base::TimeTicks::Now();
 --- a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
 +++ b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
-@@ -83,8 +83,6 @@
+@@ -87,8 +87,6 @@
  #include "components/nacl/common/buildflags.h"
  #include "components/prefs/pref_service.h"
  #include "components/safe_browsing/buildflags.h"
@@ -900,7 +899,7 @@
  #include "components/security_interstitials/content/connection_help_ui.h"
  #include "components/security_interstitials/content/known_interception_disclosure_ui.h"
  #include "components/security_interstitials/content/urls.h"
-@@ -466,8 +464,6 @@ WebUIFactoryFunction GetWebUIFactoryFunc
+@@ -478,8 +476,6 @@ WebUIFactoryFunction GetWebUIFactoryFunc
      return &NewWebUI<PredictorsUI>;
    if (url.host_piece() == chrome::kChromeUIQuotaInternalsHost)
      return &NewWebUI<QuotaInternalsUI>;
@@ -921,7 +920,7 @@
  
 --- a/components/password_manager/content/browser/content_password_manager_driver.cc
 +++ b/components/password_manager/content/browser/content_password_manager_driver.cc
-@@ -316,7 +316,7 @@ void ContentPasswordManagerDriver::Check
+@@ -319,7 +319,7 @@ void ContentPasswordManagerDriver::Check
    if (client_->GetMetricsRecorder()) {
      client_->GetMetricsRecorder()->RecordUserFocusedPasswordField();
    }
@@ -932,7 +931,7 @@
  }
 --- a/components/password_manager/core/browser/password_manager_client.h
 +++ b/components/password_manager/core/browser/password_manager_client.h
-@@ -318,14 +318,15 @@ class PasswordManagerClient {
+@@ -327,14 +327,15 @@ class PasswordManagerClient {
    // Returns the current best guess as to the page's display language.
    virtual std::string GetPageLanguage() const;
  
@@ -958,9 +957,9 @@
  };
  
 -[EnableIf=full_safe_browsing]
+ // Interface for setting the CSD model and to start phishing classification.
  interface PhishingDetector {
-   // Tells the renderer to begin phishing detection for the given toplevel URL
-   // which it has started loading. Returns the serialized request proto and a
+   // A classification model for client-side phishing detection.
 --- a/components/safe_browsing/core/file_type_policies.h
 +++ b/components/safe_browsing/core/file_type_policies.h
 @@ -11,7 +11,6 @@
@@ -1037,7 +1036,7 @@
    DCHECK_EQ(swap_url.type(), url.type());
  }
  
-@@ -303,51 +302,7 @@ void NativeFileSystemFileWriterImpl::Clo
+@@ -303,49 +302,7 @@ void NativeFileSystemFileWriterImpl::Clo
    // swap file even if the writer was destroyed at that point.
    state_ = State::kClosePending;
  
@@ -1064,8 +1063,7 @@
 -    // swap file and invoke the callback.
 -    base::ThreadPool::PostTask(
 -        FROM_HERE, {base::MayBlock()},
--        base::BindOnce(base::IgnoreResult(&base::DeleteFile), swap_path,
--                       /*recursive=*/false));
+-        base::BindOnce(base::GetDeleteFileCallback(), swap_path));
 -    std::move(callback).Run(native_file_system_error::FromStatus(
 -        NativeFileSystemStatus::kOperationAborted,
 -        "Failed to perform Safe Browsing check."));
@@ -1082,8 +1080,7 @@
 -  item->frame_url = file_writer->context().url;
 -  item->has_user_gesture = file_writer->has_transient_user_activation_;
 -  file_writer->manager()->permission_context()->PerformAfterWriteChecks(
--      std::move(item), file_writer->context().process_id,
--      file_writer->context().frame_id,
+-      std::move(item), file_writer->context().frame_id,
 -      base::BindOnce(&NativeFileSystemFileWriterImpl::DidAfterWriteCheck,
 -                     file_writer, swap_path, std::move(callback)));
 +  DidPassAfterWriteCheck(std::move(callback));
@@ -1109,16 +1106,18 @@
    static void DidAfterWriteCheck(
        base::WeakPtr<NativeFileSystemFileWriterImpl> file_writer,
        const base::FilePath& swap_path,
-@@ -101,7 +94,7 @@ class CONTENT_EXPORT NativeFileSystemFil
- 
-   // After write checks only apply to native local paths.
+@@ -102,9 +95,7 @@ class CONTENT_EXPORT NativeFileSystemFil
+   // After write checks apply to native local paths, file system provider paths,
+   // and platform app native paths.
    bool RequireAfterWriteCheck() const {
--    return url().type() == storage::kFileSystemTypeNativeLocal;
+-    return url().type() == storage::kFileSystemTypeNativeLocal ||
+-           url().type() == storage::kFileSystemTypeProvided ||
+-           url().type() == storage::kFileSystemTypeNativeForPlatformApp;
 +    return false;
    }
  
-   // Quarantine checks only apply to native local paths.
-@@ -141,10 +134,6 @@ class CONTENT_EXPORT NativeFileSystemFil
+   // Quarantine checks apply to native local paths, file system provider paths,
+@@ -149,10 +140,6 @@ class CONTENT_EXPORT NativeFileSystemFil
  
    bool skip_quarantine_check_for_testing_ = false;
  
@@ -1131,7 +1130,7 @@
    base::WeakPtrFactory<NativeFileSystemFileWriterImpl> weak_factory_{this};
 --- a/content/public/browser/native_file_system_permission_context.h
 +++ b/content/public/browser/native_file_system_permission_context.h
-@@ -100,13 +100,6 @@ class NativeFileSystemPermissionContext
+@@ -85,12 +85,6 @@ class NativeFileSystemPermissionContext
        base::OnceCallback<void(SensitiveDirectoryResult)> callback) = 0;
  
    enum class AfterWriteCheckResult { kAllow, kBlock };
@@ -1139,8 +1138,7 @@
 -  // or other security checks to determine if the write should be allowed.
 -  virtual void PerformAfterWriteChecks(
 -      std::unique_ptr<NativeFileSystemWriteItem> item,
--      int process_id,
--      int frame_id,
+-      GlobalFrameRoutingId frame_id,
 -      base::OnceCallback<void(AfterWriteCheckResult)> callback) = 0;
  
    // Returns whether the give |origin| already allows write permission, or it is

File diff suppressed because it is too large
+ 188 - 257
patches/core/ungoogled-chromium/remove-unused-preferences-fields.patch


+ 11 - 11
patches/core/ungoogled-chromium/use-local-devtools-files.patch

@@ -5,9 +5,9 @@
 
 --- a/third_party/devtools-frontend/src/BUILD.gn
 +++ b/third_party/devtools-frontend/src/BUILD.gn
-@@ -842,14 +842,13 @@ generated_non_autostart_non_remote_modul
-   "$resources_out_dir/timeline/timeline_module.js",
+@@ -840,14 +840,13 @@ generated_non_autostart_non_remote_modul
    "$resources_out_dir/web_audio/web_audio_module.js",
+   "$resources_out_dir/webauthn/webauthn_module.js",
    "$resources_out_dir/workspace_diff/workspace_diff_module.js",
 -]
 -
@@ -22,15 +22,15 @@
  generated_test_modules = [
    "$resources_out_dir/accessibility_test_runner/accessibility_test_runner_module.js",
    "$resources_out_dir/application_test_runner/application_test_runner_module.js",
-@@ -946,7 +945,6 @@ devtools_frontend_resources_deps = devto
-                                      ":copy_htaccess",
-                                      ":copy_inspector_images",
-                                      ":copy_lighthouse_locale_files",
--                                     ":copy_wasm_deps",
-                                      ":devtools_extension_api",
-                                      "front_end",
-                                    ]
-@@ -1674,7 +1672,6 @@ action("generate_devtools_grd") {
+@@ -926,7 +925,6 @@ devtools_frontend_resources_deps = [
+   ":copy_emulated_devices_images",
+   ":copy_inspector_images",
+   ":copy_lighthouse_locale_files",
+-  ":copy_wasm_deps",
+   ":devtools_extension_api",
+   "front_end",
+ 
+@@ -1661,7 +1659,6 @@ action("generate_devtools_grd") {
        generated_worker_bundles +
        [
          "$resources_out_dir/devtools_extension_api.js",

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

@@ -9,7 +9,7 @@
 
 --- a/chrome/browser/BUILD.gn
 +++ b/chrome/browser/BUILD.gn
-@@ -2253,6 +2253,7 @@ static_library("browser") {
+@@ -2137,6 +2137,7 @@ static_library("browser") {
      "//third_party/libyuv",
      "//third_party/metrics_proto",
      "//third_party/re2",
@@ -19,15 +19,15 @@
      "//third_party/zlib",
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -165,6 +165,7 @@
- #include "third_party/blink/public/common/features.h"
+@@ -170,6 +170,7 @@
  #include "third_party/blink/public/common/forcedark/forcedark_switches.h"
+ #include "third_party/blink/public/common/switches.h"
  #include "third_party/leveldatabase/leveldb_features.h"
 +#include "components/ungoogled/ungoogled_switches.h"
  #include "ui/accessibility/accessibility_features.h"
  #include "ui/accessibility/accessibility_switches.h"
  #include "ui/base/ui_base_features.h"
-@@ -2039,6 +2040,14 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -2042,6 +2043,14 @@ const FeatureEntry kFeatureEntries[] = {
       "Set internal PDF plugin name",
       "Sets the internal PDF viewer plugin name. Useful for sites that probe JS API navigator.plugins",
       kOsDesktop, MULTI_VALUE_TYPE(kPDFPluginNameChoices)},
@@ -44,7 +44,7 @@
       SINGLE_VALUE_TYPE(switches::kIgnoreGpuBlacklist)},
 --- a/content/browser/BUILD.gn
 +++ b/content/browser/BUILD.gn
-@@ -210,6 +210,7 @@ jumbo_source_set("browser") {
+@@ -215,6 +215,7 @@ jumbo_source_set("browser") {
      "//third_party/libyuv",
      "//third_party/re2",
      "//third_party/sqlite",
@@ -54,7 +54,7 @@
      "//third_party/zlib/google:zip",
 --- a/content/browser/renderer_host/render_process_host_impl.cc
 +++ b/content/browser/renderer_host/render_process_host_impl.cc
-@@ -226,6 +226,7 @@
+@@ -223,6 +223,7 @@
  #include "third_party/blink/public/common/user_agent/user_agent_metadata.h"
  #include "third_party/blink/public/mojom/disk_allocator.mojom.h"
  #include "third_party/blink/public/public_buildflags.h"
@@ -62,7 +62,7 @@
  #include "third_party/skia/include/core/SkBitmap.h"
  #include "ui/accessibility/accessibility_switches.h"
  #include "ui/base/ui_base_switches.h"
-@@ -3316,6 +3317,8 @@ void RenderProcessHostImpl::PropagateBro
+@@ -3345,6 +3346,8 @@ void RenderProcessHostImpl::PropagateBro
      switches::kEnableWebGLDraftExtensions,
      switches::kEnableWebGLImageChromium,
      switches::kFileUrlPathAlias,
@@ -83,15 +83,15 @@
      "//ui/events/blink",
 --- a/content/child/runtime_features.cc
 +++ b/content/child/runtime_features.cc
-@@ -27,6 +27,7 @@
- #include "services/network/public/cpp/network_switches.h"
+@@ -28,6 +28,7 @@
  #include "third_party/blink/public/common/features.h"
+ #include "third_party/blink/public/common/switches.h"
  #include "third_party/blink/public/platform/web_runtime_features.h"
 +#include "components/ungoogled/ungoogled_switches.h"
  #include "ui/accessibility/accessibility_features.h"
  #include "ui/base/ui_base_features.h"
  #include "ui/events/blink/blink_features.h"
-@@ -449,6 +450,10 @@ void SetRuntimeFeaturesFromCommandLine(c
+@@ -466,6 +467,10 @@ void SetRuntimeFeaturesFromCommandLine(c
         switches::kEnableAccessibilityObjectModel, true},
        {wrf::EnableAllowSyncXHRInPageDismissal,
         switches::kAllowSyncXHRInPageDismissal, true},
@@ -99,12 +99,12 @@
 +       switches::kFingerprintingClientRectsNoise, true},
 +      {wrf::EnableFingerprintingCanvasMeasureTextNoise,
 +       switches::kFingerprintingCanvasMeasureTextNoise, true},
-       {wrf::EnableShadowDOMV0, switches::kWebComponentsV0Enabled, true},
-       {wrf::EnableCustomElementsV0, switches::kWebComponentsV0Enabled, true},
-       {wrf::EnableHTMLImports, switches::kWebComponentsV0Enabled, true},
+   };
+   for (const auto& mapping : switchToFeatureMapping) {
+     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
-@@ -217,6 +217,8 @@ class WebRuntimeFeatures {
+@@ -223,6 +223,8 @@ class WebRuntimeFeatures {
    BLINK_PLATFORM_EXPORT static void EnableTranslateService(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"
-@@ -892,6 +893,14 @@ Range* Document::CreateRangeAdjustedToTr
+@@ -904,6 +905,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>();
-@@ -2620,6 +2629,15 @@ void Document::UpdateStyleAndLayoutTree(
+@@ -2510,6 +2519,15 @@ void Document::UpdateStyleAndLayoutTree(
  #if DCHECK_IS_ON()
    AssertLayoutTreeUpdated(*this);
  #endif
@@ -156,7 +156,7 @@
  void Document::UpdateActiveStyle() {
 --- a/third_party/blink/renderer/core/dom/document.h
 +++ b/third_party/blink/renderer/core/dom/document.h
-@@ -476,6 +476,10 @@ class CORE_EXPORT Document : public Cont
+@@ -451,6 +451,10 @@ class CORE_EXPORT Document : public Cont
      has_xml_declaration_ = has_xml_declaration ? 1 : 0;
    }
  
@@ -167,7 +167,7 @@
    String visibilityState() const;
    bool IsPageVisible() const;
    bool hidden() const;
-@@ -1998,6 +2002,9 @@ class CORE_EXPORT Document : public Cont
+@@ -1971,6 +1975,9 @@ class CORE_EXPORT Document : public Cont
  
    base::ElapsedTimer start_time_;
  
@@ -179,7 +179,7 @@
    HeapVector<Member<ScriptElementBase>> current_script_stack_;
 --- a/third_party/blink/renderer/core/dom/element.cc
 +++ b/third_party/blink/renderer/core/dom/element.cc
-@@ -2022,6 +2022,11 @@ DOMRectList* Element::getClientRects() {
+@@ -2031,6 +2031,11 @@ DOMRectList* Element::getClientRects() {
    DCHECK(element_layout_object);
    GetDocument().AdjustFloatQuadsForScrollAndAbsoluteZoom(
        quads, *element_layout_object);
@@ -191,7 +191,7 @@
    return MakeGarbageCollected<DOMRectList>(quads);
  }
  
-@@ -2039,6 +2044,9 @@ DOMRect* Element::getBoundingClientRect(
+@@ -2048,6 +2053,9 @@ DOMRect* Element::getBoundingClientRect(
    DCHECK(element_layout_object);
    GetDocument().AdjustFloatRectForScrollAndAbsoluteZoom(result,
                                                          *element_layout_object);
@@ -228,7 +228,7 @@
  // TODO(editing-dev): We should make
 --- a/third_party/blink/renderer/core/html/canvas/text_metrics.cc
 +++ b/third_party/blink/renderer/core/html/canvas/text_metrics.cc
-@@ -54,6 +54,24 @@ TextMetrics::TextMetrics(const Font& fon
+@@ -55,6 +55,24 @@ TextMetrics::TextMetrics(const Font& fon
    Update(font, direction, baseline, align, text);
  }
  
@@ -257,7 +257,7 @@
 +++ b/third_party/blink/renderer/core/html/canvas/text_metrics.h
 @@ -64,6 +64,8 @@ class CORE_EXPORT TextMetrics final : pu
  
-   void Trace(Visitor*) override;
+   void Trace(Visitor*) const override;
  
 +  void Shuffle(const double factor);
 +
@@ -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
-@@ -815,9 +815,15 @@ TextMetrics* CanvasRenderingContext2D::m
+@@ -835,9 +835,15 @@ TextMetrics* CanvasRenderingContext2D::m
    else
      direction = ToTextDirection(GetState().GetDirection(), canvas());
  
@@ -285,7 +285,7 @@
  void CanvasRenderingContext2D::DrawTextInternal(
 --- a/third_party/blink/renderer/platform/BUILD.gn
 +++ b/third_party/blink/renderer/platform/BUILD.gn
-@@ -1564,6 +1564,7 @@ jumbo_component("platform") {
+@@ -1569,6 +1569,7 @@ jumbo_component("platform") {
      "//base/allocator:buildflags",
      "//cc/ipc",
      "//components/paint_preview/common",
@@ -295,8 +295,8 @@
      "//crypto",
 --- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
 +++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
-@@ -675,4 +675,12 @@ void WebRuntimeFeatures::EnableVideoWake
-       enable);
+@@ -709,4 +709,12 @@ void WebRuntimeFeatures::EnableContentIn
+   RuntimeEnabledFeatures::SetContentIndexEnabled(enable);
  }
  
 +void WebRuntimeFeatures::EnableFingerprintingClientRectsNoise(bool 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
-@@ -777,6 +777,12 @@
+@@ -774,6 +774,12 @@
        status: "stable",
      },
      {

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

@@ -23,7 +23,7 @@ approach to change color components.
 
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -2053,6 +2053,10 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -2056,6 +2056,10 @@ const FeatureEntry kFeatureEntries[] = {
       "Enable Canvas::measureText() fingerprint deception",
       "Scale the output values of Canvas::measureText() with a randomly selected factor in the range -0.0003% to 0.0003%, which are recomputed on every document initialization.",
       kOsAll, SINGLE_VALUE_TYPE(switches::kFingerprintingCanvasMeasureTextNoise)},
@@ -36,7 +36,7 @@ approach to change color components.
       SINGLE_VALUE_TYPE(switches::kIgnoreGpuBlacklist)},
 --- a/content/browser/renderer_host/render_process_host_impl.cc
 +++ b/content/browser/renderer_host/render_process_host_impl.cc
-@@ -3319,6 +3319,7 @@ void RenderProcessHostImpl::PropagateBro
+@@ -3348,6 +3348,7 @@ void RenderProcessHostImpl::PropagateBro
      switches::kFileUrlPathAlias,
      switches::kFingerprintingClientRectsNoise,
      switches::kFingerprintingCanvasMeasureTextNoise,
@@ -46,18 +46,18 @@ approach to change color components.
      switches::kForceGpuMemAvailableMb,
 --- a/content/child/runtime_features.cc
 +++ b/content/child/runtime_features.cc
-@@ -454,6 +454,8 @@ void SetRuntimeFeaturesFromCommandLine(c
+@@ -471,6 +471,8 @@ void SetRuntimeFeaturesFromCommandLine(c
         switches::kFingerprintingClientRectsNoise, true},
        {wrf::EnableFingerprintingCanvasMeasureTextNoise,
         switches::kFingerprintingCanvasMeasureTextNoise, true},
 +      {wrf::EnableFingerprintingCanvasImageDataNoise,
 +       switches::kFingerprintingCanvasImageDataNoise, true},
-       {wrf::EnableShadowDOMV0, switches::kWebComponentsV0Enabled, true},
-       {wrf::EnableCustomElementsV0, switches::kWebComponentsV0Enabled, true},
-       {wrf::EnableHTMLImports, switches::kWebComponentsV0Enabled, true},
+   };
+   for (const auto& mapping : switchToFeatureMapping) {
+     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
-@@ -219,6 +219,7 @@ class WebRuntimeFeatures {
+@@ -225,6 +225,7 @@ class WebRuntimeFeatures {
    BLINK_PLATFORM_EXPORT static void EnableAllowSyncXHRInPageDismissal(bool);
    BLINK_PLATFORM_EXPORT static void EnableFingerprintingClientRectsNoise(bool);
    BLINK_PLATFORM_EXPORT static void EnableFingerprintingCanvasMeasureTextNoise(bool);
@@ -67,7 +67,7 @@ approach to change color components.
    BLINK_PLATFORM_EXPORT static void EnableHTMLImports(bool);
 --- a/third_party/blink/renderer/platform/BUILD.gn
 +++ b/third_party/blink/renderer/platform/BUILD.gn
-@@ -1547,7 +1547,9 @@ jumbo_component("platform") {
+@@ -1552,7 +1552,9 @@ jumbo_component("platform") {
      "//third_party/blink/renderer:non_test_config",
    ]
  
@@ -80,7 +80,7 @@ approach to change color components.
      ":blink_platform_public_deps",
 --- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
 +++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
-@@ -683,4 +683,8 @@ void WebRuntimeFeatures::EnableFingerpri
+@@ -717,4 +717,8 @@ void WebRuntimeFeatures::EnableFingerpri
    RuntimeEnabledFeatures::SetFingerprintingCanvasMeasureTextNoiseEnabled(enable);
  }
  
@@ -313,7 +313,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
-@@ -783,6 +783,9 @@
+@@ -780,6 +780,9 @@
        name: "FingerprintingCanvasMeasureTextNoise",
      },
      {

+ 9 - 9
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
-@@ -2081,6 +2081,7 @@ static_library("browser") {
+@@ -1961,6 +1961,7 @@ static_library("browser") {
      "//components/net_log",
      "//components/network_hints/common:mojo_bindings",
      "//components/network_session_configurator/browser",
@@ -27,7 +27,7 @@ with limited CPU/memory resources and it is disabled by default.
      "//components/offline_items_collection/core",
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -796,6 +796,11 @@ const FeatureEntry::Choice kForceEffecti
+@@ -757,6 +757,11 @@ const FeatureEntry::Choice kForceEffecti
       net::kEffectiveConnectionType4G},
  };
  
@@ -39,7 +39,7 @@ with limited CPU/memory resources and it is disabled by default.
  // Ensure that all effective connection types returned by Network Quality
  // Estimator (NQE) are also exposed via flags.
  static_assert(net::EFFECTIVE_CONNECTION_TYPE_LAST + 2 ==
-@@ -3032,6 +3037,9 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -3057,6 +3062,9 @@ const FeatureEntry kFeatureEntries[] = {
       flag_descriptions::kAutofillCreditCardUploadDescription, kOsAll,
       FEATURE_VALUE_TYPE(autofill::features::kAutofillUpstream)},
  #endif  // TOOLKIT_VIEWS || OS_ANDROID
@@ -64,9 +64,9 @@ with limited CPU/memory resources and it is disabled by default.
  #include "base/single_thread_task_runner.h"
 +#include "base/strings/string_number_conversions.h"
  #include "base/synchronization/waitable_event.h"
- #include "base/task/post_task.h"
  #include "base/task/task_traits.h"
-@@ -98,6 +100,7 @@
+ #include "base/task/thread_pool.h"
+@@ -99,6 +101,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"
@@ -74,7 +74,7 @@ with limited CPU/memory resources and it is disabled by default.
  #include "components/network_time/network_time_tracker.h"
  #include "components/optimization_guide/optimization_guide_features.h"
  #include "components/optimization_guide/optimization_guide_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"
@@ -82,7 +82,7 @@ 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"
-@@ -326,6 +330,18 @@ void BrowserProcessImpl::Init() {
+@@ -327,6 +331,18 @@ void BrowserProcessImpl::Init() {
                               base::Bind(&ApplyMetricsReportingPolicy));
  #endif
  
@@ -103,7 +103,7 @@ with limited CPU/memory resources and it is disabled by default.
  
 --- a/chrome/browser/flag_descriptions.cc
 +++ b/chrome/browser/flag_descriptions.cc
-@@ -1214,6 +1214,10 @@ const char kMediaHistoryDescription[] =
+@@ -1285,6 +1285,10 @@ const char kMediaHistoryDescription[] =
      "Enables Media History which records data around media playbacks on "
      "websites.";
  
@@ -116,7 +116,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
-@@ -729,6 +729,9 @@ extern const char kMarkHttpAsWarningAndD
+@@ -761,6 +761,9 @@ extern const char kMarkHttpAsWarningAndD
  extern const char kMediaHistoryName[];
  extern const char kMediaHistoryDescription[];
  

+ 1 - 1
patches/extra/debian/disable/android.patch

@@ -3,7 +3,7 @@ author: Michael Gilbert <mgilbert@debian.org>
 
 --- a/BUILD.gn
 +++ b/BUILD.gn
-@@ -403,7 +403,7 @@ group("gn_all") {
+@@ -413,7 +413,7 @@ group("gn_all") {
    #       seems currently broken for this platform at the moment, and the
    #       corresponding code build and works on Linux unmodified.
    #       See instructions in the corresponding BUILD.gn.

+ 2 - 2
patches/extra/debian/disable/fuzzers.patch

@@ -3,7 +3,7 @@ author: Michael Gilbert <mgilbert@debian.org>
 
 --- a/BUILD.gn
 +++ b/BUILD.gn
-@@ -753,8 +753,7 @@ group("gn_all") {
+@@ -763,8 +763,7 @@ group("gn_all") {
      }
    }
  
@@ -15,7 +15,7 @@ author: Michael Gilbert <mgilbert@debian.org>
        "//testing/libfuzzer/fuzzers",
 --- a/content/test/BUILD.gn
 +++ b/content/test/BUILD.gn
-@@ -2389,10 +2389,6 @@ test("content_perftests") {
+@@ -2476,10 +2476,6 @@ test("content_perftests") {
    }
  }
  

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

@@ -4,7 +4,7 @@ bug-debian: http://bugs.debian.org/857767
 
 --- a/chrome/browser/profiles/profile_manager.cc
 +++ b/chrome/browser/profiles/profile_manager.cc
-@@ -1091,7 +1091,7 @@ void ProfileManager::InitProfileUserPref
+@@ -1090,7 +1090,7 @@ void ProfileManager::InitProfileUserPref
      profile->GetPrefs()->SetString(prefs::kSupervisedUserId,
                                     supervised_user_id);
    }

+ 4 - 4
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
-@@ -1233,7 +1233,7 @@ void ChromeContentBrowserClient::Registe
+@@ -1251,7 +1251,7 @@ void ChromeContentBrowserClient::Registe
  void ChromeContentBrowserClient::RegisterProfilePrefs(
      user_prefs::PrefRegistrySyncable* registry) {
    registry->RegisterBooleanPref(prefs::kDisable3DAPIs, false);
@@ -45,7 +45,7 @@
  enum class NetworkPredictionStatus {
 --- a/chrome/browser/profiles/profile.cc
 +++ b/chrome/browser/profiles/profile.cc
-@@ -246,7 +246,7 @@ const char Profile::kProfileKey[] = "__P
+@@ -261,7 +261,7 @@ const char Profile::kProfileKey[] = "__P
  void Profile::RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
    registry->RegisterBooleanPref(
        prefs::kSearchSuggestEnabled,
@@ -78,7 +78,7 @@
  // static
 --- a/chrome/browser/ui/browser_ui_prefs.cc
 +++ b/chrome/browser/ui/browser_ui_prefs.cc
-@@ -67,11 +67,11 @@ void RegisterBrowserUserPrefs(user_prefs
+@@ -71,11 +71,11 @@ void RegisterBrowserUserPrefs(user_prefs
    registry->RegisterBooleanPref(prefs::kWebAppCreateInAppsMenu, true);
    registry->RegisterBooleanPref(prefs::kWebAppCreateInQuickLaunchBar, true);
    registry->RegisterBooleanPref(
@@ -181,7 +181,7 @@
        prefs::kCookieControlsMode,
 --- a/components/password_manager/core/browser/password_manager.cc
 +++ b/components/password_manager/core/browser/password_manager.cc
-@@ -200,10 +200,10 @@ FormData SimplifiedFormDataFromFormStruc
+@@ -206,10 +206,10 @@ FormData SimplifiedFormDataFromFormStruc
  void PasswordManager::RegisterProfilePrefs(
      user_prefs::PrefRegistrySyncable* registry) {
    registry->RegisterBooleanPref(

+ 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
-@@ -184,26 +184,7 @@ struct NewTabURLDetails {
+@@ -185,26 +185,7 @@ struct NewTabURLDetails {
                               : chrome::kChromeSearchLocalNtpUrl);
  #endif
  

+ 1 - 1
patches/extra/inox-patchset/0016-chromium-sandbox-pie.patch

@@ -1,6 +1,6 @@
 --- a/sandbox/linux/BUILD.gn
 +++ b/sandbox/linux/BUILD.gn
-@@ -311,6 +311,12 @@ if (is_linux) {
+@@ -312,6 +312,12 @@ if (is_linux) {
        # These files have a suspicious comparison.
        # TODO fix this and re-enable this warning.
        "-Wno-sign-compare",

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

@@ -13,7 +13,7 @@ Instead, let them appear just like regular ones.
 
 --- a/net/cert/ev_root_ca_metadata.cc
 +++ b/net/cert/ev_root_ca_metadata.cc
-@@ -48,6 +48,16 @@ struct EVMetadata {
+@@ -41,6 +41,16 @@ struct EVMetadata {
  
  // These certificates may be found in net/data/ssl/ev_roots.
  static const EVMetadata kEvRootCaMetadata[] = {
@@ -30,7 +30,7 @@ Instead, let them appear just like regular ones.
      // AC Camerfirma S.A. Chambers of Commerce Root - 2008
      // https://www.camerfirma.com
      {
-@@ -750,7 +760,9 @@ static const EVMetadata kEvRootCaMetadat
+@@ -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", ""},

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

@@ -9,7 +9,7 @@ Subject: [PATCH 56/66] browser: disable profile auto-import on first run
 
 --- a/chrome/browser/chrome_browser_main.cc
 +++ b/chrome/browser/chrome_browser_main.cc
-@@ -1406,8 +1406,6 @@ int ChromeBrowserMainParts::PreMainMessa
+@@ -1423,8 +1423,6 @@ int ChromeBrowserMainParts::PreMainMessa
    // and preferences have been registered since some of the import code depends
    // on preferences.
    if (first_run::IsChromeFirstRun()) {

+ 1 - 1
patches/extra/iridium-browser/net-cert-increase-default-key-length-for-newly-gener.patch

@@ -12,7 +12,7 @@ it as hidden as it was before?
 
 --- a/net/cert/x509_util.cc
 +++ b/net/cert/x509_util.cc
-@@ -239,7 +239,7 @@ bool GetTLSServerEndPointChannelBinding(
+@@ -240,7 +240,7 @@ bool GetTLSServerEndPointChannelBinding(
  }
  
  // RSA keys created by CreateKeyAndSelfSignedCert will be of this length.

+ 1 - 1
patches/extra/iridium-browser/prefs-always-prompt-for-download-directory-by-defaul.patch

@@ -29,7 +29,7 @@ TLDR: Do not let files sneak onto the disk too easily.
 
 --- a/chrome/browser/download/download_prefs.cc
 +++ b/chrome/browser/download/download_prefs.cc
-@@ -267,7 +267,7 @@ void DownloadPrefs::RegisterProfilePrefs
+@@ -275,7 +275,7 @@ void DownloadPrefs::RegisterProfilePrefs
      user_prefs::PrefRegistrySyncable* registry) {
    registry->RegisterBooleanPref(
        prefs::kPromptForDownload,

+ 3 - 3
patches/extra/ungoogled-chromium/add-flag-for-bookmark-bar-ntp.patch

@@ -1,6 +1,6 @@
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -293,6 +293,13 @@ const FeatureEntry::Choice kPDFPluginNam
+@@ -298,6 +298,13 @@ const FeatureEntry::Choice kPDFPluginNam
      {"Microsoft Edge", switches::kPDFPluginName, "edge"},
  };
  
@@ -14,7 +14,7 @@
  const FeatureEntry::Choice kTouchEventFeatureDetectionChoices[] = {
      {flags_ui::kGenericExperimentChoiceDisabled, "", ""},
      {flags_ui::kGenericExperimentChoiceEnabled,
-@@ -2276,6 +2283,12 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -2283,6 +2290,12 @@ const FeatureEntry kFeatureEntries[] = {
      {"focus-mode", flag_descriptions::kFocusMode,
       flag_descriptions::kFocusModeDescription, kOsDesktop,
       FEATURE_VALUE_TYPE(features::kFocusMode)},
@@ -37,7 +37,7 @@
  #include "base/observer_list.h"
  #include "build/build_config.h"
  #include "chrome/browser/bookmarks/bookmark_model_factory.h"
-@@ -71,10 +72,12 @@ bool BookmarkTabHelper::ShouldShowBookma
+@@ -68,10 +69,12 @@ bool BookmarkTabHelper::ShouldShowBookma
        !prefs->GetBoolean(bookmarks::prefs::kShowBookmarkBar))
      return false;
  

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

@@ -1,6 +1,6 @@
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -300,6 +300,16 @@
+@@ -305,6 +305,16 @@ const FeatureEntry::Choice kBookmarkBarN
       "never"},
  };
  
@@ -17,7 +17,7 @@
  const FeatureEntry::Choice kTouchEventFeatureDetectionChoices[] = {
      {flags_ui::kGenericExperimentChoiceDisabled, "", ""},
      {flags_ui::kGenericExperimentChoiceEnabled,
-@@ -2021,6 +2031,10 @@
+@@ -2024,6 +2034,10 @@ const FeatureEntry kFeatureEntries[] = {
       "Force punycode hostnames",
       "Force punycode in hostnames instead of Unicode when displaying Internationalized Domain Names (IDNs).",
       kOsAll, SINGLE_VALUE_TYPE("force-punycode-hostnames")},
@@ -38,11 +38,11 @@
  #include "base/feature_list.h"
  #include "base/format_macros.h"
  #include "base/metrics/histogram.h"
-@@ -225,11 +226,27 @@
+@@ -226,11 +227,27 @@ AutocompleteController::AutocompleteCont
        first_query_(true),
        search_service_worker_signal_sent_(false),
        template_url_service_(provider_client_->GetTemplateURLService()) {
-+  const std::string flag_value = 
++  const std::string flag_value =
 +    base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII("omnibox-autocomplete-filtering");
    provider_types &= ~OmniboxFieldTrial::GetDisabledProviderTypes();
 -  if (provider_types & AutocompleteProvider::TYPE_BOOKMARK)
@@ -67,6 +67,20 @@
    if (provider_types & AutocompleteProvider::TYPE_HISTORY_QUICK)
      providers_.push_back(new HistoryQuickProvider(provider_client_.get()));
    if (provider_types & AutocompleteProvider::TYPE_KEYWORD) {
+--- a/components/omnibox/browser/history_url_provider.cc
++++ b/components/omnibox/browser/history_url_provider.cc
+@@ -548,6 +548,11 @@ void HistoryURLProvider::Start(const Aut
+   if (fixed_up_input.type() != metrics::OmniboxInputType::QUERY)
+     matches_.push_back(what_you_typed_match);
+ 
++  const std::string flag_value =
++    base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII("omnibox-autocomplete-filtering");
++  if (flag_value == "search-suggestions-only" || flag_value == "search-suggestions-and-bookmarks")
++    return;
++
+   // We'll need the history service to run both passes, so try to obtain it.
+   history::HistoryService* const history_service =
+       client()->GetHistoryService();
 --- a/components/omnibox/browser/search_provider.cc
 +++ b/components/omnibox/browser/search_provider.cc
 @@ -12,6 +12,7 @@
@@ -77,11 +91,11 @@
  #include "base/feature_list.h"
  #include "base/i18n/break_iterator.h"
  #include "base/i18n/case_conversion.h"
-@@ -645,6 +646,11 @@
+@@ -645,6 +646,11 @@ void SearchProvider::Run(bool query_is_p
  }
  
  void SearchProvider::DoHistoryQuery(bool minimal_changes) {
-+  const std::string flag_value = 
++  const std::string flag_value =
 +    base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII("omnibox-autocomplete-filtering");
 +  if (flag_value == "search-suggestions-only" || flag_value == "search-suggestions-and-bookmarks")
 +    return;
@@ -89,17 +103,3 @@
    // The history query results are synchronous, so if minimal_changes is true,
    // we still have the last results and don't need to do anything.
    if (minimal_changes)
---- a/components/omnibox/browser/history_url_provider.cc
-+++ b/components/omnibox/browser/history_url_provider.cc
-@@ -548,6 +548,11 @@
-   if (fixed_up_input.type() != metrics::OmniboxInputType::QUERY)
-     matches_.push_back(what_you_typed_match);
- 
-+  const std::string flag_value = 
-+    base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII("omnibox-autocomplete-filtering");
-+  if (flag_value == "search-suggestions-only" || flag_value == "search-suggestions-and-bookmarks")
-+    return;
-+
-   // We'll need the history service to run both passes, so try to obtain it.
-   history::HistoryService* const history_service =
-       client()->GetHistoryService();

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

@@ -1,6 +1,6 @@
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -287,6 +287,12 @@ const FeatureEntry::Choice kScrollEventC
+@@ -292,6 +292,12 @@ const FeatureEntry::Choice kScrollEventC
       "never"}
  };
  
@@ -13,7 +13,7 @@
  const FeatureEntry::Choice kTouchEventFeatureDetectionChoices[] = {
      {flags_ui::kGenericExperimentChoiceDisabled, "", ""},
      {flags_ui::kGenericExperimentChoiceEnabled,
-@@ -2008,6 +2014,10 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -2011,6 +2017,10 @@ const FeatureEntry kFeatureEntries[] = {
       "Force punycode hostnames",
       "Force punycode in hostnames instead of Unicode when displaying Internationalized Domain Names (IDNs).",
       kOsAll, SINGLE_VALUE_TYPE("force-punycode-hostnames")},
@@ -26,7 +26,7 @@
       SINGLE_VALUE_TYPE(switches::kIgnoreGpuBlacklist)},
 --- a/chrome/browser/chrome_content_browser_client.cc
 +++ b/chrome/browser/chrome_content_browser_client.cc
-@@ -5598,7 +5598,7 @@ bool ChromeContentBrowserClient::ShouldA
+@@ -5696,7 +5696,7 @@ bool ChromeContentBrowserClient::ShouldA
      const url::Origin& embedder_origin,
      const content::PepperPluginInfo& plugin_info) {
  #if BUILDFLAG(ENABLE_PDF)
@@ -37,7 +37,7 @@
      if (embedder_origin.scheme() == extensions::kExtensionScheme &&
 --- a/chrome/browser/pdf/pdf_extension_util.cc
 +++ b/chrome/browser/pdf/pdf_extension_util.cc
-@@ -25,7 +25,7 @@ std::string GetManifest() {
+@@ -131,7 +131,7 @@ std::string GetManifest() {
    DCHECK(manifest_contents.find(kNameTag) != std::string::npos);
    base::ReplaceFirstSubstringAfterOffset(
        &manifest_contents, 0, kNameTag,
@@ -283,10 +283,10 @@
      ],
 --- a/chrome/common/BUILD.gn
 +++ b/chrome/common/BUILD.gn
-@@ -267,6 +267,7 @@ static_library("common") {
-     "//components/google/core/common",
-     "//components/metrics:call_stack_profile_builder",
+@@ -265,6 +265,7 @@ static_library("common") {
      "//components/page_load_metrics/common:common",
+     "//components/prerender/common",
+     "//components/prerender/common:mojo_bindings",
 +    "//components/ungoogled:switches",
    ]
  
@@ -391,7 +391,7 @@
      FILE_PATH_LITERAL("internal-pdf-viewer");
 --- a/chrome/renderer/chrome_content_renderer_client.cc
 +++ b/chrome/renderer/chrome_content_renderer_client.cc
-@@ -928,7 +928,7 @@ WebPlugin* ChromeContentRendererClient::
+@@ -939,7 +939,7 @@ WebPlugin* ChromeContentRendererClient::
              }
            }
          } else if (info.name ==
@@ -400,7 +400,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.
-@@ -982,7 +982,7 @@ WebPlugin* ChromeContentRendererClient::
+@@ -993,7 +993,7 @@ WebPlugin* ChromeContentRendererClient::
          PluginUMAReporter::GetInstance()->ReportPluginDisabled(orig_mime_type,
                                                                 url);
          if (info.name ==

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

@@ -2,7 +2,7 @@
 
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -1977,6 +1977,10 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -1980,6 +1980,10 @@ const FeatureEntry kFeatureEntries[] = {
       "Enable stacking in tab strip",
       "Forces tabs to be stacked in the tab strip. Otherwise, they follow default behavior.",
       kOsAll, SINGLE_VALUE_TYPE("enable-stacked-tab-strip")},
@@ -19,15 +19,15 @@
    if (!render_frame->IsMainFrame())
      return;
  
--#if BUILDFLAG(SAFE_BROWSING_CSD)
+-#if BUILDFLAG(FULL_SAFE_BROWSING)
    const base::CommandLine& command_line =
        *base::CommandLine::ForCurrentProcess();
 +  should_autocollect_ = !command_line.HasSwitch("disable-search-engine-collection");
-+#if BUILDFLAG(SAFE_BROWSING_CSD)
++#if BUILDFLAG(FULL_SAFE_BROWSING)
    if (!command_line.HasSwitch(switches::kDisableClientSidePhishingDetection))
-     SetClientSidePhishingDetection(true);
+     SetClientSidePhishingDetection();
  #endif
-@@ -369,14 +370,16 @@ void ChromeRenderFrameObserver::DidFinis
+@@ -214,14 +215,16 @@ void ChromeRenderFrameObserver::DidFinis
    if (frame->Parent())
      return;
  
@@ -54,21 +54,14 @@
  
 --- a/chrome/renderer/chrome_render_frame_observer.h
 +++ b/chrome/renderer/chrome_render_frame_observer.h
-@@ -133,6 +133,7 @@ class ChromeRenderFrameObserver : public
- #if BUILDFLAG(SAFE_BROWSING_CSD)
+@@ -134,6 +134,7 @@ class ChromeRenderFrameObserver : public
+ #if BUILDFLAG(FULL_SAFE_BROWSING)
    safe_browsing::PhishingClassifierDelegate* phishing_classifier_ = nullptr;
  #endif
 +  bool should_autocollect_; // Whether to autocollect search engines
  
    // Owned by ChromeContentRendererClient and outlive us.
    web_cache::WebCacheImpl* web_cache_impl_;
-@@ -150,4 +151,4 @@ class ChromeRenderFrameObserver : public
-   DISALLOW_COPY_AND_ASSIGN(ChromeRenderFrameObserver);
- };
- 
--#endif  // CHROME_RENDERER_CHROME_RENDER_FRAME_OBSERVER_H_
-\ No newline at end of file
-+#endif  // CHROME_RENDERER_CHROME_RENDER_FRAME_OBSERVER_H_
 --- a/components/search_engines/template_url_service.cc
 +++ b/components/search_engines/template_url_service.cc
 @@ -9,6 +9,7 @@
@@ -100,7 +93,7 @@
        search_terms_data_(std::move(search_terms_data)),
        web_data_service_(web_data_service),
        client_(std::move(client)),
-@@ -348,7 +356,7 @@ bool TemplateURLService::CanAddAutogener
+@@ -350,7 +358,7 @@ bool TemplateURLService::CanAddAutogener
    if (existing_url) {
      // We already have a TemplateURL for this keyword. Only allow it to be
      // replaced if the TemplateURL can be replaced.
@@ -109,7 +102,7 @@
    }
  
    // We don't have a TemplateURL with keyword.  We still may not allow this
-@@ -357,8 +365,8 @@ bool TemplateURLService::CanAddAutogener
+@@ -359,8 +367,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.
@@ -120,7 +113,7 @@
  }
  
  bool TemplateURLService::IsPrepopulatedOrCreatedByPolicy(
-@@ -1392,6 +1400,8 @@ SyncDataMap TemplateURLService::CreateGU
+@@ -1394,6 +1402,8 @@ SyncDataMap TemplateURLService::CreateGU
  
  void TemplateURLService::Init(const Initializer* initializers,
                                int num_initializers) {
@@ -129,7 +122,7 @@
    if (client_)
      client_->SetOwner(this);
  
-@@ -1613,6 +1623,9 @@ void TemplateURLService::ChangeToLoadedS
+@@ -1615,6 +1625,9 @@ void TemplateURLService::ChangeToLoadedS
  
  bool TemplateURLService::CanAddAutogeneratedKeywordForHost(
      const std::string& host) const {
@@ -139,7 +132,7 @@
    const TemplateURLSet* urls = provider_map_->GetURLsForHost(host);
    if (!urls)
      return true;
-@@ -1623,7 +1636,8 @@ bool TemplateURLService::CanAddAutogener
+@@ -1625,7 +1638,8 @@ bool TemplateURLService::CanAddAutogener
  }
  
  bool TemplateURLService::CanReplace(const TemplateURL* t_url) const {

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

@@ -3,7 +3,7 @@
 
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -254,6 +254,16 @@ const unsigned kOsDesktop = kOsMac | kOs
+@@ -259,6 +259,16 @@ const unsigned kOsDesktop = kOsMac | kOs
  const unsigned kOsAura = kOsWin | kOsLinux | kOsCrOS;
  #endif  // USE_AURA || OS_ANDROID
  
@@ -20,7 +20,7 @@
  const FeatureEntry::Choice kTouchEventFeatureDetectionChoices[] = {
      {flags_ui::kGenericExperimentChoiceDisabled, "", ""},
      {flags_ui::kGenericExperimentChoiceEnabled,
-@@ -1959,6 +1969,10 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -1962,6 +1972,10 @@ const FeatureEntry kFeatureEntries[] = {
  // Include generated flags for flag unexpiry; see //docs/flag_expiry.md and
  // //tools/flags/generate_unexpire_flags.py.
  #include "chrome/browser/unexpire_flags_gen.inc"
@@ -80,7 +80,7 @@
  bool IsExtensionDownload(const download::DownloadItem& download_item);
 --- a/chrome/browser/download/download_target_determiner.cc
 +++ b/chrome/browser/download/download_target_determiner.cc
-@@ -935,10 +935,12 @@ DownloadConfirmationReason DownloadTarge
+@@ -939,10 +939,12 @@ DownloadConfirmationReason DownloadTarge
      return DownloadConfirmationReason::SAVE_AS;
  
  #if BUILDFLAG(ENABLE_EXTENSIONS)

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

@@ -2,7 +2,7 @@
 
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -1981,6 +1981,10 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -1984,6 +1984,10 @@ const FeatureEntry kFeatureEntries[] = {
       "Disable search engine collection",
       "Prevents search engines from being added automatically.",
       kOsAll, SINGLE_VALUE_TYPE("disable-search-engine-collection")},
@@ -23,7 +23,7 @@
  #include "base/lazy_instance.h"
  #include "base/numerics/safe_conversions.h"
  #include "base/stl_util.h"
-@@ -267,6 +268,13 @@ IDNConversionResult IDNToUnicodeWithAdju
+@@ -277,6 +278,13 @@ IDNConversionResult IDNToUnicodeWithAdju
    host16.reserve(host.length());
    host16.insert(host16.end(), host.begin(), host.end());
  

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

@@ -1,6 +1,6 @@
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -277,6 +277,16 @@ const FeatureEntry::Choice kShowAvatarBu
+@@ -282,6 +282,16 @@ const FeatureEntry::Choice kShowAvatarBu
       "never"}
  };
  
@@ -17,7 +17,7 @@
  const FeatureEntry::Choice kTouchEventFeatureDetectionChoices[] = {
      {flags_ui::kGenericExperimentChoiceDisabled, "", ""},
      {flags_ui::kGenericExperimentChoiceEnabled,
-@@ -4213,6 +4223,11 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -4270,6 +4280,11 @@ const FeatureEntry kFeatureEntries[] = {
       FEATURE_VALUE_TYPE(
           autofill::features::kAutofillEnableAccountWalletStorage)},
  
@@ -39,7 +39,7 @@
  #include "base/metrics/user_metrics.h"
  #include "base/task/post_task.h"
  #include "base/task/thread_pool.h"
-@@ -99,6 +100,18 @@ int GetDropEffect(const ui::DropTargetEv
+@@ -100,6 +101,18 @@ int GetDropEffect(const ui::DropTargetEv
    return ui::DragDropTypes::DRAG_MOVE;
  }
  
@@ -58,7 +58,7 @@
  }  // namespace
  
  BrowserRootView::DropInfo::DropInfo() = default;
-@@ -113,7 +126,9 @@ const char BrowserRootView::kViewClassNa
+@@ -114,7 +127,9 @@ const char BrowserRootView::kViewClassNa
  
  BrowserRootView::BrowserRootView(BrowserView* browser_view,
                                   views::Widget* widget)
@@ -69,7 +69,7 @@
  
  BrowserRootView::~BrowserRootView() {
    // It's possible to destroy the browser while a drop is active.  In this case,
-@@ -258,7 +273,7 @@ const char* BrowserRootView::GetClassNam
+@@ -259,7 +274,7 @@ const char* BrowserRootView::GetClassNam
  }
  
  bool BrowserRootView::OnMouseWheel(const ui::MouseWheelEvent& event) {

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

@@ -1,6 +1,6 @@
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -264,6 +264,19 @@ const FeatureEntry::Choice kExtensionHan
+@@ -269,6 +269,19 @@ const FeatureEntry::Choice kExtensionHan
       "always-prompt-for-install"},
  };
  
@@ -20,7 +20,7 @@
  const FeatureEntry::Choice kTouchEventFeatureDetectionChoices[] = {
      {flags_ui::kGenericExperimentChoiceDisabled, "", ""},
      {flags_ui::kGenericExperimentChoiceEnabled,
-@@ -4331,6 +4344,11 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -4383,6 +4396,11 @@ const FeatureEntry kFeatureEntries[] = {
       FEATURE_VALUE_TYPE(arc::kEnableUnifiedAudioFocusFeature)},
  #endif  // defined(OS_CHROMEOS)
  

+ 2 - 2
patches/extra/ungoogled-chromium/add-flag-to-stack-tabs.patch

@@ -2,7 +2,7 @@
 
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -1959,6 +1959,10 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -1962,6 +1962,10 @@ const FeatureEntry kFeatureEntries[] = {
  // Include generated flags for flag unexpiry; see //docs/flag_expiry.md and
  // //tools/flags/generate_unexpire_flags.py.
  #include "chrome/browser/unexpire_flags_gen.inc"
@@ -15,7 +15,7 @@
       SINGLE_VALUE_TYPE(switches::kIgnoreGpuBlacklist)},
 --- a/chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc
 +++ b/chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc
-@@ -76,14 +76,13 @@ using content::WebContents;
+@@ -77,14 +77,13 @@ using content::WebContents;
  namespace {
  
  bool DetermineTabStripLayoutStacked(PrefService* prefs, bool* adjust_layout) {

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

@@ -11,7 +11,7 @@
  #include "base/compiler_specific.h"
  #include "base/containers/flat_set.h"
  #include "base/containers/linked_list.h"
-@@ -130,11 +131,6 @@ const unsigned kMinimumTTLSeconds = kCac
+@@ -131,11 +132,6 @@ const unsigned kMinimumTTLSeconds = kCac
  // cached.
  const int kIPv6ProbePeriodMs = 1000;
  
@@ -23,7 +23,7 @@
  enum DnsResolveStatus {
    RESOLVE_STATUS_DNS_SUCCESS = 0,
    RESOLVE_STATUS_PROC_SUCCESS,
-@@ -3586,7 +3582,7 @@ bool HostResolverManager::IsIPv6Reachabl
+@@ -3584,7 +3580,7 @@ bool HostResolverManager::IsIPv6Reachabl
        (tick_clock_->NowTicks() - last_ipv6_probe_time_).InMilliseconds() >
            kIPv6ProbePeriodMs) {
      SetLastIPv6ProbeResult(

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

@@ -417,7 +417,7 @@
  
 --- a/components/search_engines/template_url_service.cc
 +++ b/components/search_engines/template_url_service.cc
-@@ -607,7 +607,8 @@ void TemplateURLService::IncrementUsageC
+@@ -609,7 +609,8 @@ void TemplateURLService::IncrementUsageC
  void TemplateURLService::ResetTemplateURL(TemplateURL* url,
                                            const base::string16& title,
                                            const base::string16& keyword,
@@ -427,7 +427,7 @@
    DCHECK(!IsCreatedByExtension(url));
    DCHECK(!keyword.empty());
    DCHECK(!search_url.empty());
-@@ -621,6 +622,7 @@ void TemplateURLService::ResetTemplateUR
+@@ -623,6 +624,7 @@ void TemplateURLService::ResetTemplateUR
    }
    data.safe_for_autoreplace = false;
    data.last_modified = clock_->Now();
@@ -435,7 +435,7 @@
    Update(url, TemplateURL(data));
  }
  
-@@ -1974,7 +1976,7 @@ TemplateURL* TemplateURLService::Add(std
+@@ -1976,7 +1978,7 @@ TemplateURL* TemplateURLService::Add(std
          // Neither engine can be replaced. Uniquify the existing keyword.
          base::string16 new_keyword = UniquifyKeyword(*existing_turl, false);
          ResetTemplateURL(existing_turl, existing_turl->short_name(),

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

@@ -3,7 +3,7 @@
 
 --- a/chrome/browser/media/router/discovery/dial/dial_registry.cc
 +++ b/chrome/browser/media/router/discovery/dial/dial_registry.cc
-@@ -196,10 +196,6 @@
+@@ -192,10 +192,6 @@ void DialRegistry::StartPeriodicDiscover
  
    dial_ = CreateDialService();
    dial_->AddObserver(this);

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

@@ -175,7 +175,7 @@
  }  // namespace download
 --- a/content/browser/BUILD.gn
 +++ b/content/browser/BUILD.gn
-@@ -56,7 +56,6 @@ jumbo_source_set("browser") {
+@@ -57,7 +57,6 @@ jumbo_source_set("browser") {
      "//components/discardable_memory/service",
      "//components/download/database",
      "//components/download/public/common:public",

+ 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
-@@ -462,14 +462,14 @@ bool IDNToUnicodeOneComponent(const base
+@@ -479,14 +479,14 @@ ComponentResult IDNToUnicodeOneComponent
  }  // namespace
  
  const FormatUrlType kFormatUrlOmitNothing = 0;

+ 1 - 1
patches/extra/ungoogled-chromium/disable-webgl-renderer-info.patch

@@ -3,7 +3,7 @@
 
 --- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc
 +++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc
-@@ -3374,16 +3374,14 @@ ScriptValue WebGLRenderingContextBase::g
+@@ -3456,16 +3456,14 @@ ScriptValue WebGLRenderingContextBase::g
        return ScriptValue::CreateNull(script_state->GetIsolate());
      case WebGLDebugRendererInfo::kUnmaskedRendererWebgl:
        if (ExtensionEnabled(kWebGLDebugRendererInfoName))

+ 1 - 1
patches/extra/ungoogled-chromium/enable-default-prefetch-privacy-changes.patch

@@ -2,7 +2,7 @@
 
 --- a/third_party/blink/common/features.cc
 +++ b/third_party/blink/common/features.cc
-@@ -242,7 +242,7 @@ const base::Feature kWebComponentsV0Enab
+@@ -283,7 +283,7 @@ const base::Feature kFontAccess{"FontAcc
  // Prefetch request properties are updated to be privacy-preserving. See
  // crbug.com/988956.
  const base::Feature kPrefetchPrivacyChanges{"PrefetchPrivacyChanges",

+ 1 - 1
patches/extra/ungoogled-chromium/enable-default-reduced-referrer-granularity.patch

@@ -2,7 +2,7 @@
 
 --- a/content/public/common/content_features.cc
 +++ b/content/public/common/content_features.cc
-@@ -464,7 +464,7 @@ const base::Feature kProactivelySwapBrow
+@@ -456,7 +456,7 @@ const base::Feature kProactivelySwapBrow
  // Reduce the amount of information in the default 'referer' header for
  // cross-origin requests.
  const base::Feature kReducedReferrerGranularity{

+ 1 - 1
patches/extra/ungoogled-chromium/enable-menu-on-reload-button.patch

@@ -2,7 +2,7 @@
 
 --- a/chrome/browser/ui/views/toolbar/reload_button.h
 +++ b/chrome/browser/ui/views/toolbar/reload_button.h
-@@ -42,7 +42,7 @@ class ReloadButton : public ToolbarButton,
+@@ -42,7 +42,7 @@ class ReloadButton : public ToolbarButto
    void ChangeMode(Mode mode, bool force);
  
    // Enable reload drop-down menu.

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

@@ -2,20 +2,19 @@
 
 --- a/chrome/browser/ui/browser_commands.cc
 +++ b/chrome/browser/ui/browser_commands.cc
-@@ -390,12 +390,6 @@ int GetContentRestrictions(const Browser
+@@ -389,11 +389,6 @@ int GetContentRestrictions(const Browser
      CoreTabHelper* core_tab_helper =
          CoreTabHelper::FromWebContents(current_tab);
      content_restrictions = core_tab_helper->content_restrictions();
 -    NavigationEntry* last_committed_entry =
 -        current_tab->GetController().GetLastCommittedEntry();
 -    if (!content::IsSavableURL(
--            last_committed_entry ? last_committed_entry->GetURL() : GURL()) ||
--        current_tab->ShowingInterstitialPage())
+-            last_committed_entry ? last_committed_entry->GetURL() : GURL()))
 -      content_restrictions |= CONTENT_RESTRICTION_SAVE;
-     if (current_tab->ShowingInterstitialPage())
-       content_restrictions |= CONTENT_RESTRICTION_PRINT;
    }
-@@ -1139,8 +1133,7 @@ bool CanSavePage(const Browser* browser)
+   return content_restrictions;
+ }
+@@ -1138,8 +1133,7 @@ bool CanSavePage(const Browser* browser)
            prefs::kAllowFileSelectionDialogs)) {
      return false;
    }

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

@@ -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
-@@ -3370,15 +3370,12 @@ void TabStrip::ButtonPressed(views::Butt
+@@ -3515,15 +3515,12 @@ void TabStrip::ButtonPressed(views::Butt
  
        const ui::MouseEvent& mouse = static_cast<const ui::MouseEvent&>(event);
        if (mouse.IsOnlyMiddleMouseButton()) {

+ 1 - 14
patches/extra/ungoogled-chromium/fix-building-without-mdns-and-service-discovery.patch

@@ -2,7 +2,7 @@
 
 --- a/chrome/browser/media/router/discovery/mdns/dns_sd_device_lister.cc
 +++ b/chrome/browser/media/router/discovery/mdns/dns_sd_device_lister.cc
-@@ -44,50 +44,22 @@ DnsSdDeviceLister::DnsSdDeviceLister(
+@@ -40,37 +40,22 @@ DnsSdDeviceLister::DnsSdDeviceLister(
  DnsSdDeviceLister::~DnsSdDeviceLister() {}
  
  void DnsSdDeviceLister::Discover() {
@@ -11,12 +11,8 @@
 -    device_lister_ = local_discovery::ServiceDiscoveryDeviceLister::Create(
 -        this, service_discovery_client_, service_type_);
 -    device_lister_->Start();
--    VLOG(1) << "Started device lister for service type "
--            << device_lister_->service_type();
 -  }
 -  device_lister_->DiscoverNewDevices();
--  VLOG(1) << "Discovery new devices for service type "
--          << device_lister_->service_type();
 -#endif
  }
  
@@ -30,24 +26,15 @@
      const ServiceDescription& service_description) {
 -  DnsSdService service;
 -  FillServiceInfo(service_description, &service);
--  VLOG(1) << "OnDeviceChanged: "
--          << "service_name: " << service.service_name << ", "
--          << "added: " << added << ", "
--          << "service_type: " << device_lister_->service_type();
 -  delegate_->ServiceChanged(device_lister_->service_type(), added, service);
  }
  
  void DnsSdDeviceLister::OnDeviceRemoved(const std::string& service_type,
                                          const std::string& service_name) {
--  VLOG(1) << "OnDeviceRemoved: "
--          << "service_name: " << service_name << ", "
--          << "service_type: " << service_type;
 -  delegate_->ServiceRemoved(service_type, service_name);
  }
  
  void DnsSdDeviceLister::OnDeviceCacheFlushed(const std::string& service_type) {
--  VLOG(1) << "OnDeviceCacheFlushed: "
--          << "service_type: " << device_lister_->service_type();
 -  delegate_->ServicesFlushed(device_lister_->service_type());
 -  device_lister_->DiscoverNewDevices();
  }

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

@@ -2,7 +2,7 @@
 
 --- a/content/renderer/render_view_impl.cc
 +++ b/content/renderer/render_view_impl.cc
-@@ -255,7 +255,7 @@ WindowOpenDisposition RenderViewImpl::Na
+@@ -253,7 +253,7 @@ WindowOpenDisposition RenderViewImpl::Na
      case blink::kWebNavigationPolicyNewWindow:
        return WindowOpenDisposition::NEW_WINDOW;
      case blink::kWebNavigationPolicyNewPopup:

+ 107 - 18
pruning.list

@@ -1,6 +1,5 @@
 android_webview/test/shell/assets/star.svgz
 android_webview/test/shell/assets/video.webm
-android_webview/tools/webview_log_verbosifier/gradle/wrapper/gradle-wrapper.jar
 ash/display/test_data/06af5c10.icc
 ash/display/test_data/0dae3211.icc
 ash/display/test_data/4c834a42.icc
@@ -55,13 +54,6 @@ chrome/browser/resources/chromeos/accessibility/chromevox/background/earcons/ski
 chrome/browser/resources/chromeos/accessibility/chromevox/background/earcons/wrap.ogg
 chrome/browser/resources/chromeos/accessibility/chromevox/background/earcons/wrap_edge.ogg
 chrome/browser/resources/chromeos/accessibility/select_to_speak/earcons/null_selection.ogg
-chrome/browser/resources/chromeos/camera/src/js/lib/ffmpeg.wasm
-chrome/browser/resources/chromeos/camera/src/sounds/record_end.ogg
-chrome/browser/resources/chromeos/camera/src/sounds/record_start.ogg
-chrome/browser/resources/chromeos/camera/src/sounds/shutter.ogg
-chrome/browser/resources/chromeos/camera/src/sounds/tick_final.ogg
-chrome/browser/resources/chromeos/camera/src/sounds/tick_inc.ogg
-chrome/browser/resources/chromeos/camera/src/sounds/tick_start.ogg
 chrome/browser/resources/chromeos/zip_archiver/test/data/encrypted.zip
 chrome/browser/resources/chromeos/zip_archiver/test/data/encrypted_aes.zip
 chrome/browser/resources/chromeos/zip_archiver/test/data/small_zip.zip
@@ -84,6 +76,14 @@ chrome/installer/linux/debian/repo_signing_keys.gpg
 chrome/installer/test/data/SETUP.EX_
 chrome/services/cups_proxy/test/data/basic_handshake.bin
 chrome/updater/test/data/signed.exe.gz
+chromeos/components/camera_app_ui/resources/src/js/lib/ffmpeg.wasm
+chromeos/components/camera_app_ui/resources/src/sounds/record_end.ogg
+chromeos/components/camera_app_ui/resources/src/sounds/record_pause.ogg
+chromeos/components/camera_app_ui/resources/src/sounds/record_start.ogg
+chromeos/components/camera_app_ui/resources/src/sounds/shutter.ogg
+chromeos/components/camera_app_ui/resources/src/sounds/tick_final.ogg
+chromeos/components/camera_app_ui/resources/src/sounds/tick_inc.ogg
+chromeos/components/camera_app_ui/resources/src/sounds/tick_start.ogg
 chromeos/test/data/smart_dim/20181115_example_preprocessor_config.pb
 cloud_print/virtual_driver/win/install/inf/gcp_driver.inf
 components/cast_channel/fuzz_corpus/cast_message0
@@ -253,6 +253,7 @@ device/fido/response_data_fuzzer_corpus/sign1
 fuchsia/engine/test/data/bear-44.1kHz.webm
 fuchsia/engine/test/data/bear-48kHz.webm
 fuchsia/engine/test/data/bear-vp8a.webm
+fuchsia/engine/test/data/bear-vp9-opus.webm
 headless/test/data/protocol/emulation/resources/video.webm
 ios/chrome/test/data/sessions/corrupted.plist
 ios/chrome/test/data/sessions/session_m57.plist
@@ -1188,6 +1189,7 @@ net/data/ssl/certificates/unittest.key.bin
 net/data/ssl/certificates/unittest.selfsigned.der
 net/data/ssl/certificates/verisign_class3_g5_crosssigned-trusted.keychain
 net/data/ssl/certificates/websocket_client_cert.p12
+net/data/url_request_unittest/BullRunSpeech.txt.deflate
 net/data/url_request_unittest/gzip-encoded
 net/third_party/nist-pkits/certs/AllCertificatesNoPoliciesTest2EE.crt
 net/third_party/nist-pkits/certs/AllCertificatesSamePoliciesTest10EE.crt
@@ -5127,6 +5129,7 @@ third_party/blink/renderer/bindings/core/v8/serialization/fuzz_corpus/v8-f76c572
 third_party/blink/renderer/bindings/core/v8/serialization/fuzz_corpus/v8-fa63a87d-x86
 third_party/blink/renderer/bindings/core/v8/serialization/fuzz_corpus/v8-fff15497-x86
 third_party/blink/renderer/core/testing/data/test.webm
+third_party/blink/renderer/platform/testing/data/red-full-ranged-8bpc.avif
 third_party/blink/renderer/platform/text_codec_fuzzer_seed_corpus/0091b89571c844a754df4bdd133ad4d5b628e51d
 third_party/blink/renderer/platform/text_codec_fuzzer_seed_corpus/017fd5359998719d5fa3b3df5fc7b72fdb163936
 third_party/blink/renderer/platform/text_codec_fuzzer_seed_corpus/031ccb60903b3cd5780b6d3743051e216068b7cc
@@ -9760,6 +9763,7 @@ third_party/devtools-frontend/src/test/e2e/resources/sources/wasm/add.wasm
 third_party/devtools-frontend/src/test/e2e/resources/sources/wasm/callstack-wasm-to-js.wasm
 third_party/devtools-frontend/src/test/e2e/resources/sources/wasm/global_variable.wasm
 third_party/devtools-frontend/src/test/e2e/resources/sources/wasm/global_variable_with_dwarf.wasm
+third_party/devtools-frontend/src/test/e2e/resources/sources/wasm/scopes.wasm
 third_party/devtools-frontend/src/test/e2e/resources/sources/wasm/unreachable.wasm
 third_party/devtools-frontend/src/test/e2e/resources/sources/wasm/unreachable_with_dwarf.wasm
 third_party/devtools-frontend/src/test/e2e/resources/sources/wasm/wasm-with-sourcemap.wasm
@@ -9791,6 +9795,7 @@ third_party/glslang/src/Test/remap.invalid-spirv-1.spv
 third_party/glslang/src/Test/remap.invalid-spirv-2.spv
 third_party/glslang/src/Test/remap.literal64.everything.spv
 third_party/glslang/src/Test/remap.literal64.none.spv
+third_party/google-closure-library/scripts/ci/CloseAdobeDialog.exe
 third_party/gradle_wrapper/gradle/wrapper/gradle-wrapper.jar
 third_party/grpc/src/examples/android/helloworld/gradle/wrapper/gradle-wrapper.jar
 third_party/grpc/src/src/android/test/interop/gradle/wrapper/gradle-wrapper.jar
@@ -14955,6 +14960,16 @@ third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.drop-h
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.drop-hints.4E08,4E09.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.drop-hints.4E08.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.drop-hints.retain-all-codepoint.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.gids.4E00,4E02,4E03.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.gids.4E00,4E03.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.gids.4E00,4E05,4E07.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.gids.4E02,4E03,4E08.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.gids.4E02.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.gids.4E03.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.gids.4E05,4E07,4E08,4E09.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.gids.4E08,4E09.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.gids.4E08.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.gids.retain-all-codepoint.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.name-ids.4E00,4E02,4E03.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.name-ids.4E00,4E03.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font1.name-ids.4E00,4E05,4E07.otf
@@ -15005,6 +15020,16 @@ third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.drop-h
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.drop-hints.4E08,4E09.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.drop-hints.4E08.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.drop-hints.retain-all-codepoint.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.gids.4E00,4E02,4E03.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.gids.4E00,4E03.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.gids.4E00,4E05,4E07.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.gids.4E02,4E03,4E08.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.gids.4E02.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.gids.4E03.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.gids.4E05,4E07,4E08,4E09.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.gids.4E08,4E09.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.gids.4E08.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.gids.retain-all-codepoint.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.name-ids.4E00,4E02,4E03.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.name-ids.4E00,4E03.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.name-ids.4E00,4E05,4E07.otf
@@ -15025,6 +15050,54 @@ third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.retain
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.retain-gids.4E08,4E09.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.retain-gids.4E08.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/cmap14/cmap14_font2.retain-gids.retain-all-codepoint.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context1_multiple_subrules_f1.keep-layout-retain-gids.41,42,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context1_multiple_subrules_f1.keep-layout-retain-gids.41,42.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context1_multiple_subrules_f1.keep-layout-retain-gids.41,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context1_multiple_subrules_f1.keep-layout-retain-gids.41.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context1_multiple_subrules_f1.keep-layout-retain-gids.retain-all-codepoint.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context1_multiple_subrules_f1.keep-layout.41,42,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context1_multiple_subrules_f1.keep-layout.41,42.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context1_multiple_subrules_f1.keep-layout.41,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context1_multiple_subrules_f1.keep-layout.41.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context1_multiple_subrules_f1.keep-layout.retain-all-codepoint.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context2_multiple_subrules_f1.keep-layout-retain-gids.41,42,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context2_multiple_subrules_f1.keep-layout-retain-gids.41,42.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context2_multiple_subrules_f1.keep-layout-retain-gids.41,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context2_multiple_subrules_f1.keep-layout-retain-gids.41.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context2_multiple_subrules_f1.keep-layout-retain-gids.retain-all-codepoint.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context2_multiple_subrules_f1.keep-layout.41,42,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context2_multiple_subrules_f1.keep-layout.41,42.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context2_multiple_subrules_f1.keep-layout.41,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context2_multiple_subrules_f1.keep-layout.41.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context2_multiple_subrules_f1.keep-layout.retain-all-codepoint.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context3_simple_f1.keep-layout-retain-gids.41,42,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context3_simple_f1.keep-layout-retain-gids.41,42.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context3_simple_f1.keep-layout-retain-gids.41,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context3_simple_f1.keep-layout-retain-gids.41.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context3_simple_f1.keep-layout-retain-gids.retain-all-codepoint.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context3_simple_f1.keep-layout.41,42,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context3_simple_f1.keep-layout.41,42.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context3_simple_f1.keep-layout.41,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context3_simple_f1.keep-layout.41.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.context/gpos_context3_simple_f1.keep-layout.retain-all-codepoint.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.default.41,42,43,57.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.default.41,42,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.default.41,42.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.default.41,56,57.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.default.41.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.default.42,57.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.drop-hints.41,42,43,57.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.drop-hints.41,42,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.drop-hints.41,42.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.drop-hints.41,56,57.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.drop-hints.41.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.drop-hints.42,57.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.keep-gdef-gpos.41,42,43,57.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.keep-gdef-gpos.41,42,43.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.keep-gdef-gpos.41,42.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.keep-gdef-gpos.41,56,57.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.keep-gdef-gpos.41.otf
+third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gdef-varstore/AdobeVFPrototype.keep-gdef-gpos.42,57.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gpos/gpos1_2_font.keep-layout-retain-gids.41,43.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gpos/gpos1_2_font.keep-layout-retain-gids.41,46.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gpos/gpos1_2_font.keep-layout-retain-gids.41.otf
@@ -15129,6 +15202,7 @@ third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gsub6/gsub_chaining
 third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gsub6/gsub_chaining3_simple_f2.keep-layout.30,31,32,33.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gsub6/gsub_chaining3_simple_f2.keep-layout.41,42,43.otf
 third_party/harfbuzz-ng/src/test/subset/data/expected/layout.gsub6/gsub_chaining3_simple_f2.keep-layout.retain-all-codepoint.otf
+third_party/harfbuzz-ng/src/test/subset/data/fonts/AdobeVFPrototype.otf
 third_party/harfbuzz-ng/src/test/subset/data/fonts/SourceHanSans-Regular_subset.otf
 third_party/harfbuzz-ng/src/test/subset/data/fonts/SourceSansPro-Regular.otf
 third_party/harfbuzz-ng/src/test/subset/data/fonts/cmap14_font1.otf
@@ -15139,6 +15213,9 @@ third_party/harfbuzz-ng/src/test/subset/data/fonts/gpos2_2_font5.otf
 third_party/harfbuzz-ng/src/test/subset/data/fonts/gpos3_font3.otf
 third_party/harfbuzz-ng/src/test/subset/data/fonts/gpos4_multiple_anchors_1.otf
 third_party/harfbuzz-ng/src/test/subset/data/fonts/gpos6_font1.otf
+third_party/harfbuzz-ng/src/test/subset/data/fonts/gpos_context1_multiple_subrules_f1.otf
+third_party/harfbuzz-ng/src/test/subset/data/fonts/gpos_context2_multiple_subrules_f1.otf
+third_party/harfbuzz-ng/src/test/subset/data/fonts/gpos_context3_simple_f1.otf
 third_party/harfbuzz-ng/src/test/subset/data/fonts/gsub_alternate_substitution.otf
 third_party/harfbuzz-ng/src/test/subset/data/fonts/gsub_chaining1_multiple_subrules_f1.otf
 third_party/harfbuzz-ng/src/test/subset/data/fonts/gsub_chaining2_multiple_subrules_f1.otf
@@ -17232,6 +17309,7 @@ third_party/llvm/clang/test/Misc/Inputs/serialized-diags-stable.dia
 third_party/llvm/clang/test/Modules/modules.idx
 third_party/llvm/clang/test/Profile/Inputs/c-general.profdata.v1
 third_party/llvm/clang/test/Profile/Inputs/c-general.profdata.v3
+third_party/llvm/clang/test/Profile/Inputs/c-general.profdata.v5
 third_party/llvm/clang/test/Profile/Inputs/cxx-hash-v2.profdata.v5
 third_party/llvm/clang/tools/scan-view/share/FileRadar.scpt
 third_party/llvm/flang/test/Evaluate/folding05.f90
@@ -17387,6 +17465,8 @@ third_party/llvm/llvm/test/Bitcode/DIGlobalVariableExpression.ll.bc
 third_party/llvm/llvm/test/Bitcode/DIGlobalVariableExpression2.ll.bc
 third_party/llvm/llvm/test/Bitcode/DILocalVariable-explicit-tags.ll.bc
 third_party/llvm/llvm/test/Bitcode/DILocation-implicit-code.ll.bc
+third_party/llvm/llvm/test/Bitcode/DIModule-clang-module.ll.bc
+third_party/llvm/llvm/test/Bitcode/DIModule-fortran-module.ll.bc
 third_party/llvm/llvm/test/Bitcode/DINamespace.ll.bc
 third_party/llvm/llvm/test/Bitcode/DISubprogram-distinct-definitions.ll.bc
 third_party/llvm/llvm/test/Bitcode/DISubprogram-v4.ll.bc
@@ -17489,6 +17569,7 @@ third_party/llvm/llvm/test/Bitcode/dilocalvariable-3.9.ll.bc
 third_party/llvm/llvm/test/Bitcode/disubrange-v0.ll.bc
 third_party/llvm/llvm/test/Bitcode/dityperefs-3.8.ll.bc
 third_party/llvm/llvm/test/Bitcode/drop-debug-info.3.5.ll.bc
+third_party/llvm/llvm/test/Bitcode/fortranSubrangeBackward.ll.bc
 third_party/llvm/llvm/test/Bitcode/function-local-metadata.3.5.ll.bc
 third_party/llvm/llvm/test/Bitcode/global-variables.3.2.ll.bc
 third_party/llvm/llvm/test/Bitcode/highLevelStructure.3.2.ll.bc
@@ -17560,7 +17641,6 @@ third_party/llvm/llvm/test/DebugInfo/Inputs/dwarfdump-test2.elf-x86-64
 third_party/llvm/llvm/test/DebugInfo/Inputs/dwarfdump-test3.elf-x86-64-space
 third_party/llvm/llvm/test/DebugInfo/Inputs/dwarfdump-test4.elf-x86-64
 third_party/llvm/llvm/test/DebugInfo/Inputs/dwarfdump-type-units.elf-x86-64
-third_party/llvm/llvm/test/DebugInfo/Inputs/dwarfdump.elf-mips64-64-bit-dwarf
 third_party/llvm/llvm/test/DebugInfo/Inputs/fat-test.o
 third_party/llvm/llvm/test/DebugInfo/Inputs/implicit-const-test.o
 third_party/llvm/llvm/test/DebugInfo/Inputs/invalid.elf
@@ -17994,15 +18074,17 @@ third_party/llvm/llvm/test/tools/llvm-cov/Inputs/binary-formats.v2.linux32l
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/binary-formats.v2.linux64l
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/binary-formats.v3.macho64l
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/combine_expansions.covmapping
-third_party/llvm/llvm/test/tools/llvm-cov/Inputs/copy_block_helper.gcda
-third_party/llvm/llvm/test/tools/llvm-cov/Inputs/copy_block_helper.gcno
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/deferred-regions.covmapping
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/deferred-regions.profdata
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/dir-with-filtering.covmapping
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/double_dots.covmapping
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/elf_binary_comdat.profdata
-third_party/llvm/llvm/test/tools/llvm-cov/Inputs/gcov47_compatibility.gcda
-third_party/llvm/llvm/test/tools/llvm-cov/Inputs/gcov47_compatibility.gcno
+third_party/llvm/llvm/test/tools/llvm-cov/Inputs/gcov-4.7.gcda
+third_party/llvm/llvm/test/tools/llvm-cov/Inputs/gcov-4.7.gcno
+third_party/llvm/llvm/test/tools/llvm-cov/Inputs/gcov-8.gcda
+third_party/llvm/llvm/test/tools/llvm-cov/Inputs/gcov-8.gcno
+third_party/llvm/llvm/test/tools/llvm-cov/Inputs/gcov-9.gcda
+third_party/llvm/llvm/test/tools/llvm-cov/Inputs/gcov-9.gcno
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/highlightedRanges.covmapping
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/highlightedRanges.profdata
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/ifdef.covmapping
@@ -18040,8 +18122,6 @@ third_party/llvm/llvm/test/tools/llvm-cov/Inputs/templateInstantiations.covmappi
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/templateInstantiations.profdata
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/test.gcda
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/test.gcno
-third_party/llvm/llvm/test/tools/llvm-cov/Inputs/test_exit_block_arcs.gcda
-third_party/llvm/llvm/test/tools/llvm-cov/Inputs/test_exit_block_arcs.gcno
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/test_file_checksum_fail.gcda
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/test_func_checksum_fail.gcda
 third_party/llvm/llvm/test/tools/llvm-cov/Inputs/test_paths.gcda
@@ -18960,6 +19040,7 @@ third_party/webgl/src/sdk/demos/google/san-angeles/gles/t/SanOGLES-PVRSDK.exe
 third_party/webgl/src/sdk/demos/google/san-angeles/gles/t/libGLES_CM.dll
 third_party/webgl/src/sdk/demos/google/san-angeles/gles/t/source.zip
 third_party/webgl/src/sdk/demos/google/san-angeles/glut/SanOGLES
+third_party/webgl/src/sdk/demos/intel/Test.webm
 third_party/webgl/src/sdk/demos/webkit/resources/webgl-logo.jas
 third_party/webgl/src/sdk/tests/resources/npot-video-1920x1080.mp4
 third_party/webgl/src/sdk/tests/resources/npot-video.mp4
@@ -19208,9 +19289,9 @@ third_party/win_build_output/midl/chrome/credential_provider/gaiacp/x86/gaia_cre
 third_party/win_build_output/midl/chrome/elevation_service/arm64/elevation_service_idl.tlb
 third_party/win_build_output/midl/chrome/elevation_service/x64/elevation_service_idl.tlb
 third_party/win_build_output/midl/chrome/elevation_service/x86/elevation_service_idl.tlb
-third_party/win_build_output/midl/chrome/updater/server/win/arm64/updater_idl.tlb
-third_party/win_build_output/midl/chrome/updater/server/win/x64/updater_idl.tlb
-third_party/win_build_output/midl/chrome/updater/server/win/x86/updater_idl.tlb
+third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_idl.tlb
+third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_idl.tlb
+third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_idl.tlb
 third_party/win_build_output/midl/google_update/arm64/google_update_idl.tlb
 third_party/win_build_output/midl/google_update/x64/google_update_idl.tlb
 third_party/win_build_output/midl/google_update/x86/google_update_idl.tlb
@@ -19220,6 +19301,7 @@ third_party/win_build_output/midl/remoting/host/win/x86/chromoting_lib.tlb
 third_party/win_build_output/midl/third_party/iaccessible2/arm64/ia2_api_all.tlb
 third_party/win_build_output/midl/third_party/iaccessible2/x64/ia2_api_all.tlb
 third_party/win_build_output/midl/third_party/iaccessible2/x86/ia2_api_all.tlb
+third_party/wuffs/src/test/data/animated-red-blue.nia
 third_party/wuffs/src/test/data/artificial/256.bytes
 third_party/wuffs/src/test/data/artificial/256.bytes.gz
 third_party/wuffs/src/test/data/artificial/deflate-backref-crosses-blocks.deflate
@@ -19227,6 +19309,7 @@ third_party/wuffs/src/test/data/artificial/deflate-degenerate-huffman-unused.def
 third_party/wuffs/src/test/data/artificial/deflate-distance-32768.deflate
 third_party/wuffs/src/test/data/artificial/deflate-distance-code-31.deflate
 third_party/wuffs/src/test/data/artificial/deflate-huffman-primlen-9.deflate
+third_party/wuffs/src/test/data/australian-abc-local-stations.tokens
 third_party/wuffs/src/test/data/bricks-color.jpeg
 third_party/wuffs/src/test/data/bricks-color.tiff
 third_party/wuffs/src/test/data/bricks-dither.indexes
@@ -19239,6 +19322,7 @@ third_party/wuffs/src/test/data/bricks-gray.tiff
 third_party/wuffs/src/test/data/bricks-nodither.indexes
 third_party/wuffs/src/test/data/bricks-nodither.indexes.giflzw
 third_party/wuffs/src/test/data/bricks-nodither.palette
+third_party/wuffs/src/test/data/bricks-nodither.wbmp
 third_party/wuffs/src/test/data/crude-flag.nia
 third_party/wuffs/src/test/data/crude-flag.nie
 third_party/wuffs/src/test/data/crude-flag.nii
@@ -19246,14 +19330,19 @@ third_party/wuffs/src/test/data/harvesters.jpeg
 third_party/wuffs/src/test/data/harvesters.tiff
 third_party/wuffs/src/test/data/hat.jpeg
 third_party/wuffs/src/test/data/hat.tiff
+third_party/wuffs/src/test/data/hat.wbmp
 third_party/wuffs/src/test/data/hibiscus.primitive.jpeg
 third_party/wuffs/src/test/data/hibiscus.primitive.tiff
 third_party/wuffs/src/test/data/hibiscus.regular.jpeg
 third_party/wuffs/src/test/data/hibiscus.regular.tiff
 third_party/wuffs/src/test/data/hippopotamus.jpeg
+third_party/wuffs/src/test/data/hippopotamus.nie
 third_party/wuffs/src/test/data/hippopotamus.tiff
+third_party/wuffs/src/test/data/json-quirks.tokens
+third_party/wuffs/src/test/data/json-things.unformatted.tokens
 third_party/wuffs/src/test/data/midsummer.txt.gz
 third_party/wuffs/src/test/data/midsummer.txt.zlib
+third_party/wuffs/src/test/data/muybridge-frame-000.wbmp
 third_party/wuffs/src/test/data/muybridge-frame-001.indexes
 third_party/wuffs/src/test/data/muybridge-frame-002.indexes
 third_party/wuffs/src/test/data/muybridge-frame-003.indexes

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