Browse Source

patches/extra: Update for 77.0.3865.75

xsmile 4 years ago
parent
commit
f03c0be177
36 changed files with 308 additions and 180 deletions
  1. 30 35
      patches/extra/bromite/fingerprinting-flags-client-rects-and-measuretext.patch
  2. 9 9
      patches/extra/bromite/flag-fingerprinting-canvas-image-data-noise.patch
  3. 11 11
      patches/extra/bromite/flag-max-connections-per-host.patch
  4. 1 1
      patches/extra/debian_buster/disable/android.patch
  5. 1 1
      patches/extra/debian_buster/disable/device-notifications.patch
  6. 2 2
      patches/extra/debian_buster/disable/fuzzers.patch
  7. 1 1
      patches/extra/debian_buster/disable/google-api-warning.patch
  8. 1 1
      patches/extra/debian_buster/disable/welcome-page.patch
  9. 0 14
      patches/extra/debian_buster/fixes/inspector.patch
  10. 13 13
      patches/extra/inox-patchset/0006-modify-default-prefs.patch
  11. 5 5
      patches/extra/inox-patchset/0008-restore-classic-ntp.patch
  12. 1 1
      patches/extra/inox-patchset/0018-disable-first-run-behaviour.patch
  13. 5 5
      patches/extra/inox-patchset/0019-disable-battery-status-service.patch
  14. 1 1
      patches/extra/inox-patchset/chromium-widevine.patch
  15. 1 1
      patches/extra/iridium-browser/browser-disable-profile-auto-import-on-first-run.patch
  16. 1 1
      patches/extra/iridium-browser/updater-disable-auto-update.patch
  17. 9 9
      patches/extra/ungoogled-chromium/add-flag-for-search-engine-collection.patch
  18. 5 5
      patches/extra/ungoogled-chromium/add-flag-to-configure-extension-downloading.patch
  19. 1 1
      patches/extra/ungoogled-chromium/add-flag-to-disable-beforeunload.patch
  20. 2 2
      patches/extra/ungoogled-chromium/add-flag-to-force-punycode-hostnames.patch
  21. 1 1
      patches/extra/ungoogled-chromium/add-flag-to-hide-crashed-bubble.patch
  22. 10 10
      patches/extra/ungoogled-chromium/add-flag-to-scroll-tabs.patch
  23. 4 4
      patches/extra/ungoogled-chromium/add-flag-to-show-avatar-button.patch
  24. 1 1
      patches/extra/ungoogled-chromium/add-flag-to-stack-tabs.patch
  25. 2 2
      patches/extra/ungoogled-chromium/add-ipv6-probing-option.patch
  26. 5 5
      patches/extra/ungoogled-chromium/add-suggestions-url-field.patch
  27. 2 2
      patches/extra/ungoogled-chromium/default-to-https-scheme.patch
  28. 169 23
      patches/extra/ungoogled-chromium/disable-download-quarantine.patch
  29. 1 1
      patches/extra/ungoogled-chromium/disable-formatting-in-omnibox.patch
  30. 1 1
      patches/extra/ungoogled-chromium/disable-intranet-redirect-detector.patch
  31. 1 1
      patches/extra/ungoogled-chromium/disable-webgl-renderer-info.patch
  32. 3 3
      patches/extra/ungoogled-chromium/enable-page-saving-on-more-pages.patch
  33. 4 4
      patches/extra/ungoogled-chromium/enable-paste-and-go-new-tab-button.patch
  34. 3 1
      patches/extra/ungoogled-chromium/fix-building-without-mdns-and-service-discovery.patch
  35. 1 1
      patches/extra/ungoogled-chromium/popups-to-tabs.patch
  36. 0 1
      patches/series

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

@@ -9,7 +9,7 @@
 
 
 --- a/chrome/browser/about_flags.cc
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -132,6 +132,7 @@
+@@ -137,6 +137,7 @@
  #include "third_party/blink/public/common/experiments/memory_ablation_experiment.h"
  #include "third_party/blink/public/common/experiments/memory_ablation_experiment.h"
  #include "third_party/blink/public/common/features.h"
  #include "third_party/blink/public/common/features.h"
  #include "third_party/leveldatabase/leveldb_features.h"
  #include "third_party/leveldatabase/leveldb_features.h"
@@ -17,7 +17,7 @@
  #include "ui/accessibility/accessibility_switches.h"
  #include "ui/accessibility/accessibility_switches.h"
  #include "ui/base/ui_base_features.h"
  #include "ui/base/ui_base_features.h"
  #include "ui/base/ui_base_switches.h"
  #include "ui/base/ui_base_switches.h"
-@@ -1148,6 +1149,14 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -1242,6 +1243,14 @@ const FeatureEntry kFeatureEntries[] = {
       "Force punycode hostnames",
       "Force punycode hostnames",
       "Force punycode in hostnames instead of Unicode when displaying Internationalized Domain Names (IDNs).",
       "Force punycode in hostnames instead of Unicode when displaying Internationalized Domain Names (IDNs).",
       kOsAll, SINGLE_VALUE_TYPE("force-punycode-hostnames")},
       kOsAll, SINGLE_VALUE_TYPE("force-punycode-hostnames")},
@@ -34,7 +34,7 @@
       SINGLE_VALUE_TYPE(switches::kIgnoreGpuBlacklist)},
       SINGLE_VALUE_TYPE(switches::kIgnoreGpuBlacklist)},
 --- a/content/child/runtime_features.cc
 --- a/content/child/runtime_features.cc
 +++ b/content/child/runtime_features.cc
 +++ b/content/child/runtime_features.cc
-@@ -23,6 +23,7 @@
+@@ -22,6 +22,7 @@
  #include "services/network/public/cpp/features.h"
  #include "services/network/public/cpp/features.h"
  #include "third_party/blink/public/common/features.h"
  #include "third_party/blink/public/common/features.h"
  #include "third_party/blink/public/platform/web_runtime_features.h"
  #include "third_party/blink/public/platform/web_runtime_features.h"
@@ -42,7 +42,7 @@
  #include "ui/base/ui_base_features.h"
  #include "ui/base/ui_base_features.h"
  #include "ui/events/blink/blink_features.h"
  #include "ui/events/blink/blink_features.h"
  #include "ui/gfx/switches.h"
  #include "ui/gfx/switches.h"
-@@ -454,6 +455,11 @@ void SetIndividualRuntimeFeatures(
+@@ -462,6 +463,11 @@ void SetIndividualRuntimeFeatures(
      WebRuntimeFeatures::EnableForbidSyncXHRInPageDismissal(true);
      WebRuntimeFeatures::EnableForbidSyncXHRInPageDismissal(true);
    }
    }
  
  
@@ -64,7 +64,7 @@
  #include "cc/input/overscroll_behavior.h"
  #include "cc/input/overscroll_behavior.h"
  #include "cc/input/scroll_snap_data.h"
  #include "cc/input/scroll_snap_data.h"
  #include "services/metrics/public/cpp/mojo_ukm_recorder.h"
  #include "services/metrics/public/cpp/mojo_ukm_recorder.h"
-@@ -767,6 +768,15 @@ Document::Document(const DocumentInit& i
+@@ -1131,6 +1132,15 @@ Document::Document(const DocumentInit& i
  #ifndef NDEBUG
  #ifndef NDEBUG
    liveDocumentSet().insert(this);
    liveDocumentSet().insert(this);
  #endif
  #endif
@@ -80,7 +80,7 @@
  }
  }
  
  
  Document::~Document() {
  Document::~Document() {
-@@ -795,6 +805,14 @@ Range* Document::CreateRangeAdjustedToTr
+@@ -1159,6 +1169,14 @@ Range* Document::CreateRangeAdjustedToTr
                                       Position::BeforeNode(*shadow_host));
                                       Position::BeforeNode(*shadow_host));
  }
  }
  
  
@@ -97,7 +97,7 @@
      selector_query_cache_ = std::make_unique<SelectorQueryCache>();
      selector_query_cache_ = std::make_unique<SelectorQueryCache>();
 --- a/third_party/blink/renderer/core/dom/document.h
 --- a/third_party/blink/renderer/core/dom/document.h
 +++ b/third_party/blink/renderer/core/dom/document.h
 +++ b/third_party/blink/renderer/core/dom/document.h
-@@ -395,6 +395,10 @@ class CORE_EXPORT Document : public Cont
+@@ -398,6 +398,10 @@ class CORE_EXPORT Document : public Cont
      has_xml_declaration_ = has_xml_declaration ? 1 : 0;
      has_xml_declaration_ = has_xml_declaration ? 1 : 0;
    }
    }
  
  
@@ -108,9 +108,9 @@
    String visibilityState() const;
    String visibilityState() const;
    bool IsPageVisible() const;
    bool IsPageVisible() const;
    bool hidden() const;
    bool hidden() const;
-@@ -1879,6 +1883,9 @@ class CORE_EXPORT Document : public Cont
+@@ -1884,6 +1888,9 @@ class CORE_EXPORT Document : public Cont
  
  
-   double start_time_;
+   base::ElapsedTimer start_time_;
  
  
 +  double noise_factor_x_;
 +  double noise_factor_x_;
 +  double noise_factor_y_;
 +  double noise_factor_y_;
@@ -120,7 +120,7 @@
    HeapVector<Member<ScriptElementBase>> current_script_stack_;
    HeapVector<Member<ScriptElementBase>> current_script_stack_;
 --- a/third_party/blink/renderer/core/dom/element.cc
 --- a/third_party/blink/renderer/core/dom/element.cc
 +++ b/third_party/blink/renderer/core/dom/element.cc
 +++ b/third_party/blink/renderer/core/dom/element.cc
-@@ -1346,6 +1346,11 @@ DOMRectList* Element::getClientRects() {
+@@ -1370,6 +1370,11 @@ DOMRectList* Element::getClientRects() {
    DCHECK(element_layout_object);
    DCHECK(element_layout_object);
    GetDocument().AdjustFloatQuadsForScrollAndAbsoluteZoom(
    GetDocument().AdjustFloatQuadsForScrollAndAbsoluteZoom(
        quads, *element_layout_object);
        quads, *element_layout_object);
@@ -132,7 +132,7 @@
    return DOMRectList::Create(quads);
    return DOMRectList::Create(quads);
  }
  }
  
  
-@@ -1363,6 +1368,9 @@ DOMRect* Element::getBoundingClientRect(
+@@ -1387,6 +1392,9 @@ DOMRect* Element::getBoundingClientRect(
    DCHECK(element_layout_object);
    DCHECK(element_layout_object);
    GetDocument().AdjustFloatRectForScrollAndAbsoluteZoom(result,
    GetDocument().AdjustFloatRectForScrollAndAbsoluteZoom(result,
                                                          *element_layout_object);
                                                          *element_layout_object);
@@ -144,7 +144,7 @@
  
  
 --- a/third_party/blink/renderer/core/dom/range.cc
 --- a/third_party/blink/renderer/core/dom/range.cc
 +++ b/third_party/blink/renderer/core/dom/range.cc
 +++ b/third_party/blink/renderer/core/dom/range.cc
-@@ -1632,11 +1632,21 @@ DOMRectList* Range::getClientRects() con
+@@ -1631,11 +1631,21 @@ DOMRectList* Range::getClientRects() con
    Vector<FloatQuad> quads;
    Vector<FloatQuad> quads;
    GetBorderAndTextQuads(quads);
    GetBorderAndTextQuads(quads);
  
  
@@ -169,7 +169,7 @@
  // TODO(editing-dev): We should make
  // TODO(editing-dev): We should make
 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
-@@ -595,6 +595,12 @@
+@@ -637,6 +637,12 @@
        name: "FileSystem",
        name: "FileSystem",
        status: "stable",
        status: "stable",
      },
      },
@@ -184,8 +184,8 @@
      // metric. See also: http://bit.ly/fcp_plus_plus
      // metric. See also: http://bit.ly/fcp_plus_plus
 --- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
 --- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
 +++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
 +++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
-@@ -703,4 +703,12 @@ void WebRuntimeFeatures::EnablePauseExec
-       enable);
+@@ -699,4 +699,12 @@ void WebRuntimeFeatures::EnableMouseSubf
+   RuntimeEnabledFeatures::SetMouseSubframeNoImplicitCaptureEnabled(enable);
  }
  }
  
  
 +void WebRuntimeFeatures::EnableFingerprintingClientRectsNoise(bool enable) {
 +void WebRuntimeFeatures::EnableFingerprintingClientRectsNoise(bool enable) {
@@ -199,7 +199,7 @@
  }  // namespace blink
  }  // namespace blink
 --- a/third_party/blink/public/platform/web_runtime_features.h
 --- a/third_party/blink/public/platform/web_runtime_features.h
 +++ b/third_party/blink/public/platform/web_runtime_features.h
 +++ b/third_party/blink/public/platform/web_runtime_features.h
-@@ -236,6 +236,8 @@ class WebRuntimeFeatures {
+@@ -228,6 +228,8 @@ class WebRuntimeFeatures {
    BLINK_PLATFORM_EXPORT static void EnableMergeBlockingNonBlockingPools(bool);
    BLINK_PLATFORM_EXPORT static void EnableMergeBlockingNonBlockingPools(bool);
    BLINK_PLATFORM_EXPORT static void EnableGetDisplayMedia(bool);
    BLINK_PLATFORM_EXPORT static void EnableGetDisplayMedia(bool);
    BLINK_PLATFORM_EXPORT static void EnableForbidSyncXHRInPageDismissal(bool);
    BLINK_PLATFORM_EXPORT static void EnableForbidSyncXHRInPageDismissal(bool);
@@ -210,7 +210,7 @@
    BLINK_PLATFORM_EXPORT static void EnableHTMLImports(bool);
    BLINK_PLATFORM_EXPORT static void EnableHTMLImports(bool);
 --- a/chrome/browser/BUILD.gn
 --- a/chrome/browser/BUILD.gn
 +++ b/chrome/browser/BUILD.gn
 +++ b/chrome/browser/BUILD.gn
-@@ -2118,6 +2118,7 @@ jumbo_split_static_library("browser") {
+@@ -2156,6 +2156,7 @@ jumbo_split_static_library("browser") {
      "//third_party/metrics_proto",
      "//third_party/metrics_proto",
      "//third_party/re2",
      "//third_party/re2",
      "//third_party/smhasher:cityhash",
      "//third_party/smhasher:cityhash",
@@ -220,7 +220,7 @@
      "//third_party/widevine/cdm:buildflags",
      "//third_party/widevine/cdm:buildflags",
 --- a/content/browser/BUILD.gn
 --- a/content/browser/BUILD.gn
 +++ b/content/browser/BUILD.gn
 +++ b/content/browser/BUILD.gn
-@@ -206,6 +206,7 @@ jumbo_source_set("browser") {
+@@ -207,6 +207,7 @@ jumbo_source_set("browser") {
      "//third_party/libyuv",
      "//third_party/libyuv",
      "//third_party/re2",
      "//third_party/re2",
      "//third_party/sqlite",
      "//third_party/sqlite",
@@ -230,7 +230,7 @@
      "//third_party/zlib",
      "//third_party/zlib",
 --- a/content/browser/renderer_host/render_process_host_impl.cc
 --- a/content/browser/renderer_host/render_process_host_impl.cc
 +++ b/content/browser/renderer_host/render_process_host_impl.cc
 +++ b/content/browser/renderer_host/render_process_host_impl.cc
-@@ -213,6 +213,7 @@
+@@ -214,6 +214,7 @@
  #include "third_party/blink/public/common/page/launching_process_state.h"
  #include "third_party/blink/public/common/page/launching_process_state.h"
  #include "third_party/blink/public/common/user_agent/user_agent_metadata.h"
  #include "third_party/blink/public/common/user_agent/user_agent_metadata.h"
  #include "third_party/blink/public/public_buildflags.h"
  #include "third_party/blink/public/public_buildflags.h"
@@ -238,7 +238,7 @@
  #include "third_party/skia/include/core/SkBitmap.h"
  #include "third_party/skia/include/core/SkBitmap.h"
  #include "ui/accessibility/accessibility_switches.h"
  #include "ui/accessibility/accessibility_switches.h"
  #include "ui/base/ui_base_switches.h"
  #include "ui/base/ui_base_switches.h"
-@@ -3005,6 +3006,8 @@ void RenderProcessHostImpl::PropagateBro
+@@ -3001,6 +3002,8 @@ void RenderProcessHostImpl::PropagateBro
      switches::kEnableWebGLSwapChain,
      switches::kEnableWebGLSwapChain,
      switches::kEnableWebVR,
      switches::kEnableWebVR,
      switches::kFileUrlPathAlias,
      switches::kFileUrlPathAlias,
@@ -249,7 +249,7 @@
      switches::kForceGpuMemAvailableMb,
      switches::kForceGpuMemAvailableMb,
 --- a/content/child/BUILD.gn
 --- a/content/child/BUILD.gn
 +++ b/content/child/BUILD.gn
 +++ b/content/child/BUILD.gn
-@@ -116,6 +116,7 @@ target(link_target_type, "child") {
+@@ -117,6 +117,7 @@ target(link_target_type, "child") {
      "//third_party/blink/public:scaled_resources",
      "//third_party/blink/public:scaled_resources",
      "//third_party/blink/public/common",
      "//third_party/blink/public/common",
      "//third_party/ced",
      "//third_party/ced",
@@ -259,7 +259,7 @@
      "//ui/events/blink",
      "//ui/events/blink",
 --- a/third_party/blink/renderer/platform/BUILD.gn
 --- a/third_party/blink/renderer/platform/BUILD.gn
 +++ b/third_party/blink/renderer/platform/BUILD.gn
 +++ b/third_party/blink/renderer/platform/BUILD.gn
-@@ -1434,6 +1434,7 @@ jumbo_component("platform") {
+@@ -1426,6 +1426,7 @@ jumbo_component("platform") {
      "//third_party/ced",
      "//third_party/ced",
      "//third_party/emoji-segmenter",
      "//third_party/emoji-segmenter",
      "//third_party/icu",
      "//third_party/icu",
@@ -269,24 +269,19 @@
      "//third_party/zlib/google:compression_utils",
      "//third_party/zlib/google:compression_utils",
 --- a/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc
 --- 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
 +++ b/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc
-@@ -804,9 +804,16 @@ TextMetrics* CanvasRenderingContext2D::m
-   else
-     direction = ToTextDirection(GetState().GetDirection(), canvas());
- 
--  return MakeGarbageCollected<TextMetrics>(font, direction,
-+  TextMetrics* textMetrics = MakeGarbageCollected<TextMetrics>(font, direction,
-                                            GetState().GetTextBaseline(),
-                                            GetState().GetTextAlign(), text);
+@@ -811,6 +811,12 @@ TextMetrics* CanvasRenderingContext2D::m
+   TextMetrics* text_metrics = MakeGarbageCollected<TextMetrics>(
+       font, direction, GetState().GetTextBaseline(), GetState().GetTextAlign(),
+       text);
 +
 +
 +  // Scale text metrics if enabled
 +  // Scale text metrics if enabled
 +  if (RuntimeEnabledFeatures::FingerprintingCanvasMeasureTextNoiseEnabled()) {
 +  if (RuntimeEnabledFeatures::FingerprintingCanvasMeasureTextNoiseEnabled()) {
-+    textMetrics->Shuffle(canvas()->GetDocument().GetNoiseFactorX());
++    text_metrics->Shuffle(canvas()->GetDocument().GetNoiseFactorX());
 +  }
 +  }
 +
 +
-+  return textMetrics;
- }
- 
- void CanvasRenderingContext2D::DrawTextInternal(
+   base::TimeDelta elapsed = base::TimeTicks::Now() - start_time;
+   base::UmaHistogramMicrosecondsTimesUnderTenMilliseconds(
+       "Canvas.TextMetrics.MeasureText", elapsed);
 --- a/third_party/blink/renderer/core/html/canvas/text_metrics.h
 --- a/third_party/blink/renderer/core/html/canvas/text_metrics.h
 +++ b/third_party/blink/renderer/core/html/canvas/text_metrics.h
 +++ b/third_party/blink/renderer/core/html/canvas/text_metrics.h
 @@ -64,6 +64,8 @@ class CORE_EXPORT TextMetrics final : pu
 @@ -64,6 +64,8 @@ class CORE_EXPORT TextMetrics final : pu

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

@@ -70,7 +70,7 @@ approach to change color components.
  #include "v8/include/v8.h"
  #include "v8/include/v8.h"
  
  
  namespace blink {
  namespace blink {
-@@ -152,10 +156,165 @@ bool StaticBitmapImage::ConvertToArrayBu
+@@ -154,10 +158,165 @@ bool StaticBitmapImage::ConvertToArrayBu
    DCHECK(read_pixels_successful ||
    DCHECK(read_pixels_successful ||
           !sk_image->bounds().intersect(SkIRect::MakeXYWH(
           !sk_image->bounds().intersect(SkIRect::MakeXYWH(
               rect.X(), rect.Y(), info.width(), info.height())));
               rect.X(), rect.Y(), info.width(), info.height())));
@@ -238,7 +238,7 @@ approach to change color components.
    return sync_token;
    return sync_token;
 --- a/third_party/blink/renderer/platform/graphics/static_bitmap_image.h
 --- a/third_party/blink/renderer/platform/graphics/static_bitmap_image.h
 +++ b/third_party/blink/renderer/platform/graphics/static_bitmap_image.h
 +++ b/third_party/blink/renderer/platform/graphics/static_bitmap_image.h
-@@ -46,6 +46,8 @@ class PLATFORM_EXPORT StaticBitmapImage 
+@@ -46,6 +46,8 @@ class PLATFORM_EXPORT StaticBitmapImage
    static scoped_refptr<StaticBitmapImage> Create(WTF::ArrayBufferContents&,
    static scoped_refptr<StaticBitmapImage> Create(WTF::ArrayBufferContents&,
                                                   const SkImageInfo&);
                                                   const SkImageInfo&);
  
  
@@ -249,7 +249,7 @@ approach to change color components.
    // Methods overridden by all sub-classes
    // Methods overridden by all sub-classes
 --- a/chrome/browser/about_flags.cc
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -1162,6 +1162,10 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -1256,6 +1256,10 @@ const FeatureEntry kFeatureEntries[] = {
       "Enable Canvas::measureText() fingerprint deception",
       "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.",
       "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)},
       kOsAll, SINGLE_VALUE_TYPE(switches::kFingerprintingCanvasMeasureTextNoise)},
@@ -262,7 +262,7 @@ approach to change color components.
       SINGLE_VALUE_TYPE(switches::kIgnoreGpuBlacklist)},
       SINGLE_VALUE_TYPE(switches::kIgnoreGpuBlacklist)},
 --- a/content/child/runtime_features.cc
 --- a/content/child/runtime_features.cc
 +++ b/content/child/runtime_features.cc
 +++ b/content/child/runtime_features.cc
-@@ -459,6 +459,8 @@ void SetIndividualRuntimeFeatures(
+@@ -467,6 +467,8 @@ void SetIndividualRuntimeFeatures(
        command_line.HasSwitch(switches::kFingerprintingClientRectsNoise));
        command_line.HasSwitch(switches::kFingerprintingClientRectsNoise));
    WebRuntimeFeatures::EnableFingerprintingCanvasMeasureTextNoise(
    WebRuntimeFeatures::EnableFingerprintingCanvasMeasureTextNoise(
        command_line.HasSwitch(switches::kFingerprintingCanvasMeasureTextNoise));
        command_line.HasSwitch(switches::kFingerprintingCanvasMeasureTextNoise));
@@ -273,7 +273,7 @@ approach to change color components.
        base::FeatureList::IsEnabled(media::kAutoplayIgnoreWebAudio));
        base::FeatureList::IsEnabled(media::kAutoplayIgnoreWebAudio));
 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
-@@ -601,6 +601,9 @@
+@@ -643,6 +643,9 @@
      {
      {
        name: "FingerprintingCanvasMeasureTextNoise",
        name: "FingerprintingCanvasMeasureTextNoise",
      },
      },
@@ -285,7 +285,7 @@ approach to change color components.
      // metric. See also: http://bit.ly/fcp_plus_plus
      // metric. See also: http://bit.ly/fcp_plus_plus
 --- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
 --- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
 +++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
 +++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
-@@ -711,4 +711,8 @@ void WebRuntimeFeatures::EnableFingerpri
+@@ -707,4 +707,8 @@ void WebRuntimeFeatures::EnableFingerpri
    RuntimeEnabledFeatures::SetFingerprintingCanvasMeasureTextNoiseEnabled(enable);
    RuntimeEnabledFeatures::SetFingerprintingCanvasMeasureTextNoiseEnabled(enable);
  }
  }
  
  
@@ -296,7 +296,7 @@ approach to change color components.
  }  // namespace blink
  }  // namespace blink
 --- a/third_party/blink/public/platform/web_runtime_features.h
 --- a/third_party/blink/public/platform/web_runtime_features.h
 +++ b/third_party/blink/public/platform/web_runtime_features.h
 +++ b/third_party/blink/public/platform/web_runtime_features.h
-@@ -238,6 +238,7 @@ class WebRuntimeFeatures {
+@@ -230,6 +230,7 @@ class WebRuntimeFeatures {
    BLINK_PLATFORM_EXPORT static void EnableForbidSyncXHRInPageDismissal(bool);
    BLINK_PLATFORM_EXPORT static void EnableForbidSyncXHRInPageDismissal(bool);
    BLINK_PLATFORM_EXPORT static void EnableFingerprintingClientRectsNoise(bool);
    BLINK_PLATFORM_EXPORT static void EnableFingerprintingClientRectsNoise(bool);
    BLINK_PLATFORM_EXPORT static void EnableFingerprintingCanvasMeasureTextNoise(bool);
    BLINK_PLATFORM_EXPORT static void EnableFingerprintingCanvasMeasureTextNoise(bool);
@@ -306,7 +306,7 @@ approach to change color components.
    BLINK_PLATFORM_EXPORT static void EnableHTMLImports(bool);
    BLINK_PLATFORM_EXPORT static void EnableHTMLImports(bool);
 --- a/content/browser/renderer_host/render_process_host_impl.cc
 --- a/content/browser/renderer_host/render_process_host_impl.cc
 +++ b/content/browser/renderer_host/render_process_host_impl.cc
 +++ b/content/browser/renderer_host/render_process_host_impl.cc
-@@ -3008,6 +3008,7 @@ void RenderProcessHostImpl::PropagateBro
+@@ -3004,6 +3004,7 @@ void RenderProcessHostImpl::PropagateBro
      switches::kFileUrlPathAlias,
      switches::kFileUrlPathAlias,
      switches::kFingerprintingClientRectsNoise,
      switches::kFingerprintingClientRectsNoise,
      switches::kFingerprintingCanvasMeasureTextNoise,
      switches::kFingerprintingCanvasMeasureTextNoise,
@@ -316,7 +316,7 @@ approach to change color components.
      switches::kForceGpuMemAvailableMb,
      switches::kForceGpuMemAvailableMb,
 --- a/third_party/blink/renderer/platform/BUILD.gn
 --- a/third_party/blink/renderer/platform/BUILD.gn
 +++ b/third_party/blink/renderer/platform/BUILD.gn
 +++ b/third_party/blink/renderer/platform/BUILD.gn
-@@ -1402,7 +1402,9 @@ jumbo_component("platform") {
+@@ -1394,7 +1394,9 @@ jumbo_component("platform") {
      "//third_party/blink/renderer:non_test_config",
      "//third_party/blink/renderer:non_test_config",
    ]
    ]
  
  

+ 11 - 11
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/about_flags.cc
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -607,6 +607,11 @@ const FeatureEntry::Choice kForceEffecti
+@@ -619,6 +619,11 @@ const FeatureEntry::Choice kForceEffecti
       net::kEffectiveConnectionType4G},
       net::kEffectiveConnectionType4G},
  };
  };
  
  
@@ -29,7 +29,7 @@ with limited CPU/memory resources and it is disabled by default.
  // Ensure that all effective connection types returned by Network Quality
  // Ensure that all effective connection types returned by Network Quality
  // Estimator (NQE) are also exposed via flags.
  // Estimator (NQE) are also exposed via flags.
  static_assert(net::EFFECTIVE_CONNECTION_TYPE_LAST + 2 ==
  static_assert(net::EFFECTIVE_CONNECTION_TYPE_LAST + 2 ==
-@@ -2053,6 +2058,9 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -2217,6 +2222,9 @@ const FeatureEntry kFeatureEntries[] = {
       flag_descriptions::kAutofillCreditCardUploadDescription, kOsAll,
       flag_descriptions::kAutofillCreditCardUploadDescription, kOsAll,
       FEATURE_VALUE_TYPE(autofill::features::kAutofillUpstream)},
       FEATURE_VALUE_TYPE(autofill::features::kAutofillUpstream)},
  #endif  // TOOLKIT_VIEWS || OS_ANDROID
  #endif  // TOOLKIT_VIEWS || OS_ANDROID
@@ -41,7 +41,7 @@ with limited CPU/memory resources and it is disabled by default.
       MULTI_VALUE_TYPE(kForceUIDirectionChoices)},
       MULTI_VALUE_TYPE(kForceUIDirectionChoices)},
 --- a/chrome/browser/flag_descriptions.cc
 --- a/chrome/browser/flag_descriptions.cc
 +++ b/chrome/browser/flag_descriptions.cc
 +++ b/chrome/browser/flag_descriptions.cc
-@@ -1150,6 +1150,10 @@ const char kLookalikeUrlNavigationSugges
+@@ -1206,6 +1206,10 @@ const char kLookalikeUrlNavigationSugges
  const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
  const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
  const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
  const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
  
  
@@ -54,7 +54,7 @@ with limited CPU/memory resources and it is disabled by default.
  const char kMediaRouterCastAllowAllIPsDescription[] =
  const char kMediaRouterCastAllowAllIPsDescription[] =
 --- a/chrome/browser/flag_descriptions.h
 --- a/chrome/browser/flag_descriptions.h
 +++ b/chrome/browser/flag_descriptions.h
 +++ b/chrome/browser/flag_descriptions.h
-@@ -705,6 +705,9 @@ extern const char kMarkHttpAsWarning[];
+@@ -733,6 +733,9 @@ extern const char kMarkHttpAsWarning[];
  extern const char kMarkHttpAsWarningAndDangerousOnFormEdits[];
  extern const char kMarkHttpAsWarningAndDangerousOnFormEdits[];
  extern const char kMarkHttpAsWarningAndDangerousOnPasswordsAndCreditCards[];
  extern const char kMarkHttpAsWarningAndDangerousOnPasswordsAndCreditCards[];
  
  
@@ -119,15 +119,15 @@ with limited CPU/memory resources and it is disabled by default.
  #include "base/synchronization/waitable_event.h"
  #include "base/synchronization/waitable_event.h"
  #include "base/task/post_task.h"
  #include "base/task/post_task.h"
  #include "base/task/task_traits.h"
  #include "base/task/task_traits.h"
-@@ -100,6 +102,7 @@
+@@ -95,6 +97,7 @@
+ #include "components/metrics/metrics_service.h"
  #include "components/metrics_services_manager/metrics_services_manager.h"
  #include "components/metrics_services_manager/metrics_services_manager.h"
  #include "components/metrics_services_manager/metrics_services_manager_client.h"
  #include "components/metrics_services_manager/metrics_services_manager_client.h"
- #include "components/net_log/chrome_net_log.h"
 +#include "components/network_session_configurator/common/network_switches.h"
 +#include "components/network_session_configurator/common/network_switches.h"
  #include "components/network_time/network_time_tracker.h"
  #include "components/network_time/network_time_tracker.h"
+ #include "components/optimization_guide/optimization_guide_features.h"
  #include "components/optimization_guide/optimization_guide_service.h"
  #include "components/optimization_guide/optimization_guide_service.h"
- #include "components/policy/core/common/policy_service.h"
-@@ -137,6 +140,7 @@
+@@ -130,6 +133,7 @@
  #include "extensions/buildflags/buildflags.h"
  #include "extensions/buildflags/buildflags.h"
  #include "extensions/common/constants.h"
  #include "extensions/common/constants.h"
  #include "media/media_buildflags.h"
  #include "media/media_buildflags.h"
@@ -135,7 +135,7 @@ with limited CPU/memory resources and it is disabled by default.
  #include "ppapi/buildflags/buildflags.h"
  #include "ppapi/buildflags/buildflags.h"
  #include "printing/buildflags/buildflags.h"
  #include "printing/buildflags/buildflags.h"
  #include "services/network/public/cpp/features.h"
  #include "services/network/public/cpp/features.h"
-@@ -323,6 +327,18 @@ void BrowserProcessImpl::Init() {
+@@ -315,6 +319,18 @@ void BrowserProcessImpl::Init() {
                               base::Bind(&ApplyMetricsReportingPolicy));
                               base::Bind(&ApplyMetricsReportingPolicy));
  #endif
  #endif
  
  
@@ -156,11 +156,11 @@ with limited CPU/memory resources and it is disabled by default.
  
  
 --- a/chrome/browser/BUILD.gn
 --- a/chrome/browser/BUILD.gn
 +++ b/chrome/browser/BUILD.gn
 +++ b/chrome/browser/BUILD.gn
-@@ -1954,6 +1954,7 @@ jumbo_split_static_library("browser") {
+@@ -1991,6 +1991,7 @@ jumbo_split_static_library("browser") {
      "//components/net_log",
      "//components/net_log",
      "//components/network_hints/common",
      "//components/network_hints/common",
      "//components/network_session_configurator/browser",
      "//components/network_session_configurator/browser",
 +    "//components/network_session_configurator/common",
 +    "//components/network_session_configurator/common",
      "//components/network_time",
      "//components/network_time",
-     "//components/ntp_snippets",
      "//components/ntp_tiles",
      "//components/ntp_tiles",
+     "//components/offline_items_collection/core",

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

@@ -13,7 +13,7 @@ author: Michael Gilbert <mgilbert@debian.org>
    enable_gvr_services = is_android && !is_chromecast &&
    enable_gvr_services = is_android && !is_chromecast &&
 --- a/BUILD.gn
 --- a/BUILD.gn
 +++ b/BUILD.gn
 +++ b/BUILD.gn
-@@ -372,7 +372,7 @@ group("gn_all") {
+@@ -384,7 +384,7 @@ group("gn_all") {
    #       seems currently broken for this platform at the moment, and the
    #       seems currently broken for this platform at the moment, and the
    #       corresponding code build and works on Linux unmodified.
    #       corresponding code build and works on Linux unmodified.
    #       See instructions in the corresponding BUILD.gn.
    #       See instructions in the corresponding BUILD.gn.

+ 1 - 1
patches/extra/debian_buster/disable/device-notifications.patch

@@ -4,7 +4,7 @@ bug-debian: http://bugs.debian.org/856571
 
 
 --- a/chrome/browser/printing/cloud_print/privet_notifications.cc
 --- a/chrome/browser/printing/cloud_print/privet_notifications.cc
 +++ b/chrome/browser/printing/cloud_print/privet_notifications.cc
 +++ b/chrome/browser/printing/cloud_print/privet_notifications.cc
-@@ -229,8 +229,7 @@ void PrivetNotificationService::DeviceCa
+@@ -209,8 +209,7 @@ void PrivetNotificationService::DeviceCa
  // static
  // static
  bool PrivetNotificationService::IsEnabled() {
  bool PrivetNotificationService::IsEnabled() {
    base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
    base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();

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

@@ -3,7 +3,7 @@ author: Michael Gilbert <mgilbert@debian.org>
 
 
 --- a/BUILD.gn
 --- a/BUILD.gn
 +++ b/BUILD.gn
 +++ b/BUILD.gn
-@@ -723,8 +723,7 @@ group("gn_all") {
+@@ -734,8 +734,7 @@ group("gn_all") {
      }
      }
    }
    }
  
  
@@ -15,7 +15,7 @@ author: Michael Gilbert <mgilbert@debian.org>
        "//testing/libfuzzer/fuzzers",
        "//testing/libfuzzer/fuzzers",
 --- a/content/test/BUILD.gn
 --- a/content/test/BUILD.gn
 +++ b/content/test/BUILD.gn
 +++ b/content/test/BUILD.gn
-@@ -2333,12 +2333,6 @@ test("content_perftests") {
+@@ -2402,12 +2402,6 @@ test("content_perftests") {
    }
    }
  }
  }
  
  

+ 1 - 1
patches/extra/debian_buster/disable/google-api-warning.patch

@@ -3,7 +3,7 @@ author: Michael Gilbert <mgilbert@debian.org>
 
 
 --- a/chrome/browser/ui/startup/startup_browser_creator_impl.cc
 --- a/chrome/browser/ui/startup/startup_browser_creator_impl.cc
 +++ b/chrome/browser/ui/startup/startup_browser_creator_impl.cc
 +++ b/chrome/browser/ui/startup/startup_browser_creator_impl.cc
-@@ -849,10 +849,6 @@ void StartupBrowserCreatorImpl::AddInfoB
+@@ -856,10 +856,6 @@ void StartupBrowserCreatorImpl::AddInfoB
  
  
      InfoBarService* infobar_service =
      InfoBarService* infobar_service =
          InfoBarService::FromWebContents(web_contents);
          InfoBarService::FromWebContents(web_contents);

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

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

+ 0 - 14
patches/extra/debian_buster/fixes/inspector.patch

@@ -1,14 +0,0 @@
-description: use inspector_protocol from top level third_party dir
-author: Michael Gilbert <mgilbert@debian.org>
-
---- a/v8/src/inspector/BUILD.gn
-+++ b/v8/src/inspector/BUILD.gn
-@@ -4,7 +4,7 @@
- 
- import("../../gni/v8.gni")
- 
--_inspector_protocol = v8_path_prefix + "/third_party/inspector_protocol"
-+_inspector_protocol = "../../../third_party/inspector_protocol"
- import("$_inspector_protocol/inspector_protocol.gni")
- 
- _protocol_generated = [

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

@@ -1,6 +1,6 @@
 --- a/chrome/browser/chrome_content_browser_client.cc
 --- a/chrome/browser/chrome_content_browser_client.cc
 +++ b/chrome/browser/chrome_content_browser_client.cc
 +++ b/chrome/browser/chrome_content_browser_client.cc
-@@ -1175,7 +1175,7 @@ void ChromeContentBrowserClient::Registe
+@@ -1153,7 +1153,7 @@ void ChromeContentBrowserClient::Registe
  void ChromeContentBrowserClient::RegisterProfilePrefs(
  void ChromeContentBrowserClient::RegisterProfilePrefs(
      user_prefs::PrefRegistrySyncable* registry) {
      user_prefs::PrefRegistrySyncable* registry) {
    registry->RegisterBooleanPref(prefs::kDisable3DAPIs, false);
    registry->RegisterBooleanPref(prefs::kDisable3DAPIs, false);
@@ -27,7 +27,7 @@
    registry->RegisterDictionaryPref(prefs::kAppWindowPlacement);
    registry->RegisterDictionaryPref(prefs::kAppWindowPlacement);
 --- a/chrome/browser/net/prediction_options.cc
 --- a/chrome/browser/net/prediction_options.cc
 +++ b/chrome/browser/net/prediction_options.cc
 +++ b/chrome/browser/net/prediction_options.cc
-@@ -32,7 +32,7 @@ NetworkPredictionStatus CanPrefetchAndPr
+@@ -31,7 +31,7 @@ NetworkPredictionStatus CanPrefetchAndPr
        }
        }
        return NetworkPredictionStatus::DISABLED_DUE_TO_NETWORK;
        return NetworkPredictionStatus::DISABLED_DUE_TO_NETWORK;
      default:
      default:
@@ -38,7 +38,7 @@
  }
  }
 --- a/chrome/browser/net/prediction_options.h
 --- a/chrome/browser/net/prediction_options.h
 +++ b/chrome/browser/net/prediction_options.h
 +++ b/chrome/browser/net/prediction_options.h
-@@ -23,7 +23,7 @@ enum NetworkPredictionOptions {
+@@ -22,7 +22,7 @@ enum NetworkPredictionOptions {
    NETWORK_PREDICTION_ALWAYS,
    NETWORK_PREDICTION_ALWAYS,
    NETWORK_PREDICTION_WIFI_ONLY,
    NETWORK_PREDICTION_WIFI_ONLY,
    NETWORK_PREDICTION_NEVER,
    NETWORK_PREDICTION_NEVER,
@@ -49,7 +49,7 @@
  enum class NetworkPredictionStatus {
  enum class NetworkPredictionStatus {
 --- a/chrome/browser/background/background_mode_manager.cc
 --- a/chrome/browser/background/background_mode_manager.cc
 +++ b/chrome/browser/background/background_mode_manager.cc
 +++ b/chrome/browser/background/background_mode_manager.cc
-@@ -303,7 +303,7 @@ void BackgroundModeManager::RegisterPref
+@@ -301,7 +301,7 @@ void BackgroundModeManager::RegisterPref
    registry->RegisterBooleanPref(prefs::kChromeCreatedLoginItem, false);
    registry->RegisterBooleanPref(prefs::kChromeCreatedLoginItem, false);
    registry->RegisterBooleanPref(prefs::kMigratedLoginItemPref, false);
    registry->RegisterBooleanPref(prefs::kMigratedLoginItemPref, false);
  #endif
  #endif
@@ -60,15 +60,15 @@
  void BackgroundModeManager::RegisterProfile(Profile* profile) {
  void BackgroundModeManager::RegisterProfile(Profile* profile) {
 --- a/components/content_settings/core/browser/cookie_settings.cc
 --- a/components/content_settings/core/browser/cookie_settings.cc
 +++ b/components/content_settings/core/browser/cookie_settings.cc
 +++ b/components/content_settings/core/browser/cookie_settings.cc
-@@ -50,7 +50,7 @@ void CookieSettings::GetCookieSettings(
+@@ -57,7 +57,7 @@ void CookieSettings::GetCookieSettings(
  void CookieSettings::RegisterProfilePrefs(
  void CookieSettings::RegisterProfilePrefs(
      user_prefs::PrefRegistrySyncable* registry) {
      user_prefs::PrefRegistrySyncable* registry) {
    registry->RegisterBooleanPref(
    registry->RegisterBooleanPref(
 -      prefs::kBlockThirdPartyCookies, false,
 -      prefs::kBlockThirdPartyCookies, false,
 +      prefs::kBlockThirdPartyCookies, true,
 +      prefs::kBlockThirdPartyCookies, true,
        user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
        user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
- }
- 
+   registry->RegisterBooleanPref(
+       prefs::kCookieControlsEnabled, false,
 --- a/chrome/browser/ui/navigation_correction_tab_observer.cc
 --- a/chrome/browser/ui/navigation_correction_tab_observer.cc
 +++ b/chrome/browser/ui/navigation_correction_tab_observer.cc
 +++ b/chrome/browser/ui/navigation_correction_tab_observer.cc
 @@ -55,7 +55,7 @@ NavigationCorrectionTabObserver::~Naviga
 @@ -55,7 +55,7 @@ NavigationCorrectionTabObserver::~Naviga
@@ -106,8 +106,8 @@
        prefs::kAutofillProfileValidity, "",
        prefs::kAutofillProfileValidity, "",
 --- a/chrome/browser/resources/settings/reset_page/reset_profile_dialog.html
 --- a/chrome/browser/resources/settings/reset_page/reset_profile_dialog.html
 +++ b/chrome/browser/resources/settings/reset_page/reset_profile_dialog.html
 +++ b/chrome/browser/resources/settings/reset_page/reset_profile_dialog.html
-@@ -52,7 +52,7 @@
-         </paper-button>
+@@ -50,7 +50,7 @@
+         </cr-button>
        </div>
        </div>
        <div slot="footer">
        <div slot="footer">
 -        <cr-checkbox id="sendSettings" checked>
 -        <cr-checkbox id="sendSettings" checked>
@@ -117,7 +117,7 @@
      </cr-dialog>
      </cr-dialog>
 --- a/components/bookmarks/browser/bookmark_utils.cc
 --- a/components/bookmarks/browser/bookmark_utils.cc
 +++ b/components/bookmarks/browser/bookmark_utils.cc
 +++ b/components/bookmarks/browser/bookmark_utils.cc
-@@ -440,12 +440,12 @@ void GetBookmarksMatchingProperties(Book
+@@ -433,12 +433,12 @@ void GetBookmarksMatchingProperties(Book
  void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
  void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
    registry->RegisterBooleanPref(
    registry->RegisterBooleanPref(
        prefs::kShowBookmarkBar,
        prefs::kShowBookmarkBar,
@@ -186,7 +186,7 @@
    // functionality that are only available in chrome://extensions/ but which
    // functionality that are only available in chrome://extensions/ but which
 --- a/components/safe_browsing/common/safe_browsing_prefs.cc
 --- a/components/safe_browsing/common/safe_browsing_prefs.cc
 +++ b/components/safe_browsing/common/safe_browsing_prefs.cc
 +++ b/components/safe_browsing/common/safe_browsing_prefs.cc
-@@ -149,9 +149,9 @@ void RegisterProfilePrefs(PrefRegistrySi
+@@ -153,9 +153,9 @@ void RegisterProfilePrefs(PrefRegistrySi
    registry->RegisterBooleanPref(
    registry->RegisterBooleanPref(
        prefs::kSafeBrowsingSawInterstitialScoutReporting, false);
        prefs::kSafeBrowsingSawInterstitialScoutReporting, false);
    registry->RegisterBooleanPref(
    registry->RegisterBooleanPref(
@@ -200,7 +200,7 @@
                                  false);
                                  false);
 --- a/components/password_manager/core/browser/password_manager.cc
 --- a/components/password_manager/core/browser/password_manager.cc
 +++ b/components/password_manager/core/browser/password_manager.cc
 +++ b/components/password_manager/core/browser/password_manager.cc
-@@ -357,10 +357,10 @@ void PasswordManager::RegisterProfilePre
+@@ -359,10 +359,10 @@ void PasswordManager::RegisterProfilePre
    registry->RegisterBooleanPref(prefs::kBlacklistedCredentialsNormalized,
    registry->RegisterBooleanPref(prefs::kBlacklistedCredentialsNormalized,
                                  false);
                                  false);
    registry->RegisterBooleanPref(
    registry->RegisterBooleanPref(
@@ -226,7 +226,7 @@
  
  
 --- a/chrome/browser/signin/account_consistency_mode_manager.cc
 --- a/chrome/browser/signin/account_consistency_mode_manager.cc
 +++ b/chrome/browser/signin/account_consistency_mode_manager.cc
 +++ b/chrome/browser/signin/account_consistency_mode_manager.cc
-@@ -126,7 +126,7 @@ void AccountConsistencyModeManager::Regi
+@@ -145,7 +145,7 @@ void AccountConsistencyModeManager::Regi
    registry->RegisterBooleanPref(prefs::kAccountConsistencyMirrorRequired,
    registry->RegisterBooleanPref(prefs::kAccountConsistencyMirrorRequired,
                                  false);
                                  false);
  #endif
  #endif

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

@@ -30,8 +30,8 @@
    const GURL url;
    const GURL url;
 --- a/components/ntp_snippets/features.cc
 --- a/components/ntp_snippets/features.cc
 +++ b/components/ntp_snippets/features.cc
 +++ b/components/ntp_snippets/features.cc
-@@ -40,7 +40,7 @@ const base::Feature* const kAllFeatures[
-     &kRemoteSuggestionsBackendFeature};
+@@ -39,7 +39,7 @@ const base::Feature* const kAllFeatures[
+     &kOptionalImagesEnabledFeature};
  
  
  const base::Feature kArticleSuggestionsFeature{
  const base::Feature kArticleSuggestionsFeature{
 -    "NTPArticleSuggestions", base::FEATURE_ENABLED_BY_DEFAULT};
 -    "NTPArticleSuggestions", base::FEATURE_ENABLED_BY_DEFAULT};
@@ -39,12 +39,12 @@
  
  
  const base::Feature kRemoteSuggestionsEmulateM58FetchingSchedule{
  const base::Feature kRemoteSuggestionsEmulateM58FetchingSchedule{
      "RemoteSuggestionsEmulateM58FetchingSchedule",
      "RemoteSuggestionsEmulateM58FetchingSchedule",
-@@ -70,7 +70,7 @@ const char kNotificationsDailyLimit[] = 
+@@ -69,7 +69,7 @@ const char kNotificationsDailyLimit[] =
  const char kNotificationsIgnoredLimitParam[] = "ignored_limit";
  const char kNotificationsIgnoredLimitParam[] = "ignored_limit";
  
  
  const base::Feature kKeepPrefetchedContentSuggestions{
  const base::Feature kKeepPrefetchedContentSuggestions{
 -    "KeepPrefetchedContentSuggestions", base::FEATURE_ENABLED_BY_DEFAULT};
 -    "KeepPrefetchedContentSuggestions", base::FEATURE_ENABLED_BY_DEFAULT};
 +    "KeepPrefetchedContentSuggestions", base::FEATURE_DISABLED_BY_DEFAULT};
 +    "KeepPrefetchedContentSuggestions", base::FEATURE_DISABLED_BY_DEFAULT};
  
  
- std::vector<const base::Feature*> GetAllFeatures() {
-   // Skip the last feature as it's a nullptr.
+ const base::Feature kOptionalImagesEnabledFeature{
+     "NTPRemoteSuggestionsOptionalImages", base::FEATURE_DISABLED_BY_DEFAULT};

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

@@ -1,6 +1,6 @@
 --- a/chrome/browser/ui/startup/startup_tab_provider.cc
 --- a/chrome/browser/ui/startup/startup_tab_provider.cc
 +++ b/chrome/browser/ui/startup/startup_tab_provider.cc
 +++ b/chrome/browser/ui/startup/startup_tab_provider.cc
-@@ -62,7 +62,7 @@ bool ProfileHasOtherTabbedBrowser(Profil
+@@ -49,7 +49,7 @@ bool ProfileHasOtherTabbedBrowser(Profil
  
  
  StartupTabs StartupTabProviderImpl::GetOnboardingTabs(Profile* profile) const {
  StartupTabs StartupTabProviderImpl::GetOnboardingTabs(Profile* profile) const {
  // Onboarding content has not been launched on Chrome OS.
  // Onboarding content has not been launched on Chrome OS.

+ 5 - 5
patches/extra/inox-patchset/0019-disable-battery-status-service.patch

@@ -1,6 +1,6 @@
 --- a/services/device/battery/battery_status_service.cc
 --- a/services/device/battery/battery_status_service.cc
 +++ b/services/device/battery/battery_status_service.cc
 +++ b/services/device/battery/battery_status_service.cc
-@@ -19,10 +19,7 @@ BatteryStatusService::BatteryStatusServi
+@@ -21,10 +21,7 @@ BatteryStatusService::BatteryStatusServi
      : main_thread_task_runner_(base::ThreadTaskRunnerHandle::Get()),
      : main_thread_task_runner_(base::ThreadTaskRunnerHandle::Get()),
        update_callback_(base::Bind(&BatteryStatusService::NotifyConsumers,
        update_callback_(base::Bind(&BatteryStatusService::NotifyConsumers,
                                    base::Unretained(this))),
                                    base::Unretained(this))),
@@ -10,8 +10,8 @@
 -      &BatteryStatusService::ConsumersChanged, base::Unretained(this)));
 -      &BatteryStatusService::ConsumersChanged, base::Unretained(this)));
  }
  }
  
  
- BatteryStatusService::~BatteryStatusService() {}
-@@ -38,58 +35,16 @@ BatteryStatusService::AddCallback(const 
+ BatteryStatusService::~BatteryStatusService() {
+@@ -67,58 +64,16 @@ BatteryStatusService::AddCallback(const
    DCHECK(main_thread_task_runner_->BelongsToCurrentThread());
    DCHECK(main_thread_task_runner_->BelongsToCurrentThread());
    DCHECK(!is_shutdown_);
    DCHECK(!is_shutdown_);
  
  
@@ -72,7 +72,7 @@
    is_shutdown_ = true;
    is_shutdown_ = true;
  }
  }
  
  
-@@ -100,9 +55,6 @@ BatteryStatusService::GetUpdateCallbackF
+@@ -129,9 +84,6 @@ BatteryStatusService::GetUpdateCallbackF
  
  
  void BatteryStatusService::SetBatteryManagerForTesting(
  void BatteryStatusService::SetBatteryManagerForTesting(
      std::unique_ptr<BatteryStatusManager> test_battery_manager) {
      std::unique_ptr<BatteryStatusManager> test_battery_manager) {
@@ -84,7 +84,7 @@
  }
  }
 --- a/services/device/battery/battery_status_service.h
 --- a/services/device/battery/battery_status_service.h
 +++ b/services/device/battery/battery_status_service.h
 +++ b/services/device/battery/battery_status_service.h
-@@ -56,15 +56,10 @@ class BatteryStatusService {
+@@ -57,15 +57,10 @@ class BatteryStatusService {
    // Updates current battery status and sends new status to interested
    // Updates current battery status and sends new status to interested
    // render processes. Can be called on any thread via a callback.
    // render processes. Can be called on any thread via a callback.
    void NotifyConsumers(const mojom::BatteryStatus& status);
    void NotifyConsumers(const mojom::BatteryStatus& status);

+ 1 - 1
patches/extra/inox-patchset/chromium-widevine.patch

@@ -1,6 +1,6 @@
 --- a/chrome/common/chrome_content_client.cc
 --- a/chrome/common/chrome_content_client.cc
 +++ b/chrome/common/chrome_content_client.cc
 +++ b/chrome/common/chrome_content_client.cc
-@@ -97,7 +97,7 @@
+@@ -92,7 +92,7 @@
  // Registers Widevine CDM if Widevine is enabled, the Widevine CDM is
  // Registers Widevine CDM if Widevine is enabled, the Widevine CDM is
  // bundled and not a component. When the Widevine CDM is a component, it is
  // bundled and not a component. When the Widevine CDM is a component, it is
  // registered in widevine_cdm_component_installer.cc.
  // registered in widevine_cdm_component_installer.cc.

+ 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
 --- a/chrome/browser/chrome_browser_main.cc
 +++ b/chrome/browser/chrome_browser_main.cc
 +++ b/chrome/browser/chrome_browser_main.cc
-@@ -1601,8 +1601,6 @@ int ChromeBrowserMainParts::PreMainMessa
+@@ -1583,8 +1583,6 @@ int ChromeBrowserMainParts::PreMainMessa
    // and preferences have been registered since some of the import code depends
    // and preferences have been registered since some of the import code depends
    // on preferences.
    // on preferences.
    if (first_run::IsChromeFirstRun()) {
    if (first_run::IsChromeFirstRun()) {

+ 1 - 1
patches/extra/iridium-browser/updater-disable-auto-update.patch

@@ -16,7 +16,7 @@ the case anyway, since we are based off Chromium, not Chrome.
 
 
 --- a/chrome/browser/app_controller_mac.mm
 --- a/chrome/browser/app_controller_mac.mm
 +++ b/chrome/browser/app_controller_mac.mm
 +++ b/chrome/browser/app_controller_mac.mm
-@@ -669,7 +669,7 @@ static base::mac::ScopedObjCClassSwizzle
+@@ -666,7 +666,7 @@ static base::mac::ScopedObjCClassSwizzle
    CFStringRef checkInterval = CFSTR("checkInterval");
    CFStringRef checkInterval = CFSTR("checkInterval");
    CFPropertyListRef plist = CFPreferencesCopyAppValue(checkInterval, app);
    CFPropertyListRef plist = CFPreferencesCopyAppValue(checkInterval, app);
    if (!plist) {
    if (!plist) {

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

@@ -2,7 +2,7 @@
 
 
 --- a/chrome/browser/about_flags.cc
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -1117,6 +1117,10 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -1211,6 +1211,10 @@ const FeatureEntry kFeatureEntries[] = {
       "Enable stacking in tab strip",
       "Enable stacking in tab strip",
       "Forces tabs to be stacked in the tab strip. Otherwise, they follow default behavior.",
       "Forces tabs to be stacked in the tab strip. Otherwise, they follow default behavior.",
       kOsAll, SINGLE_VALUE_TYPE("enable-stacked-tab-strip")},
       kOsAll, SINGLE_VALUE_TYPE("enable-stacked-tab-strip")},
@@ -72,7 +72,7 @@
  #include "base/debug/crash_logging.h"
  #include "base/debug/crash_logging.h"
  #include "base/format_macros.h"
  #include "base/format_macros.h"
  #include "base/metrics/histogram_macros.h"
  #include "base/metrics/histogram_macros.h"
-@@ -196,6 +197,12 @@ bool IsCreatedByExtension(const Template
+@@ -200,6 +201,12 @@ bool IsCreatedByExtension(const Template
           template_url->type() == TemplateURL::OMNIBOX_API_EXTENSION;
           template_url->type() == TemplateURL::OMNIBOX_API_EXTENSION;
  }
  }
  
  
@@ -85,7 +85,7 @@
  }  // namespace
  }  // namespace
  
  
  // TemplateURLService::LessWithPrefix -----------------------------------------
  // TemplateURLService::LessWithPrefix -----------------------------------------
-@@ -282,6 +289,7 @@ TemplateURLService::TemplateURLService(
+@@ -286,6 +293,7 @@ TemplateURLService::TemplateURLService(
      rappor::RapporServiceImpl* rappor_service,
      rappor::RapporServiceImpl* rappor_service,
      const base::Closure& dsp_change_callback)
      const base::Closure& dsp_change_callback)
      : prefs_(prefs),
      : prefs_(prefs),
@@ -93,7 +93,7 @@
        search_terms_data_(std::move(search_terms_data)),
        search_terms_data_(std::move(search_terms_data)),
        web_data_service_(web_data_service),
        web_data_service_(web_data_service),
        client_(std::move(client)),
        client_(std::move(client)),
-@@ -337,7 +345,7 @@ bool TemplateURLService::CanAddAutogener
+@@ -351,7 +359,7 @@ bool TemplateURLService::CanAddAutogener
    if (existing_url) {
    if (existing_url) {
      // We already have a TemplateURL for this keyword. Only allow it to be
      // We already have a TemplateURL for this keyword. Only allow it to be
      // replaced if the TemplateURL can be replaced.
      // replaced if the TemplateURL can be replaced.
@@ -102,7 +102,7 @@
    }
    }
  
  
    // We don't have a TemplateURL with keyword.  We still may not allow this
    // We don't have a TemplateURL with keyword.  We still may not allow this
-@@ -346,8 +354,8 @@ bool TemplateURLService::CanAddAutogener
+@@ -360,8 +368,8 @@ bool TemplateURLService::CanAddAutogener
    // that may interfere with search queries).  An easy heuristic for this is
    // 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.,
    // whether the user has a TemplateURL that has been manually modified (e.g.,
    // renamed) connected to the same host.
    // renamed) connected to the same host.
@@ -113,7 +113,7 @@
  }
  }
  
  
  bool TemplateURLService::IsPrepopulatedOrCreatedByPolicy(
  bool TemplateURLService::IsPrepopulatedOrCreatedByPolicy(
-@@ -1369,6 +1377,8 @@ SyncDataMap TemplateURLService::CreateGU
+@@ -1383,6 +1391,8 @@ SyncDataMap TemplateURLService::CreateGU
  
  
  void TemplateURLService::Init(const Initializer* initializers,
  void TemplateURLService::Init(const Initializer* initializers,
                                int num_initializers) {
                                int num_initializers) {
@@ -122,7 +122,7 @@
    if (client_)
    if (client_)
      client_->SetOwner(this);
      client_->SetOwner(this);
  
  
-@@ -1604,6 +1614,9 @@ void TemplateURLService::ChangeToLoadedS
+@@ -1618,6 +1628,9 @@ void TemplateURLService::ChangeToLoadedS
  
  
  bool TemplateURLService::CanAddAutogeneratedKeywordForHost(
  bool TemplateURLService::CanAddAutogeneratedKeywordForHost(
      const std::string& host) const {
      const std::string& host) const {
@@ -132,7 +132,7 @@
    const TemplateURLSet* urls = provider_map_->GetURLsForHost(host);
    const TemplateURLSet* urls = provider_map_->GetURLsForHost(host);
    if (!urls)
    if (!urls)
      return true;
      return true;
-@@ -1614,7 +1627,8 @@ bool TemplateURLService::CanAddAutogener
+@@ -1628,7 +1641,8 @@ bool TemplateURLService::CanAddAutogener
  }
  }
  
  
  bool TemplateURLService::CanReplace(const TemplateURL* t_url) const {
  bool TemplateURLService::CanReplace(const TemplateURL* t_url) const {
@@ -144,7 +144,7 @@
  TemplateURL* TemplateURLService::FindNonExtensionTemplateURLForKeyword(
  TemplateURL* TemplateURLService::FindNonExtensionTemplateURLForKeyword(
 --- a/components/search_engines/template_url_service.h
 --- a/components/search_engines/template_url_service.h
 +++ b/components/search_engines/template_url_service.h
 +++ b/components/search_engines/template_url_service.h
-@@ -722,6 +722,8 @@ class TemplateURLService : public WebDat
+@@ -733,6 +733,8 @@ class TemplateURLService : public WebDat
    // ---------- Browser state related members ---------------------------------
    // ---------- Browser state related members ---------------------------------
    PrefService* prefs_ = nullptr;
    PrefService* prefs_ = nullptr;
  
  

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

@@ -3,7 +3,7 @@
 
 
 --- a/chrome/browser/about_flags.cc
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -213,6 +213,16 @@ const unsigned kOsDesktop = kOsMac | kOs
+@@ -225,6 +225,16 @@ const unsigned kOsDesktop = kOsMac | kOs
  const unsigned kOsAura = kOsWin | kOsLinux | kOsCrOS;
  const unsigned kOsAura = kOsWin | kOsLinux | kOsCrOS;
  #endif  // USE_AURA || OS_ANDROID
  #endif  // USE_AURA || OS_ANDROID
  
  
@@ -20,7 +20,7 @@
  const FeatureEntry::Choice kTouchEventFeatureDetectionChoices[] = {
  const FeatureEntry::Choice kTouchEventFeatureDetectionChoices[] = {
      {flags_ui::kGenericExperimentChoiceDisabled, "", ""},
      {flags_ui::kGenericExperimentChoiceDisabled, "", ""},
      {flags_ui::kGenericExperimentChoiceEnabled,
      {flags_ui::kGenericExperimentChoiceEnabled,
-@@ -1099,6 +1109,10 @@ const FeatureEntry::FeatureVariation kLa
+@@ -1193,6 +1203,10 @@ const FeatureEntry::Choice kNotification
  //
  //
  // When adding a new choice, add it to the end of the list.
  // When adding a new choice, add it to the end of the list.
  const FeatureEntry kFeatureEntries[] = {
  const FeatureEntry kFeatureEntries[] = {
@@ -41,7 +41,7 @@
  #include "chrome/browser/chrome_notification_types.h"
  #include "chrome/browser/chrome_notification_types.h"
  #include "chrome/browser/extensions/crx_installer.h"
  #include "chrome/browser/extensions/crx_installer.h"
  #include "chrome/browser/extensions/extension_install_prompt.h"
  #include "chrome/browser/extensions/extension_install_prompt.h"
-@@ -120,6 +121,14 @@ scoped_refptr<extensions::CrxInstaller> 
+@@ -120,6 +121,14 @@ scoped_refptr<extensions::CrxInstaller>
    return installer;
    return installer;
  }
  }
  
  
@@ -91,7 +91,7 @@
      return false;
      return false;
 --- a/chrome/browser/download/download_crx_util.h
 --- a/chrome/browser/download/download_crx_util.h
 +++ b/chrome/browser/download/download_crx_util.h
 +++ b/chrome/browser/download/download_crx_util.h
-@@ -43,6 +43,10 @@ scoped_refptr<extensions::CrxInstaller> 
+@@ -43,6 +43,10 @@ scoped_refptr<extensions::CrxInstaller>
      Profile* profile,
      Profile* profile,
      const download::DownloadItem& download_item);
      const download::DownloadItem& download_item);
  
  
@@ -104,7 +104,7 @@
  bool IsExtensionDownload(const download::DownloadItem& download_item);
  bool IsExtensionDownload(const download::DownloadItem& download_item);
 --- a/chrome/browser/download/download_target_determiner.cc
 --- a/chrome/browser/download/download_target_determiner.cc
 +++ b/chrome/browser/download/download_target_determiner.cc
 +++ b/chrome/browser/download/download_target_determiner.cc
-@@ -1005,10 +1005,12 @@ DownloadConfirmationReason DownloadTarge
+@@ -1001,10 +1001,12 @@ DownloadConfirmationReason DownloadTarge
      return DownloadConfirmationReason::SAVE_AS;
      return DownloadConfirmationReason::SAVE_AS;
  
  
  #if BUILDFLAG(ENABLE_EXTENSIONS)
  #if BUILDFLAG(ENABLE_EXTENSIONS)

+ 1 - 1
patches/extra/ungoogled-chromium/add-flag-to-disable-beforeunload.patch

@@ -10,7 +10,7 @@
  #include "base/i18n/rtl.h"
  #include "base/i18n/rtl.h"
  #include "base/macros.h"
  #include "base/macros.h"
  #include "base/metrics/histogram_macros.h"
  #include "base/metrics/histogram_macros.h"
-@@ -235,7 +236,8 @@ void JavaScriptDialogManager::RunBeforeU
+@@ -201,7 +202,8 @@ void JavaScriptDialogManager::RunBeforeU
    ChromeJavaScriptDialogExtraData* extra_data =
    ChromeJavaScriptDialogExtraData* extra_data =
        &javascript_dialog_extra_data_[web_contents];
        &javascript_dialog_extra_data_[web_contents];
  
  

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

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

+ 1 - 1
patches/extra/ungoogled-chromium/add-flag-to-hide-crashed-bubble.patch

@@ -3,7 +3,7 @@
 
 
 --- a/chrome/browser/ui/startup/startup_browser_creator_impl.cc
 --- a/chrome/browser/ui/startup/startup_browser_creator_impl.cc
 +++ b/chrome/browser/ui/startup/startup_browser_creator_impl.cc
 +++ b/chrome/browser/ui/startup/startup_browser_creator_impl.cc
-@@ -820,7 +820,8 @@ void StartupBrowserCreatorImpl::AddInfoB
+@@ -827,7 +827,8 @@ void StartupBrowserCreatorImpl::AddInfoB
    if (!browser || !profile_ || browser->tab_strip_model()->count() == 0)
    if (!browser || !profile_ || browser->tab_strip_model()->count() == 0)
      return;
      return;
  
  

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

@@ -1,6 +1,6 @@
 --- a/chrome/browser/about_flags.cc
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -236,6 +236,16 @@ const FeatureEntry::Choice kShowAvatarBu
+@@ -248,6 +248,16 @@ const FeatureEntry::Choice kShowAvatarBu
       "never"}
       "never"}
  };
  };
  
  
@@ -17,7 +17,7 @@
  const FeatureEntry::Choice kTouchEventFeatureDetectionChoices[] = {
  const FeatureEntry::Choice kTouchEventFeatureDetectionChoices[] = {
      {flags_ui::kGenericExperimentChoiceDisabled, "", ""},
      {flags_ui::kGenericExperimentChoiceDisabled, "", ""},
      {flags_ui::kGenericExperimentChoiceEnabled,
      {flags_ui::kGenericExperimentChoiceEnabled,
-@@ -3443,6 +3453,11 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -3601,6 +3611,11 @@ const FeatureEntry kFeatureEntries[] = {
       kOsAndroid, FEATURE_VALUE_TYPE(safe_browsing::kUseLocalBlacklistsV2)},
       kOsAndroid, FEATURE_VALUE_TYPE(safe_browsing::kUseLocalBlacklistsV2)},
  #endif  // defined(OS_ANDROID)
  #endif  // defined(OS_ANDROID)
  
  
@@ -58,18 +58,18 @@
  }  // namespace
  }  // namespace
  
  
  BrowserRootView::DropInfo::DropInfo() = default;
  BrowserRootView::DropInfo::DropInfo() = default;
-@@ -108,7 +121,9 @@ BrowserRootView::BrowserRootView(Browser
+@@ -105,7 +118,9 @@ const char BrowserRootView::kViewClassNa
+ 
+ BrowserRootView::BrowserRootView(BrowserView* browser_view,
                                   views::Widget* widget)
                                   views::Widget* widget)
-     : views::internal::RootView(widget),
-       browser_view_(browser_view),
--      weak_ptr_factory_(this) {}
-+      weak_ptr_factory_(this) {
-+        scroll_event_changes_tab_ = ShouldScrollChangesTab();
+-    : views::internal::RootView(widget), browser_view_(browser_view) {}
++    : views::internal::RootView(widget), browser_view_(browser_view) {
++  scroll_event_changes_tab_ = ShouldScrollChangesTab();
 +}
 +}
  
  
  BrowserRootView::~BrowserRootView() = default;
  BrowserRootView::~BrowserRootView() = default;
  
  
-@@ -241,7 +256,7 @@ const char* BrowserRootView::GetClassNam
+@@ -238,7 +253,7 @@ const char* BrowserRootView::GetClassNam
  }
  }
  
  
  bool BrowserRootView::OnMouseWheel(const ui::MouseWheelEvent& event) {
  bool BrowserRootView::OnMouseWheel(const ui::MouseWheelEvent& event) {
@@ -88,4 +88,4 @@
 +
 +
    std::unique_ptr<DropInfo> drop_info_;
    std::unique_ptr<DropInfo> drop_info_;
  
  
-   base::WeakPtrFactory<BrowserRootView> weak_ptr_factory_;
+   base::WeakPtrFactory<BrowserRootView> weak_ptr_factory_{this};

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

@@ -1,6 +1,6 @@
 --- a/chrome/browser/about_flags.cc
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -223,6 +223,19 @@ const FeatureEntry::Choice kExtensionHan
+@@ -235,6 +235,19 @@ const FeatureEntry::Choice kExtensionHan
       "always-prompt-for-install"},
       "always-prompt-for-install"},
  };
  };
  
  
@@ -20,7 +20,7 @@
  const FeatureEntry::Choice kTouchEventFeatureDetectionChoices[] = {
  const FeatureEntry::Choice kTouchEventFeatureDetectionChoices[] = {
      {flags_ui::kGenericExperimentChoiceDisabled, "", ""},
      {flags_ui::kGenericExperimentChoiceDisabled, "", ""},
      {flags_ui::kGenericExperimentChoiceEnabled,
      {flags_ui::kGenericExperimentChoiceEnabled,
-@@ -3386,6 +3399,11 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -3548,6 +3561,11 @@ const FeatureEntry kFeatureEntries[] = {
       FEATURE_VALUE_TYPE(arc::kEnableUnifiedAudioFocusFeature)},
       FEATURE_VALUE_TYPE(arc::kEnableUnifiedAudioFocusFeature)},
  #endif  // defined(OS_CHROMEOS)
  #endif  // defined(OS_CHROMEOS)
  
  
@@ -34,7 +34,7 @@
       flag_descriptions::kUseAngleDescription, kOsWin,
       flag_descriptions::kUseAngleDescription, kOsWin,
 --- a/chrome/browser/ui/views/toolbar/toolbar_view.cc
 --- a/chrome/browser/ui/views/toolbar/toolbar_view.cc
 +++ b/chrome/browser/ui/views/toolbar/toolbar_view.cc
 +++ b/chrome/browser/ui/views/toolbar/toolbar_view.cc
-@@ -237,6 +237,15 @@ void ToolbarView::Init() {
+@@ -248,6 +248,15 @@ void ToolbarView::Init() {
  
  
    std::unique_ptr<ToolbarPageActionIconContainerView>
    std::unique_ptr<ToolbarPageActionIconContainerView>
        toolbar_page_action_container;
        toolbar_page_action_container;
@@ -50,7 +50,7 @@
    bool show_avatar_toolbar_button = true;
    bool show_avatar_toolbar_button = true;
    if (base::FeatureList::IsEnabled(
    if (base::FeatureList::IsEnabled(
            autofill::features::kAutofillEnableToolbarStatusChip)) {
            autofill::features::kAutofillEnableToolbarStatusChip)) {
-@@ -248,11 +257,17 @@ void ToolbarView::Init() {
+@@ -259,11 +268,17 @@ void ToolbarView::Init() {
    } else {
    } else {
  #if defined(OS_CHROMEOS)
  #if defined(OS_CHROMEOS)
      // ChromeOS only badges Incognito and Guest icons in the browser window.
      // ChromeOS only badges Incognito and Guest icons in the browser window.

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

@@ -22,7 +22,7 @@
  
  
 --- a/chrome/browser/about_flags.cc
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -1099,6 +1099,10 @@ const FeatureEntry::FeatureVariation kLa
+@@ -1193,6 +1193,10 @@ const FeatureEntry::Choice kNotification
  //
  //
  // When adding a new choice, add it to the end of the list.
  // When adding a new choice, add it to the end of the list.
  const FeatureEntry kFeatureEntries[] = {
  const FeatureEntry kFeatureEntries[] = {

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

@@ -11,7 +11,7 @@
  #include "base/compiler_specific.h"
  #include "base/compiler_specific.h"
  #include "base/containers/linked_list.h"
  #include "base/containers/linked_list.h"
  #include "base/debug/debugger.h"
  #include "base/debug/debugger.h"
-@@ -123,11 +124,6 @@ const unsigned kMinimumTTLSeconds = kCac
+@@ -122,11 +123,6 @@ const unsigned kMinimumTTLSeconds = kCac
  // cached.
  // cached.
  const int kIPv6ProbePeriodMs = 1000;
  const int kIPv6ProbePeriodMs = 1000;
  
  
@@ -23,7 +23,7 @@
  enum DnsResolveStatus {
  enum DnsResolveStatus {
    RESOLVE_STATUS_DNS_SUCCESS = 0,
    RESOLVE_STATUS_DNS_SUCCESS = 0,
    RESOLVE_STATUS_PROC_SUCCESS,
    RESOLVE_STATUS_PROC_SUCCESS,
-@@ -2953,7 +2949,7 @@ bool HostResolverManager::IsIPv6Reachabl
+@@ -3179,7 +3175,7 @@ bool HostResolverManager::IsIPv6Reachabl
    if ((tick_clock_->NowTicks() - last_ipv6_probe_time_).InMilliseconds() >
    if ((tick_clock_->NowTicks() - last_ipv6_probe_time_).InMilliseconds() >
        kIPv6ProbePeriodMs) {
        kIPv6ProbePeriodMs) {
      last_ipv6_probe_result_ =
      last_ipv6_probe_result_ =

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

@@ -16,7 +16,7 @@
 +        </cr-input>
 +        </cr-input>
        </div>
        </div>
        <div slot="button-container">
        <div slot="button-container">
-         <paper-button class="cancel-button" on-click="cancel_" id="cancel">
+         <cr-button class="cancel-button" on-click="cancel_" id="cancel">
 --- a/chrome/browser/resources/settings/search_engines_page/search_engine_dialog.js
 --- a/chrome/browser/resources/settings/search_engines_page/search_engine_dialog.js
 +++ b/chrome/browser/resources/settings/search_engines_page/search_engine_dialog.js
 +++ b/chrome/browser/resources/settings/search_engines_page/search_engine_dialog.js
 @@ -29,6 +29,9 @@ Polymer({
 @@ -29,6 +29,9 @@ Polymer({
@@ -417,7 +417,7 @@
    void ReloadIcon(int index);
    void ReloadIcon(int index);
 --- a/components/search_engines/template_url_service.cc
 --- a/components/search_engines/template_url_service.cc
 +++ b/components/search_engines/template_url_service.cc
 +++ b/components/search_engines/template_url_service.cc
-@@ -595,7 +595,8 @@ void TemplateURLService::IncrementUsageC
+@@ -609,7 +609,8 @@ void TemplateURLService::IncrementUsageC
  void TemplateURLService::ResetTemplateURL(TemplateURL* url,
  void TemplateURLService::ResetTemplateURL(TemplateURL* url,
                                            const base::string16& title,
                                            const base::string16& title,
                                            const base::string16& keyword,
                                            const base::string16& keyword,
@@ -427,7 +427,7 @@
    DCHECK(!IsCreatedByExtension(url));
    DCHECK(!IsCreatedByExtension(url));
    DCHECK(!keyword.empty());
    DCHECK(!keyword.empty());
    DCHECK(!search_url.empty());
    DCHECK(!search_url.empty());
-@@ -609,6 +610,7 @@ void TemplateURLService::ResetTemplateUR
+@@ -623,6 +624,7 @@ void TemplateURLService::ResetTemplateUR
    }
    }
    data.safe_for_autoreplace = false;
    data.safe_for_autoreplace = false;
    data.last_modified = clock_->Now();
    data.last_modified = clock_->Now();
@@ -435,7 +435,7 @@
    Update(url, TemplateURL(data));
    Update(url, TemplateURL(data));
  }
  }
  
  
-@@ -2030,7 +2032,7 @@ TemplateURL* TemplateURLService::Add(std
+@@ -2044,7 +2046,7 @@ TemplateURL* TemplateURLService::Add(std
          // Neither engine can be replaced. Uniquify the existing keyword.
          // Neither engine can be replaced. Uniquify the existing keyword.
          base::string16 new_keyword = UniquifyKeyword(*existing_turl, false);
          base::string16 new_keyword = UniquifyKeyword(*existing_turl, false);
          ResetTemplateURL(existing_turl, existing_turl->short_name(),
          ResetTemplateURL(existing_turl, existing_turl->short_name(),
@@ -446,7 +446,7 @@
      }
      }
 --- a/components/search_engines/template_url_service.h
 --- a/components/search_engines/template_url_service.h
 +++ b/components/search_engines/template_url_service.h
 +++ b/components/search_engines/template_url_service.h
-@@ -243,7 +243,8 @@ class TemplateURLService : public WebDat
+@@ -254,7 +254,8 @@ class TemplateURLService : public WebDat
    void ResetTemplateURL(TemplateURL* url,
    void ResetTemplateURL(TemplateURL* url,
                          const base::string16& title,
                          const base::string16& title,
                          const base::string16& keyword,
                          const base::string16& keyword,

+ 2 - 2
patches/extra/ungoogled-chromium/default-to-https-scheme.patch

@@ -40,7 +40,7 @@
                base::UTF16ToUTF8(http_scheme));
                base::UTF16ToUTF8(http_scheme));
  
  
      if ((http_type == metrics::OmniboxInputType::URL) &&
      if ((http_type == metrics::OmniboxInputType::URL) &&
-@@ -574,7 +574,7 @@ bool AutocompleteInput::HasHTTPScheme(co
+@@ -575,7 +575,7 @@ bool AutocompleteInput::HasHTTPScheme(co
    } else if (url::FindAndCompareScheme(utf8_input, kViewSourceScheme, &scheme)) {
    } else if (url::FindAndCompareScheme(utf8_input, kViewSourceScheme, &scheme)) {
      utf8_input.erase(0, scheme.end() + 1);
      utf8_input.erase(0, scheme.end() + 1);
    }
    }
@@ -51,7 +51,7 @@
  void AutocompleteInput::UpdateText(const base::string16& text,
  void AutocompleteInput::UpdateText(const base::string16& text,
 --- a/components/omnibox/browser/autocomplete_provider.cc
 --- a/components/omnibox/browser/autocomplete_provider.cc
 +++ b/components/omnibox/browser/autocomplete_provider.cc
 +++ b/components/omnibox/browser/autocomplete_provider.cc
-@@ -235,11 +235,11 @@ size_t AutocompleteProvider::TrimHttpPre
+@@ -233,11 +233,11 @@ size_t AutocompleteProvider::TrimHttpPre
    if (!AutocompleteInput::HasHTTPScheme(*url))
    if (!AutocompleteInput::HasHTTPScheme(*url))
      return 0;
      return 0;
    size_t scheme_pos =
    size_t scheme_pos =

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

@@ -41,41 +41,187 @@
    void SendFileOpenReply(ppapi::host::ReplyMessageContext reply_context,
    void SendFileOpenReply(ppapi::host::ReplyMessageContext reply_context,
                           base::File::Error error_code);
                           base::File::Error error_code);
  
  
+--- a/content/browser/BUILD.gn
++++ b/content/browser/BUILD.gn
+@@ -52,7 +52,6 @@ jumbo_source_set("browser") {
+     "//components/discardable_memory/service",
+     "//components/download/database",
+     "//components/download/public/common:public",
+-    "//components/download/quarantine",
+     "//components/filename_generation",
+     "//components/link_header_util",
+     "//components/metrics",
 --- a/components/download/internal/common/base_file.cc
 --- a/components/download/internal/common/base_file.cc
 +++ b/components/download/internal/common/base_file.cc
 +++ b/components/download/internal/common/base_file.cc
-@@ -22,7 +22,6 @@
+@@ -23,7 +23,6 @@
  #include "components/download/public/common/download_interrupt_reasons_utils.h"
  #include "components/download/public/common/download_interrupt_reasons_utils.h"
  #include "components/download/public/common/download_item.h"
  #include "components/download/public/common/download_item.h"
  #include "components/download/public/common/download_stats.h"
  #include "components/download/public/common/download_stats.h"
 -#include "components/download/quarantine/quarantine.h"
 -#include "components/download/quarantine/quarantine.h"
  #include "crypto/secure_hash.h"
  #include "crypto/secure_hash.h"
+ #include "services/service_manager/public/cpp/connector.h"
  
  
- #if defined(OS_ANDROID)
-@@ -516,7 +515,7 @@ DownloadInterruptReason BaseFile::Publis
+@@ -523,129 +522,12 @@ DownloadInterruptReason BaseFile::Publis
  }
  }
  #endif  // defined(OS_ANDROID)
  #endif  // defined(OS_ANDROID)
  
  
+-namespace {
+-
+-DownloadInterruptReason QuarantineFileResultToReason(
+-    quarantine::mojom::QuarantineFileResult result) {
+-  switch (result) {
+-    case quarantine::mojom::QuarantineFileResult::OK:
+-      return DOWNLOAD_INTERRUPT_REASON_NONE;
+-    case quarantine::mojom::QuarantineFileResult::VIRUS_INFECTED:
+-      return DOWNLOAD_INTERRUPT_REASON_FILE_VIRUS_INFECTED;
+-    case quarantine::mojom::QuarantineFileResult::SECURITY_CHECK_FAILED:
+-      return DOWNLOAD_INTERRUPT_REASON_FILE_SECURITY_CHECK_FAILED;
+-    case quarantine::mojom::QuarantineFileResult::BLOCKED_BY_POLICY:
+-      return DOWNLOAD_INTERRUPT_REASON_FILE_BLOCKED;
+-    case quarantine::mojom::QuarantineFileResult::ACCESS_DENIED:
+-      return DOWNLOAD_INTERRUPT_REASON_FILE_ACCESS_DENIED;
+-
+-    case quarantine::mojom::QuarantineFileResult::FILE_MISSING:
+-      // Don't have a good interrupt reason here. This return code means that
+-      // the file at |full_path_| went missing before QuarantineFile got to
+-      // look at it. Not expected to happen, but we've seen instances where a
+-      // file goes missing immediately after BaseFile closes the handle.
+-      //
+-      // Intentionally using a different error message than
+-      // SECURITY_CHECK_FAILED in order to distinguish the two.
+-      return DOWNLOAD_INTERRUPT_REASON_FILE_FAILED;
+-
+-    case quarantine::mojom::QuarantineFileResult::ANNOTATION_FAILED:
+-      // This means that the mark-of-the-web couldn't be applied. The file is
+-      // already on the file system under its final target name.
+-      //
+-      // Causes of failed annotations typically aren't transient. E.g. the
+-      // target file system may not support extended attributes or alternate
+-      // streams. We are going to allow these downloads to progress on the
+-      // assumption that failures to apply MOTW can't reliably be introduced
+-      // remotely.
+-      return DOWNLOAD_INTERRUPT_REASON_NONE;
+-  }
+-  return DOWNLOAD_INTERRUPT_REASON_FILE_FAILED;
+-}
+-
+-// Given a source and a referrer, determines the "safest" URL that can be used
+-// to determine the authority of the download source. Returns an empty URL if no
+-// HTTP/S URL can be determined for the <|source_url|, |referrer_url|> pair.
+-GURL GetEffectiveAuthorityURL(const GURL& source_url,
+-                              const GURL& referrer_url) {
+-  if (source_url.is_valid()) {
+-    // http{,s} has an authority and are supported.
+-    if (source_url.SchemeIsHTTPOrHTTPS())
+-      return source_url;
+-
+-    // If the download source is file:// ideally we should copy the MOTW from
+-    // the original file, but given that Chrome/Chromium places strict
+-    // restrictions on which schemes can reference file:// URLs, this code is
+-    // going to assume that at this point it's okay to treat this download as
+-    // being from the local system.
+-    if (source_url.SchemeIsFile())
+-      return source_url;
+-
+-    // ftp:// has an authority.
+-    if (source_url.SchemeIs(url::kFtpScheme))
+-      return source_url;
+-  }
+-
+-  if (referrer_url.is_valid() && referrer_url.SchemeIsHTTPOrHTTPS())
+-    return referrer_url;
+-
+-  return GURL();
+-}
+-
+-}  // namespace
+-
 -#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
 -#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
-+#if 0
- 
- namespace {
- 
-@@ -600,7 +599,7 @@ DownloadInterruptReason BaseFile::Annota
-   }
-   return DOWNLOAD_INTERRUPT_REASON_FILE_FAILED;
- }
+-
+-DownloadInterruptReason BaseFile::AnnotateWithSourceInformationSync(
+-    const std::string& client_guid,
+-    const GURL& source_url,
+-    const GURL& referrer_url) {
+-  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+-  DCHECK(!detached_);
+-  DCHECK(!full_path_.empty());
+-
+-  CONDITIONAL_TRACE(BEGIN0("download", "DownloadFileAnnotate"));
+-  QuarantineFileResult result = QuarantineFile(
+-      full_path_, GetEffectiveAuthorityURL(source_url, referrer_url),
+-      referrer_url, client_guid);
+-  CONDITIONAL_TRACE(END0("download", "DownloadFileAnnotate"));
+-
+-  return QuarantineFileResultToReason(result);
+-}
 -#else  // !OS_WIN && !OS_MACOSX && !OS_LINUX
 -#else  // !OS_WIN && !OS_MACOSX && !OS_LINUX
-+#else  // 1
- DownloadInterruptReason BaseFile::AnnotateWithSourceInformation(
+ DownloadInterruptReason BaseFile::AnnotateWithSourceInformationSync(
      const std::string& client_guid,
      const std::string& client_guid,
      const GURL& source_url,
      const GURL& source_url,
---- a/content/browser/BUILD.gn
-+++ b/content/browser/BUILD.gn
-@@ -52,7 +52,6 @@ jumbo_source_set("browser") {
-     "//components/discardable_memory/service",
-     "//components/download/database",
-     "//components/download/public/common:public",
--    "//components/download/quarantine",
-     "//components/filename_generation",
-     "//components/link_header_util",
-     "//components/metrics",
+     const GURL& referrer_url) {
+   return DOWNLOAD_INTERRUPT_REASON_NONE;
+ }
+-#endif
+-
+-void BaseFile::OnFileQuarantined(
+-    bool connection_error,
+-    quarantine::mojom::QuarantineFileResult result) {
+-  base::UmaHistogramBoolean("Download.QuarantineService.ConnectionError",
+-                            connection_error);
+-
+-  DCHECK(on_annotation_done_callback_);
+-  quarantine_service_.reset();
+-  std::move(on_annotation_done_callback_)
+-      .Run(QuarantineFileResultToReason(result));
+-}
+-
+-void BaseFile::OnQuarantineServiceError(const GURL& source_url,
+-                                        const GURL& referrer_url) {
+-#if defined(OS_WIN)
+-  if (base::FeatureList::IsEnabled(quarantine::kOutOfProcessQuarantine)) {
+-    OnFileQuarantined(/*connection_error=*/true,
+-                      quarantine::SetInternetZoneIdentifierDirectly(
+-                          full_path_, source_url, referrer_url));
+-    return;
+-  }
+-#endif  // defined(OS_WIN)
+-
+-  CHECK(false) << "In-process quarantine service should not have failed.";
+-}
+ 
+ void BaseFile::AnnotateWithSourceInformation(
+     const std::string& client_guid,
+@@ -653,31 +535,8 @@ void BaseFile::AnnotateWithSourceInforma
+     const GURL& referrer_url,
+     std::unique_ptr<service_manager::Connector> connector,
+     OnAnnotationDoneCallback on_annotation_done_callback) {
+-  GURL authority_url = GetEffectiveAuthorityURL(source_url, referrer_url);
+-  if (!connector) {
+-#if defined(OS_WIN)
+-    QuarantineFileResult result = quarantine::SetInternetZoneIdentifierDirectly(
+-        full_path_, authority_url, referrer_url);
+-#else
+-    QuarantineFileResult result = QuarantineFileResult::ANNOTATION_FAILED;
+-#endif
+-    std::move(on_annotation_done_callback)
+-        .Run(QuarantineFileResultToReason(result));
+-  } else {
+-    connector->BindInterface(quarantine::mojom::kServiceName,
+-                             mojo::MakeRequest(&quarantine_service_));
+-
+-    on_annotation_done_callback_ = std::move(on_annotation_done_callback);
+-
+-    quarantine_service_.set_connection_error_handler(base::BindOnce(
+-        &BaseFile::OnQuarantineServiceError, weak_factory_.GetWeakPtr(),
+-        authority_url, referrer_url));
+-
+-    quarantine_service_->QuarantineFile(
+-        full_path_, authority_url, referrer_url, client_guid,
+-        base::BindOnce(&BaseFile::OnFileQuarantined, weak_factory_.GetWeakPtr(),
+-                       false));
+-  }
++  std::move(on_annotation_done_callback)
++      .Run(DOWNLOAD_INTERRUPT_REASON_NONE);
+ }
+ 
+ }  // namespace download

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

@@ -2,7 +2,7 @@
 
 
 --- a/components/url_formatter/url_formatter.cc
 --- a/components/url_formatter/url_formatter.cc
 +++ b/components/url_formatter/url_formatter.cc
 +++ b/components/url_formatter/url_formatter.cc
-@@ -424,14 +424,14 @@ bool IDNToUnicodeOneComponent(const base
+@@ -434,14 +434,14 @@ bool IDNToUnicodeOneComponent(const base
  }  // namespace
  }  // namespace
  
  
  const FormatUrlType kFormatUrlOmitNothing = 0;
  const FormatUrlType kFormatUrlOmitNothing = 0;

+ 1 - 1
patches/extra/ungoogled-chromium/disable-intranet-redirect-detector.patch

@@ -3,7 +3,7 @@
 
 
 --- a/chrome/browser/intranet_redirect_detector.cc
 --- a/chrome/browser/intranet_redirect_detector.cc
 +++ b/chrome/browser/intranet_redirect_detector.cc
 +++ b/chrome/browser/intranet_redirect_detector.cc
-@@ -76,9 +76,7 @@ void IntranetRedirectDetector::FinishSle
+@@ -75,9 +75,7 @@ void IntranetRedirectDetector::FinishSle
    simple_loaders_.clear();
    simple_loaders_.clear();
    resulting_origins_.clear();
    resulting_origins_.clear();
  
  

+ 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
 --- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc
 +++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc
 +++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc
-@@ -3337,16 +3337,14 @@ ScriptValue WebGLRenderingContextBase::g
+@@ -3330,16 +3330,14 @@ ScriptValue WebGLRenderingContextBase::g
        return ScriptValue::CreateNull(script_state);
        return ScriptValue::CreateNull(script_state);
      case WebGLDebugRendererInfo::kUnmaskedRendererWebgl:
      case WebGLDebugRendererInfo::kUnmaskedRendererWebgl:
        if (ExtensionEnabled(kWebGLDebugRendererInfoName))
        if (ExtensionEnabled(kWebGLDebugRendererInfoName))

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

@@ -17,7 +17,7 @@
  bool IsURLHandledByNetworkStack(const GURL& url) {
  bool IsURLHandledByNetworkStack(const GURL& url) {
 --- a/chrome/browser/ui/browser_commands.cc
 --- a/chrome/browser/ui/browser_commands.cc
 +++ b/chrome/browser/ui/browser_commands.cc
 +++ b/chrome/browser/ui/browser_commands.cc
-@@ -379,12 +379,6 @@ int GetContentRestrictions(const Browser
+@@ -381,12 +381,6 @@ int GetContentRestrictions(const Browser
      CoreTabHelper* core_tab_helper =
      CoreTabHelper* core_tab_helper =
          CoreTabHelper::FromWebContents(current_tab);
          CoreTabHelper::FromWebContents(current_tab);
      content_restrictions = core_tab_helper->content_restrictions();
      content_restrictions = core_tab_helper->content_restrictions();
@@ -30,7 +30,7 @@
      if (current_tab->ShowingInterstitialPage())
      if (current_tab->ShowingInterstitialPage())
        content_restrictions |= CONTENT_RESTRICTION_PRINT;
        content_restrictions |= CONTENT_RESTRICTION_PRINT;
    }
    }
-@@ -976,8 +970,7 @@ bool CanSavePage(const Browser* browser)
+@@ -979,8 +973,7 @@ bool CanSavePage(const Browser* browser)
            prefs::kAllowFileSelectionDialogs)) {
            prefs::kAllowFileSelectionDialogs)) {
      return false;
      return false;
    }
    }
@@ -42,7 +42,7 @@
  void ShowFindBar(Browser* browser) {
  void ShowFindBar(Browser* browser) {
 --- a/components/offline_pages/core/offline_page_model.cc
 --- a/components/offline_pages/core/offline_page_model.cc
 +++ b/components/offline_pages/core/offline_page_model.cc
 +++ b/components/offline_pages/core/offline_page_model.cc
-@@ -21,7 +21,7 @@ OfflinePageModel::SavePageParams::~SaveP
+@@ -22,7 +22,7 @@ OfflinePageModel::SavePageParams::~SaveP
  
  
  // static
  // static
  bool OfflinePageModel::CanSaveURL(const GURL& url) {
  bool OfflinePageModel::CanSaveURL(const GURL& url) {

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

@@ -1,6 +1,6 @@
 --- a/chrome/browser/ui/views/tabs/new_tab_button.cc
 --- a/chrome/browser/ui/views/tabs/new_tab_button.cc
 +++ b/chrome/browser/ui/views/tabs/new_tab_button.cc
 +++ b/chrome/browser/ui/views/tabs/new_tab_button.cc
-@@ -69,10 +69,8 @@ const gfx::Size NewTabButton::kButtonSiz
+@@ -68,10 +68,8 @@ const gfx::Size NewTabButton::kButtonSiz
  NewTabButton::NewTabButton(TabStrip* tab_strip, views::ButtonListener* listener)
  NewTabButton::NewTabButton(TabStrip* tab_strip, views::ButtonListener* listener)
      : views::ImageButton(listener), tab_strip_(tab_strip) {
      : views::ImageButton(listener), tab_strip_(tab_strip) {
    set_animate_on_state_change(true);
    set_animate_on_state_change(true);
@@ -13,16 +13,16 @@
        AddChildView(std::make_unique<views::InkDropContainerView>());
        AddChildView(std::make_unique<views::InkDropContainerView>());
 --- a/chrome/browser/ui/views/tabs/tab_strip.cc
 --- a/chrome/browser/ui/views/tabs/tab_strip.cc
 +++ b/chrome/browser/ui/views/tabs/tab_strip.cc
 +++ b/chrome/browser/ui/views/tabs/tab_strip.cc
-@@ -2816,15 +2816,12 @@ void TabStrip::ButtonPressed(views::Butt
+@@ -2906,15 +2906,12 @@ void TabStrip::ButtonPressed(views::Butt
      if (event.IsMouseEvent()) {
      if (event.IsMouseEvent()) {
        const ui::MouseEvent& mouse = static_cast<const ui::MouseEvent&>(event);
        const ui::MouseEvent& mouse = static_cast<const ui::MouseEvent&>(event);
        if (mouse.IsOnlyMiddleMouseButton()) {
        if (mouse.IsOnlyMiddleMouseButton()) {
 -        if (ui::Clipboard::IsSupportedClipboardType(
 -        if (ui::Clipboard::IsSupportedClipboardType(
--                ui::CLIPBOARD_TYPE_SELECTION)) {
+-                ui::ClipboardType::kSelection)) {
            ui::Clipboard* clipboard = ui::Clipboard::GetForCurrentThread();
            ui::Clipboard* clipboard = ui::Clipboard::GetForCurrentThread();
            CHECK(clipboard);
            CHECK(clipboard);
            base::string16 clipboard_text;
            base::string16 clipboard_text;
-           clipboard->ReadText(ui::CLIPBOARD_TYPE_SELECTION, &clipboard_text);
+           clipboard->ReadText(ui::ClipboardType::kSelection, &clipboard_text);
            if (!clipboard_text.empty())
            if (!clipboard_text.empty())
              controller_->CreateNewTabWithLocation(clipboard_text);
              controller_->CreateNewTabWithLocation(clipboard_text);
 -        }
 -        }

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

@@ -2,10 +2,11 @@
 
 
 --- a/chrome/browser/media/router/discovery/mdns/dns_sd_device_lister.cc
 --- a/chrome/browser/media/router/discovery/mdns/dns_sd_device_lister.cc
 +++ b/chrome/browser/media/router/discovery/mdns/dns_sd_device_lister.cc
 +++ b/chrome/browser/media/router/discovery/mdns/dns_sd_device_lister.cc
-@@ -37,48 +37,22 @@ DnsSdDeviceLister::DnsSdDeviceLister(
+@@ -44,50 +44,22 @@ DnsSdDeviceLister::DnsSdDeviceLister(
  DnsSdDeviceLister::~DnsSdDeviceLister() {}
  DnsSdDeviceLister::~DnsSdDeviceLister() {}
  
  
  void DnsSdDeviceLister::Discover() {
  void DnsSdDeviceLister::Discover() {
+-#if BUILDFLAG(ENABLE_SERVICE_DISCOVERY)
 -  if (!device_lister_) {
 -  if (!device_lister_) {
 -    device_lister_ = local_discovery::ServiceDiscoveryDeviceLister::Create(
 -    device_lister_ = local_discovery::ServiceDiscoveryDeviceLister::Create(
 -        this, service_discovery_client_, service_type_);
 -        this, service_discovery_client_, service_type_);
@@ -16,6 +17,7 @@
 -  device_lister_->DiscoverNewDevices();
 -  device_lister_->DiscoverNewDevices();
 -  VLOG(1) << "Discovery new devices for service type "
 -  VLOG(1) << "Discovery new devices for service type "
 -          << device_lister_->service_type();
 -          << device_lister_->service_type();
+-#endif
  }
  }
  
  
  void DnsSdDeviceLister::Reset() {
  void DnsSdDeviceLister::Reset() {

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

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

+ 0 - 1
patches/series

@@ -47,7 +47,6 @@ extra/inox-patchset/0018-disable-first-run-behaviour.patch
 extra/inox-patchset/0019-disable-battery-status-service.patch
 extra/inox-patchset/0019-disable-battery-status-service.patch
 extra/debian_buster/gn/parallel.patch
 extra/debian_buster/gn/parallel.patch
 extra/debian_buster/fixes/ps-print.patch
 extra/debian_buster/fixes/ps-print.patch
-extra/debian_buster/fixes/inspector.patch
 extra/debian_buster/fixes/connection-message.patch
 extra/debian_buster/fixes/connection-message.patch
 extra/debian_buster/disable/android.patch
 extra/debian_buster/disable/android.patch
 extra/debian_buster/disable/fuzzers.patch
 extra/debian_buster/disable/fuzzers.patch