summaryrefslogtreecommitdiff
path: root/www/chromium-uc/patches/extra
diff options
context:
space:
mode:
Diffstat (limited to 'www/chromium-uc/patches/extra')
-rw-r--r--www/chromium-uc/patches/extra/bromite/fingerprinting-flags-client-rects-and-measuretext.patch132
-rw-r--r--www/chromium-uc/patches/extra/bromite/flag-fingerprinting-canvas-image-data-noise.patch66
-rw-r--r--www/chromium-uc/patches/extra/bromite/flag-max-connections-per-host.patch64
-rw-r--r--www/chromium-uc/patches/extra/debian/disable/google-api-warning.patch6
-rw-r--r--www/chromium-uc/patches/extra/debian/disable/welcome-page.patch8
-rw-r--r--www/chromium-uc/patches/extra/debian/fixes/connection-message.patch4
-rw-r--r--www/chromium-uc/patches/extra/debian/gn/parallel.patch4
-rw-r--r--www/chromium-uc/patches/extra/inox-patchset/0006-modify-default-prefs.patch108
-rw-r--r--www/chromium-uc/patches/extra/inox-patchset/0008-restore-classic-ntp.patch10
-rw-r--r--www/chromium-uc/patches/extra/inox-patchset/0013-disable-missing-key-warning.patch4
-rw-r--r--www/chromium-uc/patches/extra/inox-patchset/0016-chromium-sandbox-pie.patch6
-rw-r--r--www/chromium-uc/patches/extra/inox-patchset/0018-disable-first-run-behaviour.patch6
-rw-r--r--www/chromium-uc/patches/extra/inox-patchset/0019-disable-battery-status-service.patch10
-rw-r--r--www/chromium-uc/patches/extra/iridium-browser/Remove-EV-certificates.patch26
-rw-r--r--www/chromium-uc/patches/extra/iridium-browser/browser-disable-profile-auto-import-on-first-run.patch14
-rw-r--r--www/chromium-uc/patches/extra/iridium-browser/mime_util-force-text-x-suse-ymp-to-be-downloaded.patch4
-rw-r--r--www/chromium-uc/patches/extra/iridium-browser/net-cert-increase-default-key-length-for-newly-gener.patch6
-rw-r--r--www/chromium-uc/patches/extra/iridium-browser/prefs-always-prompt-for-download-directory-by-defaul.patch6
-rw-r--r--www/chromium-uc/patches/extra/iridium-browser/prefs-only-keep-cookies-until-exit.patch10
-rw-r--r--www/chromium-uc/patches/extra/iridium-browser/updater-disable-auto-update.patch4
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-components-ungoogled.patch6
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-extra-channel-info.patch4
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-bookmark-bar-ntp.patch14
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-close-confirmation.patch34
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-custom-ntp.patch22
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-grab-handle.patch12
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-omnibox-autocomplete-filtering.patch30
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-pdf-plugin-name.patch82
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-qr-generator.patch32
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-search-engine-collection.patch38
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-tab-hover-cards.patch24
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-tabsearch-button.patch26
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-clear-data-on-exit.patch36
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-close-window-with-last-tab.patch18
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-configure-extension-downloading.patch34
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-convert-popups-to-tabs.patch27
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-disable-beforeunload.patch14
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-disable-local-history-expiration.patch12
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-force-punycode-hostnames.patch16
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-hide-crashed-bubble.patch20
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-hide-tab-close-buttons.patch38
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-scroll-tabs.patch22
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-show-avatar-button.patch18
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-stack-tabs.patch33
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-ipv6-probing-option.patch32
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-suggestions-url-field.patch116
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/add-ungoogled-flag-headers.patch18
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/disable-dial-repeating-discovery.patch18
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/disable-download-quarantine.patch73
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/disable-formatting-in-omnibox.patch6
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/disable-intranet-redirect-detector.patch4
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/disable-remote-optimization-guide.patch11
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/disable-webgl-renderer-info.patch8
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/enable-default-prefetch-privacy-changes.patch6
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/enable-menu-on-reload-button.patch6
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/enable-page-saving-on-more-pages.patch29
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/enable-paste-and-go-new-tab-button.patch16
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/fix-building-without-mdns-and-service-discovery.patch4
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/fix-distilled-icons.patch4
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/keep-expired-flags.patch8
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/prepopulated-search-engines.patch10
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/remove-disable-setuid-sandbox-as-bad-flag.patch8
-rw-r--r--www/chromium-uc/patches/extra/ungoogled-chromium/remove-uneeded-ui.patch177
63 files changed, 799 insertions, 865 deletions
diff --git a/www/chromium-uc/patches/extra/bromite/fingerprinting-flags-client-rects-and-measuretext.patch b/www/chromium-uc/patches/extra/bromite/fingerprinting-flags-client-rects-and-measuretext.patch
index 2d6821f..59fbb6d 100644
--- a/www/chromium-uc/patches/extra/bromite/fingerprinting-flags-client-rects-and-measuretext.patch
+++ b/www/chromium-uc/patches/extra/bromite/fingerprinting-flags-client-rects-and-measuretext.patch
@@ -7,9 +7,9 @@
7# 7#
8# Unlike the latest Bromite patch, it was chosen to not regenerate the noise value each time the value is read to prevent potential efficiency issues with the load on the RNG. 8# Unlike the latest Bromite patch, it was chosen to not regenerate the noise value each time the value is read to prevent potential efficiency issues with the load on the RNG.
9 9
10--- chrome/browser/BUILD.gn.orig 10--- a/chrome/browser/BUILD.gn
11+++ chrome/browser/BUILD.gn 11+++ b/chrome/browser/BUILD.gn
12@@ -2370,6 +2370,7 @@ static_library("browser") { 12@@ -2350,6 +2350,7 @@ static_library("browser") {
13 "//third_party/libyuv", 13 "//third_party/libyuv",
14 "//third_party/metrics_proto", 14 "//third_party/metrics_proto",
15 "//third_party/re2", 15 "//third_party/re2",
@@ -17,9 +17,9 @@
17 "//third_party/webrtc_overrides:webrtc_component", 17 "//third_party/webrtc_overrides:webrtc_component",
18 "//third_party/widevine/cdm:buildflags", 18 "//third_party/widevine/cdm:buildflags",
19 "//third_party/widevine/cdm:headers", 19 "//third_party/widevine/cdm:headers",
20--- chrome/browser/about_flags.cc.orig 20--- a/chrome/browser/about_flags.cc
21+++ chrome/browser/about_flags.cc 21+++ b/chrome/browser/about_flags.cc
22@@ -151,6 +151,7 @@ 22@@ -150,6 +150,7 @@
23 #include "components/translate/core/browser/translate_ranker_impl.h" 23 #include "components/translate/core/browser/translate_ranker_impl.h"
24 #include "components/translate/core/common/translate_util.h" 24 #include "components/translate/core/common/translate_util.h"
25 #include "components/ui_devtools/switches.h" 25 #include "components/ui_devtools/switches.h"
@@ -27,8 +27,8 @@
27 #include "components/version_info/version_info.h" 27 #include "components/version_info/version_info.h"
28 #include "components/viz/common/features.h" 28 #include "components/viz/common/features.h"
29 #include "components/viz/common/switches.h" 29 #include "components/viz/common/switches.h"
30--- chrome/browser/bromite_flag_entries.h.orig 30--- a/chrome/browser/bromite_flag_entries.h
31+++ chrome/browser/bromite_flag_entries.h 31+++ b/chrome/browser/bromite_flag_entries.h
32@@ -4,4 +4,12 @@ 32@@ -4,4 +4,12 @@
33 33
34 #ifndef CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_ 34 #ifndef CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_
@@ -42,9 +42,9 @@
42+ "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. ungoogled-chromium flag, Bromite feature.", 42+ "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. ungoogled-chromium flag, Bromite feature.",
43+ kOsAll, SINGLE_VALUE_TYPE(switches::kFingerprintingCanvasMeasureTextNoise)}, 43+ kOsAll, SINGLE_VALUE_TYPE(switches::kFingerprintingCanvasMeasureTextNoise)},
44 #endif // CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_ 44 #endif // CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_
45--- content/browser/BUILD.gn.orig 45--- a/content/browser/BUILD.gn
46+++ content/browser/BUILD.gn 46+++ b/content/browser/BUILD.gn
47@@ -222,6 +222,7 @@ source_set("browser") { 47@@ -226,6 +226,7 @@ source_set("browser") {
48 "//third_party/libyuv", 48 "//third_party/libyuv",
49 "//third_party/re2", 49 "//third_party/re2",
50 "//third_party/sqlite", 50 "//third_party/sqlite",
@@ -52,9 +52,9 @@
52 "//third_party/webrtc_overrides:webrtc_component", 52 "//third_party/webrtc_overrides:webrtc_component",
53 "//third_party/wtl", 53 "//third_party/wtl",
54 "//third_party/zlib", 54 "//third_party/zlib",
55--- content/browser/renderer_host/render_process_host_impl.cc.orig 55--- a/content/browser/renderer_host/render_process_host_impl.cc
56+++ content/browser/renderer_host/render_process_host_impl.cc 56+++ b/content/browser/renderer_host/render_process_host_impl.cc
57@@ -68,6 +68,7 @@ 57@@ -74,6 +74,7 @@
58 #include "components/services/storage/public/mojom/cache_storage_control.mojom.h" 58 #include "components/services/storage/public/mojom/cache_storage_control.mojom.h"
59 #include "components/services/storage/public/mojom/indexed_db_control.mojom.h" 59 #include "components/services/storage/public/mojom/indexed_db_control.mojom.h"
60 #include "components/tracing/common/tracing_switches.h" 60 #include "components/tracing/common/tracing_switches.h"
@@ -62,7 +62,7 @@
62 #include "components/viz/common/switches.h" 62 #include "components/viz/common/switches.h"
63 #include "components/viz/host/gpu_client.h" 63 #include "components/viz/host/gpu_client.h"
64 #include "content/browser/bad_message.h" 64 #include "content/browser/bad_message.h"
65@@ -3465,6 +3466,8 @@ void RenderProcessHostImpl::PropagateBro 65@@ -3363,6 +3364,8 @@ void RenderProcessHostImpl::PropagateBro
66 switches::kEnableWebGLDraftExtensions, 66 switches::kEnableWebGLDraftExtensions,
67 switches::kEnableWebGLImageChromium, 67 switches::kEnableWebGLImageChromium,
68 switches::kFileUrlPathAlias, 68 switches::kFileUrlPathAlias,
@@ -71,8 +71,8 @@
71 switches::kForceDeviceScaleFactor, 71 switches::kForceDeviceScaleFactor,
72 switches::kForceDisplayColorProfile, 72 switches::kForceDisplayColorProfile,
73 switches::kForceGpuMemAvailableMb, 73 switches::kForceGpuMemAvailableMb,
74--- content/child/BUILD.gn.orig 74--- a/content/child/BUILD.gn
75+++ content/child/BUILD.gn 75+++ b/content/child/BUILD.gn
76@@ -103,6 +103,7 @@ target(link_target_type, "child") { 76@@ -103,6 +103,7 @@ target(link_target_type, "child") {
77 "//third_party/blink/public/common", 77 "//third_party/blink/public/common",
78 "//third_party/blink/public/strings", 78 "//third_party/blink/public/strings",
@@ -81,9 +81,9 @@
81 "//third_party/zlib/google:compression_utils", 81 "//third_party/zlib/google:compression_utils",
82 "//ui/base", 82 "//ui/base",
83 "//ui/events/blink", 83 "//ui/events/blink",
84--- content/child/runtime_features.cc.orig 84--- a/content/child/runtime_features.cc
85+++ content/child/runtime_features.cc 85+++ b/content/child/runtime_features.cc
86@@ -31,6 +31,7 @@ 86@@ -32,6 +32,7 @@
87 #include "third_party/blink/public/common/loader/referrer_utils.h" 87 #include "third_party/blink/public/common/loader/referrer_utils.h"
88 #include "third_party/blink/public/common/switches.h" 88 #include "third_party/blink/public/common/switches.h"
89 #include "third_party/blink/public/platform/web_runtime_features.h" 89 #include "third_party/blink/public/platform/web_runtime_features.h"
@@ -91,10 +91,10 @@
91 #include "ui/accessibility/accessibility_features.h" 91 #include "ui/accessibility/accessibility_features.h"
92 #include "ui/base/ui_base_features.h" 92 #include "ui/base/ui_base_features.h"
93 #include "ui/events/blink/blink_features.h" 93 #include "ui/events/blink/blink_features.h"
94@@ -466,6 +467,10 @@ void SetRuntimeFeaturesFromCommandLine(c 94@@ -486,6 +487,10 @@ void SetRuntimeFeaturesFromCommandLine(c
95 {wrf::EnableWebGPU, switches::kEnableUnsafeWebGPU, true},
96 {wrf::ForceOverlayFullscreenVideo, switches::kForceOverlayFullscreenVideo, 95 {wrf::ForceOverlayFullscreenVideo, switches::kForceOverlayFullscreenVideo,
97 true}, 96 true},
97 {wrf::EnableDirectSockets, switches::kRestrictedApiOrigins, false},
98+ {wrf::EnableFingerprintingClientRectsNoise, 98+ {wrf::EnableFingerprintingClientRectsNoise,
99+ switches::kFingerprintingClientRectsNoise, true}, 99+ switches::kFingerprintingClientRectsNoise, true},
100+ {wrf::EnableFingerprintingCanvasMeasureTextNoise, 100+ {wrf::EnableFingerprintingCanvasMeasureTextNoise,
@@ -102,9 +102,9 @@
102 }; 102 };
103 for (const auto& mapping : switchToFeatureMapping) { 103 for (const auto& mapping : switchToFeatureMapping) {
104 if (command_line.HasSwitch(mapping.switch_name)) 104 if (command_line.HasSwitch(mapping.switch_name))
105--- third_party/blink/public/platform/web_runtime_features.h.orig 105--- a/third_party/blink/public/platform/web_runtime_features.h
106+++ third_party/blink/public/platform/web_runtime_features.h 106+++ b/third_party/blink/public/platform/web_runtime_features.h
107@@ -218,6 +218,8 @@ class WebRuntimeFeatures { 107@@ -212,6 +212,8 @@ class WebRuntimeFeatures {
108 BLINK_PLATFORM_EXPORT static void EnableMediaControlsExpandGesture(bool); 108 BLINK_PLATFORM_EXPORT static void EnableMediaControlsExpandGesture(bool);
109 BLINK_PLATFORM_EXPORT static void EnableGetDisplayMedia(bool); 109 BLINK_PLATFORM_EXPORT static void EnableGetDisplayMedia(bool);
110 BLINK_PLATFORM_EXPORT static void EnableAllowSyncXHRInPageDismissal(bool); 110 BLINK_PLATFORM_EXPORT static void EnableAllowSyncXHRInPageDismissal(bool);
@@ -113,8 +113,8 @@
113 BLINK_PLATFORM_EXPORT static void EnableSignedExchangeSubresourcePrefetch( 113 BLINK_PLATFORM_EXPORT static void EnableSignedExchangeSubresourcePrefetch(
114 bool); 114 bool);
115 BLINK_PLATFORM_EXPORT static void EnableSubresourceWebBundles(bool); 115 BLINK_PLATFORM_EXPORT static void EnableSubresourceWebBundles(bool);
116--- third_party/blink/renderer/core/dom/document.cc.orig 116--- a/third_party/blink/renderer/core/dom/document.cc
117+++ third_party/blink/renderer/core/dom/document.cc 117+++ b/third_party/blink/renderer/core/dom/document.cc
118@@ -42,6 +42,7 @@ 118@@ -42,6 +42,7 @@
119 #include "base/containers/contains.h" 119 #include "base/containers/contains.h"
120 #include "base/debug/dump_without_crashing.h" 120 #include "base/debug/dump_without_crashing.h"
@@ -123,7 +123,7 @@
123 #include "base/time/time.h" 123 #include "base/time/time.h"
124 #include "cc/input/overscroll_behavior.h" 124 #include "cc/input/overscroll_behavior.h"
125 #include "cc/input/scroll_snap_data.h" 125 #include "cc/input/scroll_snap_data.h"
126@@ -855,6 +856,14 @@ Range* Document::CreateRangeAdjustedToTr 126@@ -871,6 +872,14 @@ Range* Document::CreateRangeAdjustedToTr
127 Position::BeforeNode(*shadow_host)); 127 Position::BeforeNode(*shadow_host));
128 } 128 }
129 129
@@ -138,7 +138,7 @@
138 SelectorQueryCache& Document::GetSelectorQueryCache() { 138 SelectorQueryCache& Document::GetSelectorQueryCache() {
139 if (!selector_query_cache_) 139 if (!selector_query_cache_)
140 selector_query_cache_ = std::make_unique<SelectorQueryCache>(); 140 selector_query_cache_ = std::make_unique<SelectorQueryCache>();
141@@ -2145,6 +2154,15 @@ void Document::UpdateStyleAndLayoutTreeF 141@@ -2166,6 +2175,15 @@ void Document::UpdateStyleAndLayoutTreeF
142 #if DCHECK_IS_ON() 142 #if DCHECK_IS_ON()
143 AssertLayoutTreeUpdated(*this, true /* allow_dirty_container_subtrees */); 143 AssertLayoutTreeUpdated(*this, true /* allow_dirty_container_subtrees */);
144 #endif 144 #endif
@@ -154,9 +154,9 @@
154 } 154 }
155 155
156 void Document::InvalidateStyleAndLayoutForFontUpdates() { 156 void Document::InvalidateStyleAndLayoutForFontUpdates() {
157--- third_party/blink/renderer/core/dom/document.h.orig 157--- a/third_party/blink/renderer/core/dom/document.h
158+++ third_party/blink/renderer/core/dom/document.h 158+++ b/third_party/blink/renderer/core/dom/document.h
159@@ -456,6 +456,10 @@ class CORE_EXPORT Document : public Cont 159@@ -478,6 +478,10 @@ class CORE_EXPORT Document : public Cont
160 has_xml_declaration_ = has_xml_declaration ? 1 : 0; 160 has_xml_declaration_ = has_xml_declaration ? 1 : 0;
161 } 161 }
162 162
@@ -167,7 +167,7 @@
167 AtomicString visibilityState() const; 167 AtomicString visibilityState() const;
168 bool IsPageVisible() const; 168 bool IsPageVisible() const;
169 bool hidden() const; 169 bool hidden() const;
170@@ -2078,6 +2082,9 @@ class CORE_EXPORT Document : public Cont 170@@ -2137,6 +2141,9 @@ class CORE_EXPORT Document : public Cont
171 171
172 base::ElapsedTimer start_time_; 172 base::ElapsedTimer start_time_;
173 173
@@ -177,38 +177,38 @@
177 Member<ScriptRunner> script_runner_; 177 Member<ScriptRunner> script_runner_;
178 178
179 HeapVector<Member<ScriptElementBase>> current_script_stack_; 179 HeapVector<Member<ScriptElementBase>> current_script_stack_;
180--- third_party/blink/renderer/core/dom/element.cc.orig 180--- a/third_party/blink/renderer/core/dom/element.cc
181+++ third_party/blink/renderer/core/dom/element.cc 181+++ b/third_party/blink/renderer/core/dom/element.cc
182@@ -2114,6 +2114,11 @@ DOMRectList* Element::getClientRects() { 182@@ -2090,6 +2090,11 @@ DOMRectList* Element::getClientRects() {
183 DCHECK(element_layout_object); 183 DCHECK(element_layout_object);
184 GetDocument().AdjustFloatQuadsForScrollAndAbsoluteZoom( 184 GetDocument().AdjustQuadsForScrollAndAbsoluteZoom(quads,
185 quads, *element_layout_object); 185 *element_layout_object);
186+ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) { 186+ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) {
187+ for (FloatQuad& quad : quads) { 187+ for (gfx::QuadF& quad : quads) {
188+ quad.Scale(GetDocument().GetNoiseFactorX(), GetDocument().GetNoiseFactorY()); 188+ quad.Scale(GetDocument().GetNoiseFactorX(), GetDocument().GetNoiseFactorY());
189+ } 189+ }
190+ } 190+ }
191 return MakeGarbageCollected<DOMRectList>(quads); 191 return MakeGarbageCollected<DOMRectList>(quads);
192 } 192 }
193 193
194@@ -2131,6 +2136,9 @@ FloatRect Element::GetBoundingClientRect 194@@ -2107,6 +2112,9 @@ gfx::RectF Element::GetBoundingClientRec
195 DCHECK(element_layout_object); 195 DCHECK(element_layout_object);
196 GetDocument().AdjustFloatRectForScrollAndAbsoluteZoom(result, 196 GetDocument().AdjustRectForScrollAndAbsoluteZoom(result,
197 *element_layout_object); 197 *element_layout_object);
198+ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) { 198+ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) {
199+ result.Scale(GetDocument().GetNoiseFactorX(), GetDocument().GetNoiseFactorY()); 199+ result.Scale(GetDocument().GetNoiseFactorX(), GetDocument().GetNoiseFactorY());
200+ } 200+ }
201 return result; 201 return result;
202 } 202 }
203 203
204--- third_party/blink/renderer/core/dom/range.cc.orig 204--- a/third_party/blink/renderer/core/dom/range.cc
205+++ third_party/blink/renderer/core/dom/range.cc 205+++ b/third_party/blink/renderer/core/dom/range.cc
206@@ -1598,11 +1598,21 @@ DOMRectList* Range::getClientRects() con 206@@ -1598,11 +1598,21 @@ DOMRectList* Range::getClientRects() con
207 Vector<FloatQuad> quads; 207 Vector<gfx::QuadF> quads;
208 GetBorderAndTextQuads(quads); 208 GetBorderAndTextQuads(quads);
209 209
210+ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) { 210+ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) {
211+ for (FloatQuad& quad : quads) { 211+ for (gfx::QuadF& quad : quads) {
212+ quad.Scale(owner_document_->GetNoiseFactorX(), owner_document_->GetNoiseFactorY()); 212+ quad.Scale(owner_document_->GetNoiseFactorX(), owner_document_->GetNoiseFactorY());
213+ } 213+ }
214+ } 214+ }
@@ -217,17 +217,17 @@
217 } 217 }
218 218
219 DOMRect* Range::getBoundingClientRect() const { 219 DOMRect* Range::getBoundingClientRect() const {
220- return DOMRect::FromFloatRect(BoundingRect()); 220- return DOMRect::FromRectF(BoundingRect());
221+ auto rect = BoundingRect(); 221+ auto rect = BoundingRect();
222+ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) { 222+ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) {
223+ rect.Scale(owner_document_->GetNoiseFactorX(), owner_document_->GetNoiseFactorY()); 223+ rect.Scale(owner_document_->GetNoiseFactorX(), owner_document_->GetNoiseFactorY());
224+ } 224+ }
225+ return DOMRect::FromFloatRect(rect); 225+ return DOMRect::FromRectF(rect);
226 } 226 }
227 227
228 // TODO(editing-dev): We should make 228 // TODO(editing-dev): We should make
229--- third_party/blink/renderer/core/html/canvas/text_metrics.cc.orig 229--- a/third_party/blink/renderer/core/html/canvas/text_metrics.cc
230+++ third_party/blink/renderer/core/html/canvas/text_metrics.cc 230+++ b/third_party/blink/renderer/core/html/canvas/text_metrics.cc
231@@ -55,6 +55,24 @@ TextMetrics::TextMetrics(const Font& fon 231@@ -55,6 +55,24 @@ TextMetrics::TextMetrics(const Font& fon
232 Update(font, direction, baseline, align, text); 232 Update(font, direction, baseline, align, text);
233 } 233 }
@@ -253,8 +253,8 @@
253 void TextMetrics::Update(const Font& font, 253 void TextMetrics::Update(const Font& font,
254 const TextDirection& direction, 254 const TextDirection& direction,
255 const TextBaseline& baseline, 255 const TextBaseline& baseline,
256--- third_party/blink/renderer/core/html/canvas/text_metrics.h.orig 256--- a/third_party/blink/renderer/core/html/canvas/text_metrics.h
257+++ third_party/blink/renderer/core/html/canvas/text_metrics.h 257+++ b/third_party/blink/renderer/core/html/canvas/text_metrics.h
258@@ -64,6 +64,8 @@ class CORE_EXPORT TextMetrics final : pu 258@@ -64,6 +64,8 @@ class CORE_EXPORT TextMetrics final : pu
259 259
260 void Trace(Visitor*) const override; 260 void Trace(Visitor*) const override;
@@ -264,9 +264,9 @@
264 private: 264 private:
265 void Update(const Font&, 265 void Update(const Font&,
266 const TextDirection&, 266 const TextDirection&,
267--- third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc.orig 267--- a/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc
268+++ third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc 268+++ b/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc
269@@ -912,9 +912,15 @@ TextMetrics* CanvasRenderingContext2D::m 269@@ -923,9 +923,15 @@ TextMetrics* CanvasRenderingContext2D::m
270 TextDirection direction = 270 TextDirection direction =
271 ToTextDirection(GetState().GetDirection(), canvas()); 271 ToTextDirection(GetState().GetDirection(), canvas());
272 272
@@ -283,19 +283,19 @@
283 } 283 }
284 284
285 void CanvasRenderingContext2D::fillFormattedText( 285 void CanvasRenderingContext2D::fillFormattedText(
286--- third_party/blink/renderer/platform/BUILD.gn.orig 286--- a/third_party/blink/renderer/platform/BUILD.gn
287+++ third_party/blink/renderer/platform/BUILD.gn 287+++ b/third_party/blink/renderer/platform/BUILD.gn
288@@ -1686,6 +1686,7 @@ component("platform") { 288@@ -1665,6 +1665,7 @@ component("platform") {
289 "//components/paint_preview/common", 289 "//components/paint_preview/common",
290 "//components/power_scheduler", 290 "//components/power_scheduler",
291 "//components/search_engines:search_engine_utils", 291 "//components/search_engines:search_engine_utils",
292+ "//components/ungoogled:ungoogled_switches", 292+ "//components/ungoogled:ungoogled_switches",
293 "//components/viz/client", 293 "//components/viz/client",
294 "//components/viz/common", 294 "//components/viz/common",
295 "//crypto", 295 "//components/webrtc:net_address_utils",
296--- third_party/blink/renderer/platform/exported/web_runtime_features.cc.orig 296--- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
297+++ third_party/blink/renderer/platform/exported/web_runtime_features.cc 297+++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
298@@ -689,4 +689,12 @@ void WebRuntimeFeatures::EnableCLSScroll 298@@ -659,4 +659,12 @@ void WebRuntimeFeatures::EnableCLSScroll
299 RuntimeEnabledFeatures::SetCLSScrollAnchoringEnabled(enable); 299 RuntimeEnabledFeatures::SetCLSScrollAnchoringEnabled(enable);
300 } 300 }
301 301
@@ -308,10 +308,10 @@
308+} 308+}
309+ 309+
310 } // namespace blink 310 } // namespace blink
311--- third_party/blink/renderer/platform/runtime_enabled_features.json5.orig 311--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
312+++ third_party/blink/renderer/platform/runtime_enabled_features.json5 312+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
313@@ -1076,6 +1076,12 @@ 313@@ -1118,6 +1118,12 @@
314 origin_trial_feature_name: "Fledge", 314 name: "Focusgroup",
315 }, 315 },
316 { 316 {
317+ name: "FingerprintingClientRectsNoise", 317+ name: "FingerprintingClientRectsNoise",
diff --git a/www/chromium-uc/patches/extra/bromite/flag-fingerprinting-canvas-image-data-noise.patch b/www/chromium-uc/patches/extra/bromite/flag-fingerprinting-canvas-image-data-noise.patch
index 6ebc7a1..e7b6dce 100644
--- a/www/chromium-uc/patches/extra/bromite/flag-fingerprinting-canvas-image-data-noise.patch
+++ b/www/chromium-uc/patches/extra/bromite/flag-fingerprinting-canvas-image-data-noise.patch
@@ -21,8 +21,8 @@ approach to change color components.
21 .../platform/graphics/static_bitmap_image.h | 2 + 21 .../platform/graphics/static_bitmap_image.h | 2 +
22 4 files changed, 163 insertions(+), 2 deletions(-) 22 4 files changed, 163 insertions(+), 2 deletions(-)
23 23
24--- chrome/browser/bromite_flag_entries.h.orig 24--- a/chrome/browser/bromite_flag_entries.h
25+++ chrome/browser/bromite_flag_entries.h 25+++ b/chrome/browser/bromite_flag_entries.h
26@@ -16,4 +16,8 @@ 26@@ -16,4 +16,8 @@
27 flag_descriptions::kMaxConnectionsPerHostName, 27 flag_descriptions::kMaxConnectionsPerHostName,
28 flag_descriptions::kMaxConnectionsPerHostDescription, 28 flag_descriptions::kMaxConnectionsPerHostDescription,
@@ -32,9 +32,9 @@ approach to change color components.
32+ "Slightly modifies at most 10 pixels in Canvas image data extracted via JS APIs. ungoogled-chromium flag, Bromite feature.", 32+ "Slightly modifies at most 10 pixels in Canvas image data extracted via JS APIs. ungoogled-chromium flag, Bromite feature.",
33+ kOsAll, SINGLE_VALUE_TYPE(switches::kFingerprintingCanvasImageDataNoise)}, 33+ kOsAll, SINGLE_VALUE_TYPE(switches::kFingerprintingCanvasImageDataNoise)},
34 #endif // CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_ 34 #endif // CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_
35--- content/browser/renderer_host/render_process_host_impl.cc.orig 35--- a/content/browser/renderer_host/render_process_host_impl.cc
36+++ content/browser/renderer_host/render_process_host_impl.cc 36+++ b/content/browser/renderer_host/render_process_host_impl.cc
37@@ -3468,6 +3468,7 @@ void RenderProcessHostImpl::PropagateBro 37@@ -3366,6 +3366,7 @@ void RenderProcessHostImpl::PropagateBro
38 switches::kFileUrlPathAlias, 38 switches::kFileUrlPathAlias,
39 switches::kFingerprintingClientRectsNoise, 39 switches::kFingerprintingClientRectsNoise,
40 switches::kFingerprintingCanvasMeasureTextNoise, 40 switches::kFingerprintingCanvasMeasureTextNoise,
@@ -42,9 +42,9 @@ approach to change color components.
42 switches::kForceDeviceScaleFactor, 42 switches::kForceDeviceScaleFactor,
43 switches::kForceDisplayColorProfile, 43 switches::kForceDisplayColorProfile,
44 switches::kForceGpuMemAvailableMb, 44 switches::kForceGpuMemAvailableMb,
45--- content/child/runtime_features.cc.orig 45--- a/content/child/runtime_features.cc
46+++ content/child/runtime_features.cc 46+++ b/content/child/runtime_features.cc
47@@ -471,6 +471,8 @@ void SetRuntimeFeaturesFromCommandLine(c 47@@ -491,6 +491,8 @@ void SetRuntimeFeaturesFromCommandLine(c
48 switches::kFingerprintingClientRectsNoise, true}, 48 switches::kFingerprintingClientRectsNoise, true},
49 {wrf::EnableFingerprintingCanvasMeasureTextNoise, 49 {wrf::EnableFingerprintingCanvasMeasureTextNoise,
50 switches::kFingerprintingCanvasMeasureTextNoise, true}, 50 switches::kFingerprintingCanvasMeasureTextNoise, true},
@@ -53,9 +53,9 @@ approach to change color components.
53 }; 53 };
54 for (const auto& mapping : switchToFeatureMapping) { 54 for (const auto& mapping : switchToFeatureMapping) {
55 if (command_line.HasSwitch(mapping.switch_name)) 55 if (command_line.HasSwitch(mapping.switch_name))
56--- third_party/blink/public/platform/web_runtime_features.h.orig 56--- a/third_party/blink/public/platform/web_runtime_features.h
57+++ third_party/blink/public/platform/web_runtime_features.h 57+++ b/third_party/blink/public/platform/web_runtime_features.h
58@@ -220,6 +220,7 @@ class WebRuntimeFeatures { 58@@ -214,6 +214,7 @@ class WebRuntimeFeatures {
59 BLINK_PLATFORM_EXPORT static void EnableAllowSyncXHRInPageDismissal(bool); 59 BLINK_PLATFORM_EXPORT static void EnableAllowSyncXHRInPageDismissal(bool);
60 BLINK_PLATFORM_EXPORT static void EnableFingerprintingClientRectsNoise(bool); 60 BLINK_PLATFORM_EXPORT static void EnableFingerprintingClientRectsNoise(bool);
61 BLINK_PLATFORM_EXPORT static void EnableFingerprintingCanvasMeasureTextNoise(bool); 61 BLINK_PLATFORM_EXPORT static void EnableFingerprintingCanvasMeasureTextNoise(bool);
@@ -63,17 +63,17 @@ approach to change color components.
63 BLINK_PLATFORM_EXPORT static void EnableSignedExchangeSubresourcePrefetch( 63 BLINK_PLATFORM_EXPORT static void EnableSignedExchangeSubresourcePrefetch(
64 bool); 64 bool);
65 BLINK_PLATFORM_EXPORT static void EnableSubresourceWebBundles(bool); 65 BLINK_PLATFORM_EXPORT static void EnableSubresourceWebBundles(bool);
66--- third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc.orig 66--- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc
67+++ third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc 67+++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc
68@@ -30,6 +30,7 @@ 68@@ -29,6 +29,7 @@
69 #include "third_party/blink/renderer/platform/graphics/bitmap_image.h" 69 #include "third_party/blink/renderer/platform/graphics/bitmap_image.h"
70 #include "third_party/blink/renderer/platform/graphics/graphics_context.h" 70 #include "third_party/blink/renderer/platform/graphics/graphics_context.h"
71 #include "third_party/blink/renderer/platform/graphics/skia/skia_utils.h" 71 #include "third_party/blink/renderer/platform/graphics/skia/skia_utils.h"
72+#include "third_party/blink/renderer/platform/graphics/static_bitmap_image.h" 72+#include "third_party/blink/renderer/platform/graphics/static_bitmap_image.h"
73 #include "third_party/blink/renderer/platform/graphics/stroke_data.h" 73 #include "third_party/blink/renderer/platform/graphics/stroke_data.h"
74 #include "third_party/blink/renderer/platform/graphics/video_frame_image_util.h" 74 #include "third_party/blink/renderer/platform/graphics/video_frame_image_util.h"
75 #include "third_party/blink/renderer/platform/heap/heap.h" 75 #include "third_party/blink/renderer/platform/heap/garbage_collected.h"
76@@ -2311,6 +2312,9 @@ ImageData* BaseRenderingContext2D::getIm 76@@ -2049,6 +2050,9 @@ ImageData* BaseRenderingContext2D::getIm
77 snapshot->PaintImageForCurrentFrame().GetSkImageInfo().bounds(); 77 snapshot->PaintImageForCurrentFrame().GetSkImageInfo().bounds();
78 DCHECK(!bounds.intersect(SkIRect::MakeXYWH(sx, sy, sw, sh))); 78 DCHECK(!bounds.intersect(SkIRect::MakeXYWH(sx, sy, sw, sh)));
79 } 79 }
@@ -83,9 +83,9 @@ approach to change color components.
83 } 83 }
84 84
85 return image_data; 85 return image_data;
86--- third_party/blink/renderer/platform/BUILD.gn.orig 86--- a/third_party/blink/renderer/platform/BUILD.gn
87+++ third_party/blink/renderer/platform/BUILD.gn 87+++ b/third_party/blink/renderer/platform/BUILD.gn
88@@ -1645,7 +1645,9 @@ component("platform") { 88@@ -1623,7 +1623,9 @@ component("platform") {
89 "//third_party/blink/renderer:non_test_config", 89 "//third_party/blink/renderer:non_test_config",
90 ] 90 ]
91 91
@@ -96,9 +96,9 @@ approach to change color components.
96 96
97 allow_circular_includes_from = [ 97 allow_circular_includes_from = [
98 "//third_party/blink/renderer/platform/blob", 98 "//third_party/blink/renderer/platform/blob",
99--- third_party/blink/renderer/platform/exported/web_runtime_features.cc.orig 99--- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
100+++ third_party/blink/renderer/platform/exported/web_runtime_features.cc 100+++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
101@@ -697,4 +697,8 @@ void WebRuntimeFeatures::EnableFingerpri 101@@ -667,4 +667,8 @@ void WebRuntimeFeatures::EnableFingerpri
102 RuntimeEnabledFeatures::SetFingerprintingCanvasMeasureTextNoiseEnabled(enable); 102 RuntimeEnabledFeatures::SetFingerprintingCanvasMeasureTextNoiseEnabled(enable);
103 } 103 }
104 104
@@ -107,8 +107,8 @@ approach to change color components.
107+} 107+}
108+ 108+
109 } // namespace blink 109 } // namespace blink
110--- third_party/blink/renderer/platform/graphics/image_data_buffer.cc.orig 110--- a/third_party/blink/renderer/platform/graphics/image_data_buffer.cc
111+++ third_party/blink/renderer/platform/graphics/image_data_buffer.cc 111+++ b/third_party/blink/renderer/platform/graphics/image_data_buffer.cc
112@@ -36,6 +36,8 @@ 112@@ -36,6 +36,8 @@
113 113
114 #include "base/compiler_specific.h" 114 #include "base/compiler_specific.h"
@@ -130,8 +130,8 @@ approach to change color components.
130 if (mime_type == kMimeTypeJpeg) { 130 if (mime_type == kMimeTypeJpeg) {
131 SkJpegEncoder::Options options; 131 SkJpegEncoder::Options options;
132 options.fQuality = ImageEncoder::ComputeJpegQuality(quality); 132 options.fQuality = ImageEncoder::ComputeJpegQuality(quality);
133--- third_party/blink/renderer/platform/graphics/static_bitmap_image.cc.orig 133--- a/third_party/blink/renderer/platform/graphics/static_bitmap_image.cc
134+++ third_party/blink/renderer/platform/graphics/static_bitmap_image.cc 134+++ b/third_party/blink/renderer/platform/graphics/static_bitmap_image.cc
135@@ -4,6 +4,8 @@ 135@@ -4,6 +4,8 @@
136 136
137 #include "third_party/blink/renderer/platform/graphics/static_bitmap_image.h" 137 #include "third_party/blink/renderer/platform/graphics/static_bitmap_image.h"
@@ -151,10 +151,10 @@ approach to change color components.
151 #include "third_party/skia/include/core/SkPaint.h" 151 #include "third_party/skia/include/core/SkPaint.h"
152 #include "third_party/skia/include/core/SkSurface.h" 152 #include "third_party/skia/include/core/SkSurface.h"
153+#include "third_party/skia/include/private/SkColorData.h" 153+#include "third_party/skia/include/private/SkColorData.h"
154 #include "ui/gfx/geometry/skia_conversions.h"
154 #include "v8/include/v8.h" 155 #include "v8/include/v8.h"
155 156
156 namespace blink { 157@@ -79,4 +83,154 @@ void StaticBitmapImage::DrawHelper(cc::P
157@@ -80,4 +84,154 @@ void StaticBitmapImage::DrawHelper(cc::P
158 WebCoreClampingModeToSkiaRectConstraint(draw_options.clamping_mode)); 158 WebCoreClampingModeToSkiaRectConstraint(draw_options.clamping_mode));
159 } 159 }
160 160
@@ -309,8 +309,8 @@ approach to change color components.
309+#undef shuffleComponent 309+#undef shuffleComponent
310+ 310+
311 } // namespace blink 311 } // namespace blink
312--- third_party/blink/renderer/platform/graphics/static_bitmap_image.h.orig 312--- a/third_party/blink/renderer/platform/graphics/static_bitmap_image.h
313+++ third_party/blink/renderer/platform/graphics/static_bitmap_image.h 313+++ b/third_party/blink/renderer/platform/graphics/static_bitmap_image.h
314@@ -36,6 +36,8 @@ class PLATFORM_EXPORT StaticBitmapImage 314@@ -36,6 +36,8 @@ class PLATFORM_EXPORT StaticBitmapImage
315 315
316 StaticBitmapImage(ImageOrientation orientation) : orientation_(orientation) {} 316 StaticBitmapImage(ImageOrientation orientation) : orientation_(orientation) {}
@@ -320,9 +320,9 @@ approach to change color components.
320 bool IsStaticBitmapImage() const override { return true; } 320 bool IsStaticBitmapImage() const override { return true; }
321 321
322 // Methods overridden by all sub-classes 322 // Methods overridden by all sub-classes
323--- third_party/blink/renderer/platform/runtime_enabled_features.json5.orig 323--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
324+++ third_party/blink/renderer/platform/runtime_enabled_features.json5 324+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
325@@ -1082,6 +1082,9 @@ 325@@ -1124,6 +1124,9 @@
326 name: "FingerprintingCanvasMeasureTextNoise", 326 name: "FingerprintingCanvasMeasureTextNoise",
327 }, 327 },
328 { 328 {
diff --git a/www/chromium-uc/patches/extra/bromite/flag-max-connections-per-host.patch b/www/chromium-uc/patches/extra/bromite/flag-max-connections-per-host.patch
index 65b1887..16055fe 100644
--- a/www/chromium-uc/patches/extra/bromite/flag-max-connections-per-host.patch
+++ b/www/chromium-uc/patches/extra/bromite/flag-max-connections-per-host.patch
@@ -15,9 +15,9 @@ with limited CPU/memory resources and it is disabled by default.
15 net/socket/client_socket_pool_manager.cc | 16 ++++++++++++++++ 15 net/socket/client_socket_pool_manager.cc | 16 ++++++++++++++++
16 7 files changed, 42 insertions(+) 16 7 files changed, 42 insertions(+)
17 17
18--- chrome/browser/BUILD.gn.orig 18--- a/chrome/browser/BUILD.gn
19+++ chrome/browser/BUILD.gn 19+++ b/chrome/browser/BUILD.gn
20@@ -2126,6 +2126,7 @@ static_library("browser") { 20@@ -2102,6 +2102,7 @@ static_library("browser") {
21 "//components/net_log", 21 "//components/net_log",
22 "//components/network_hints/common:mojo_bindings", 22 "//components/network_hints/common:mojo_bindings",
23 "//components/network_session_configurator/browser", 23 "//components/network_session_configurator/browser",
@@ -25,8 +25,8 @@ with limited CPU/memory resources and it is disabled by default.
25 "//components/network_time", 25 "//components/network_time",
26 "//components/no_state_prefetch/browser", 26 "//components/no_state_prefetch/browser",
27 "//components/no_state_prefetch/common", 27 "//components/no_state_prefetch/common",
28--- chrome/browser/bromite_flag_choices.h.orig 28--- a/chrome/browser/bromite_flag_choices.h
29+++ chrome/browser/bromite_flag_choices.h 29+++ b/chrome/browser/bromite_flag_choices.h
30@@ -4,4 +4,8 @@ 30@@ -4,4 +4,8 @@
31 31
32 #ifndef CHROME_BROWSER_BROMITE_FLAG_CHOICES_H_ 32 #ifndef CHROME_BROWSER_BROMITE_FLAG_CHOICES_H_
@@ -36,8 +36,8 @@ with limited CPU/memory resources and it is disabled by default.
36+ {features::kMaxConnectionsPerHostChoice15, switches::kMaxConnectionsPerHost, "15"}, 36+ {features::kMaxConnectionsPerHostChoice15, switches::kMaxConnectionsPerHost, "15"},
37+}; 37+};
38 #endif // CHROME_BROWSER_BROMITE_FLAG_CHOICES_H_ 38 #endif // CHROME_BROWSER_BROMITE_FLAG_CHOICES_H_
39--- chrome/browser/bromite_flag_entries.h.orig 39--- a/chrome/browser/bromite_flag_entries.h
40+++ chrome/browser/bromite_flag_entries.h 40+++ b/chrome/browser/bromite_flag_entries.h
41@@ -12,4 +12,8 @@ 41@@ -12,4 +12,8 @@
42 "Enable Canvas::measureText() fingerprint deception", 42 "Enable Canvas::measureText() fingerprint deception",
43 "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. ungoogled-chromium flag, Bromite feature.", 43 "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. ungoogled-chromium flag, Bromite feature.",
@@ -47,24 +47,22 @@ with limited CPU/memory resources and it is disabled by default.
47+ flag_descriptions::kMaxConnectionsPerHostDescription, 47+ flag_descriptions::kMaxConnectionsPerHostDescription,
48+ kOsAll, MULTI_VALUE_TYPE(kMaxConnectionsPerHostChoices)}, 48+ kOsAll, MULTI_VALUE_TYPE(kMaxConnectionsPerHostChoices)},
49 #endif // CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_ 49 #endif // CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_
50--- chrome/browser/browser_process_impl.cc.orig 50--- a/chrome/browser/browser_process_impl.cc
51+++ chrome/browser/browser_process_impl.cc 51+++ b/chrome/browser/browser_process_impl.cc
52@@ -19,12 +19,14 @@ 52@@ -19,10 +19,12 @@
53 #include "base/debug/leak_annotations.h" 53 #include "base/debug/leak_annotations.h"
54 #include "base/files/file_path.h" 54 #include "base/files/file_path.h"
55 #include "base/location.h" 55 #include "base/location.h"
56+#include "base/logging.h" 56+#include "base/logging.h"
57 #include "base/macros.h"
58 #include "base/memory/ptr_util.h" 57 #include "base/memory/ptr_util.h"
59 #include "base/metrics/histogram_macros.h" 58 #include "base/metrics/histogram_macros.h"
60 #include "base/path_service.h" 59 #include "base/path_service.h"
61 #include "base/run_loop.h" 60 #include "base/run_loop.h"
62 #include "base/single_thread_task_runner.h"
63+#include "base/strings/string_number_conversions.h" 61+#include "base/strings/string_number_conversions.h"
64 #include "base/synchronization/waitable_event.h" 62 #include "base/synchronization/waitable_event.h"
63 #include "base/task/single_thread_task_runner.h"
65 #include "base/task/task_traits.h" 64 #include "base/task/task_traits.h"
66 #include "base/task/thread_pool.h" 65@@ -102,6 +104,7 @@
67@@ -103,6 +105,7 @@
68 #include "components/metrics/metrics_service.h" 66 #include "components/metrics/metrics_service.h"
69 #include "components/metrics_services_manager/metrics_services_manager.h" 67 #include "components/metrics_services_manager/metrics_services_manager.h"
70 #include "components/metrics_services_manager/metrics_services_manager_client.h" 68 #include "components/metrics_services_manager/metrics_services_manager_client.h"
@@ -72,7 +70,7 @@ with limited CPU/memory resources and it is disabled by default.
72 #include "components/network_time/network_time_tracker.h" 70 #include "components/network_time/network_time_tracker.h"
73 #include "components/permissions/permissions_client.h" 71 #include "components/permissions/permissions_client.h"
74 #include "components/policy/core/common/policy_service.h" 72 #include "components/policy/core/common/policy_service.h"
75@@ -135,6 +138,7 @@ 73@@ -134,6 +137,7 @@
76 #include "media/media_buildflags.h" 74 #include "media/media_buildflags.h"
77 #include "mojo/public/cpp/bindings/pending_receiver.h" 75 #include "mojo/public/cpp/bindings/pending_receiver.h"
78 #include "net/log/net_log.h" 76 #include "net/log/net_log.h"
@@ -80,9 +78,9 @@ with limited CPU/memory resources and it is disabled by default.
80 #include "ppapi/buildflags/buildflags.h" 78 #include "ppapi/buildflags/buildflags.h"
81 #include "printing/buildflags/buildflags.h" 79 #include "printing/buildflags/buildflags.h"
82 #include "services/network/public/cpp/features.h" 80 #include "services/network/public/cpp/features.h"
83@@ -345,6 +349,18 @@ void BrowserProcessImpl::Init() { 81@@ -343,6 +347,18 @@ void BrowserProcessImpl::Init() {
82 pref_change_registrar_.Add(metrics::prefs::kMetricsReportingEnabled,
84 base::BindRepeating(&ApplyMetricsReportingPolicy)); 83 base::BindRepeating(&ApplyMetricsReportingPolicy));
85 #endif
86 84
87+ int max_connections_per_host = 0; 85+ int max_connections_per_host = 0;
88+ auto switch_value = base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII( 86+ auto switch_value = base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
@@ -99,11 +97,11 @@ with limited CPU/memory resources and it is disabled by default.
99 DCHECK(!webrtc_event_log_manager_); 97 DCHECK(!webrtc_event_log_manager_);
100 webrtc_event_log_manager_ = WebRtcEventLogManager::CreateSingletonInstance(); 98 webrtc_event_log_manager_ = WebRtcEventLogManager::CreateSingletonInstance();
101 99
102--- chrome/browser/flag_descriptions.cc.orig 100--- a/chrome/browser/flag_descriptions.cc
103+++ chrome/browser/flag_descriptions.cc 101+++ b/chrome/browser/flag_descriptions.cc
104@@ -1621,6 +1621,10 @@ const char kMediaHistoryDescription[] = 102@@ -1630,6 +1630,10 @@ const char kLogJsConsoleMessagesDescript
105 "Enables Media History which records data around media playbacks on " 103 "Enable logging JS console messages in system logs, please note that they "
106 "websites."; 104 "may contain PII.";
107 105
108+const char kMaxConnectionsPerHostName[] = "Maximum connections per host"; 106+const char kMaxConnectionsPerHostName[] = "Maximum connections per host";
109+const char kMaxConnectionsPerHostDescription[] = 107+const char kMaxConnectionsPerHostDescription[] =
@@ -112,11 +110,11 @@ with limited CPU/memory resources and it is disabled by default.
112 const char kMediaRouterCastAllowAllIPsName[] = 110 const char kMediaRouterCastAllowAllIPsName[] =
113 "Connect to Cast devices on all IP addresses"; 111 "Connect to Cast devices on all IP addresses";
114 const char kMediaRouterCastAllowAllIPsDescription[] = 112 const char kMediaRouterCastAllowAllIPsDescription[] =
115--- chrome/browser/flag_descriptions.h.orig 113--- a/chrome/browser/flag_descriptions.h
116+++ chrome/browser/flag_descriptions.h 114+++ b/chrome/browser/flag_descriptions.h
117@@ -930,6 +930,9 @@ extern const char kLogJsConsoleMessagesD 115@@ -931,6 +931,9 @@ extern const char kLensCameraAssistedSea
118 extern const char kMediaHistoryName[]; 116 extern const char kLogJsConsoleMessagesName[];
119 extern const char kMediaHistoryDescription[]; 117 extern const char kLogJsConsoleMessagesDescription[];
120 118
121+extern const char kMaxConnectionsPerHostName[]; 119+extern const char kMaxConnectionsPerHostName[];
122+extern const char kMaxConnectionsPerHostDescription[]; 120+extern const char kMaxConnectionsPerHostDescription[];
@@ -124,8 +122,8 @@ with limited CPU/memory resources and it is disabled by default.
124 extern const char kMediaRouterCastAllowAllIPsName[]; 122 extern const char kMediaRouterCastAllowAllIPsName[];
125 extern const char kMediaRouterCastAllowAllIPsDescription[]; 123 extern const char kMediaRouterCastAllowAllIPsDescription[];
126 124
127--- components/network_session_configurator/common/network_features.cc.orig 125--- a/components/network_session_configurator/common/network_features.cc
128+++ components/network_session_configurator/common/network_features.cc 126+++ b/components/network_session_configurator/common/network_features.cc
129@@ -8,4 +8,7 @@ 127@@ -8,4 +8,7 @@
130 128
131 namespace features { 129 namespace features {
@@ -134,8 +132,8 @@ with limited CPU/memory resources and it is disabled by default.
134+ kMaxConnectionsPerHostChoice15[] = "15"; 132+ kMaxConnectionsPerHostChoice15[] = "15";
135+ 133+
136 } // namespace features 134 } // namespace features
137--- components/network_session_configurator/common/network_features.h.orig 135--- a/components/network_session_configurator/common/network_features.h
138+++ components/network_session_configurator/common/network_features.h 136+++ b/components/network_session_configurator/common/network_features.h
139@@ -10,6 +10,10 @@ 137@@ -10,6 +10,10 @@
140 138
141 namespace features { 139 namespace features {
@@ -147,8 +145,8 @@ with limited CPU/memory resources and it is disabled by default.
147 } // namespace features 145 } // namespace features
148 146
149 #endif // COMPONENTS_NETWORK_SESSION_CONFIGURATOR_COMMON_NETWORK_FEATURES_H_ 147 #endif // COMPONENTS_NETWORK_SESSION_CONFIGURATOR_COMMON_NETWORK_FEATURES_H_
150--- components/network_session_configurator/common/network_switch_list.h.orig 148--- a/components/network_session_configurator/common/network_switch_list.h
151+++ components/network_session_configurator/common/network_switch_list.h 149+++ b/components/network_session_configurator/common/network_switch_list.h
152@@ -19,6 +19,10 @@ NETWORK_SWITCH(kEnableUserAlternateProto 150@@ -19,6 +19,10 @@ NETWORK_SWITCH(kEnableUserAlternateProto
153 // Enables the QUIC protocol. This is a temporary testing flag. 151 // Enables the QUIC protocol. This is a temporary testing flag.
154 NETWORK_SWITCH(kEnableQuic, "enable-quic") 152 NETWORK_SWITCH(kEnableQuic, "enable-quic")
diff --git a/www/chromium-uc/patches/extra/debian/disable/google-api-warning.patch b/www/chromium-uc/patches/extra/debian/disable/google-api-warning.patch
index 1c9d44b..5ed977e 100644
--- a/www/chromium-uc/patches/extra/debian/disable/google-api-warning.patch
+++ b/www/chromium-uc/patches/extra/debian/disable/google-api-warning.patch
@@ -1,9 +1,9 @@
1description: disable the google api key warning when those aren't found 1description: disable the google api key warning when those aren't found
2author: Michael Gilbert <mgilbert@debian.org> 2author: Michael Gilbert <mgilbert@debian.org>
3 3
4--- chrome/browser/ui/startup/startup_browser_creator_impl.cc.orig 4--- a/chrome/browser/ui/startup/infobar_utils.cc
5+++ chrome/browser/ui/startup/startup_browser_creator_impl.cc 5+++ b/chrome/browser/ui/startup/infobar_utils.cc
6@@ -672,9 +672,6 @@ void StartupBrowserCreatorImpl::AddInfoB 6@@ -113,9 +113,6 @@ void AddInfoBarsIfNecessary(Browser* bro
7 infobars::ContentInfoBarManager* infobar_manager = 7 infobars::ContentInfoBarManager* infobar_manager =
8 infobars::ContentInfoBarManager::FromWebContents(web_contents); 8 infobars::ContentInfoBarManager::FromWebContents(web_contents);
9 9
diff --git a/www/chromium-uc/patches/extra/debian/disable/welcome-page.patch b/www/chromium-uc/patches/extra/debian/disable/welcome-page.patch
index 873aeae..322bd38 100644
--- a/www/chromium-uc/patches/extra/debian/disable/welcome-page.patch
+++ b/www/chromium-uc/patches/extra/debian/disable/welcome-page.patch
@@ -2,13 +2,13 @@ description: do not override the welcome page setting set in master_preferences
2author: Michael Gilbert <mgilbert@debian.org> 2author: Michael Gilbert <mgilbert@debian.org>
3bug-debian: http://bugs.debian.org/857767 3bug-debian: http://bugs.debian.org/857767
4 4
5--- chrome/browser/profiles/profile_manager.cc.orig 5--- a/chrome/browser/profiles/profile_manager.cc
6+++ chrome/browser/profiles/profile_manager.cc 6+++ b/chrome/browser/profiles/profile_manager.cc
7@@ -1310,7 +1310,7 @@ void ProfileManager::InitProfileUserPref 7@@ -1379,7 +1379,7 @@ void ProfileManager::InitProfileUserPref
8 profile->GetPrefs()->SetString(prefs::kSupervisedUserId, 8 profile->GetPrefs()->SetString(prefs::kSupervisedUserId,
9 supervised_user_id); 9 supervised_user_id);
10 } 10 }
11-#if !defined(OS_ANDROID) 11-#if !BUILDFLAG(IS_ANDROID)
12+#if 0 12+#if 0
13 // TODO(pmonette): Fix IsNewProfile() to handle the case where the profile is 13 // TODO(pmonette): Fix IsNewProfile() to handle the case where the profile is
14 // new even if the "Preferences" file already existed. (For example: The 14 // new even if the "Preferences" file already existed. (For example: The
diff --git a/www/chromium-uc/patches/extra/debian/fixes/connection-message.patch b/www/chromium-uc/patches/extra/debian/fixes/connection-message.patch
index d9aaa94..a4e9922 100644
--- a/www/chromium-uc/patches/extra/debian/fixes/connection-message.patch
+++ b/www/chromium-uc/patches/extra/debian/fixes/connection-message.patch
@@ -2,8 +2,8 @@ description: suggest proxy misconfiguration when network is unreachable
2author: Michael Gilbert <mgilbert@debian.org> 2author: Michael Gilbert <mgilbert@debian.org>
3bug-debian: http://bugs.debian.org/864539 3bug-debian: http://bugs.debian.org/864539
4 4
5--- components/error_page_strings.grdp.orig 5--- a/components/error_page_strings.grdp
6+++ components/error_page_strings.grdp 6+++ b/components/error_page_strings.grdp
7@@ -54,7 +54,7 @@ 7@@ -54,7 +54,7 @@
8 </message> 8 </message>
9 <message name="IDS_ERRORPAGES_SUGGESTION_CHECK_CONNECTION_BODY" desc="When a page fails to load, sometimes we suggest checking the network connections. This contains details below the suggestion."> 9 <message name="IDS_ERRORPAGES_SUGGESTION_CHECK_CONNECTION_BODY" desc="When a page fails to load, sometimes we suggest checking the network connections. This contains details below the suggestion.">
diff --git a/www/chromium-uc/patches/extra/debian/gn/parallel.patch b/www/chromium-uc/patches/extra/debian/gn/parallel.patch
index ac0a2b0..77e0110 100644
--- a/www/chromium-uc/patches/extra/debian/gn/parallel.patch
+++ b/www/chromium-uc/patches/extra/debian/gn/parallel.patch
@@ -1,8 +1,8 @@
1description: respect specified number of parallel jobs while bootstrapping gn 1description: respect specified number of parallel jobs while bootstrapping gn
2author: Michael Gilbert <mgilbert@debian.org> 2author: Michael Gilbert <mgilbert@debian.org>
3 3
4--- tools/gn/bootstrap/bootstrap.py.orig 4--- a/tools/gn/bootstrap/bootstrap.py
5+++ tools/gn/bootstrap/bootstrap.py 5+++ b/tools/gn/bootstrap/bootstrap.py
6@@ -47,6 +47,7 @@ def main(argv): 6@@ -47,6 +47,7 @@ def main(argv):
7 help='The directory in which to build gn, ' 7 help='The directory in which to build gn, '
8 'relative to the src directory. (eg. out/Release)') 8 'relative to the src directory. (eg. out/Release)')
diff --git a/www/chromium-uc/patches/extra/inox-patchset/0006-modify-default-prefs.patch b/www/chromium-uc/patches/extra/inox-patchset/0006-modify-default-prefs.patch
index d62ef29..d5ef7dc 100644
--- a/www/chromium-uc/patches/extra/inox-patchset/0006-modify-default-prefs.patch
+++ b/www/chromium-uc/patches/extra/inox-patchset/0006-modify-default-prefs.patch
@@ -1,6 +1,6 @@
1 1
2--- chrome/browser/background/background_mode_manager.cc.orig 2--- a/chrome/browser/background/background_mode_manager.cc
3+++ chrome/browser/background/background_mode_manager.cc 3+++ b/chrome/browser/background/background_mode_manager.cc
4@@ -376,7 +376,7 @@ void BackgroundModeManager::RegisterPref 4@@ -376,7 +376,7 @@ void BackgroundModeManager::RegisterPref
5 registry->RegisterBooleanPref(prefs::kChromeCreatedLoginItem, false); 5 registry->RegisterBooleanPref(prefs::kChromeCreatedLoginItem, false);
6 registry->RegisterBooleanPref(prefs::kMigratedLoginItemPref, false); 6 registry->RegisterBooleanPref(prefs::kMigratedLoginItemPref, false);
@@ -10,9 +10,9 @@
10 } 10 }
11 11
12 void BackgroundModeManager::RegisterProfile(Profile* profile) { 12 void BackgroundModeManager::RegisterProfile(Profile* profile) {
13--- chrome/browser/chrome_content_browser_client.cc.orig 13--- a/chrome/browser/chrome_content_browser_client.cc
14+++ chrome/browser/chrome_content_browser_client.cc 14+++ b/chrome/browser/chrome_content_browser_client.cc
15@@ -1238,7 +1238,7 @@ void ChromeContentBrowserClient::Registe 15@@ -1264,7 +1264,7 @@ void ChromeContentBrowserClient::Registe
16 void ChromeContentBrowserClient::RegisterProfilePrefs( 16 void ChromeContentBrowserClient::RegisterProfilePrefs(
17 user_prefs::PrefRegistrySyncable* registry) { 17 user_prefs::PrefRegistrySyncable* registry) {
18 registry->RegisterBooleanPref(prefs::kDisable3DAPIs, false); 18 registry->RegisterBooleanPref(prefs::kDisable3DAPIs, false);
@@ -21,31 +21,9 @@
21 // Register user prefs for mapping SitePerProcess and IsolateOrigins in 21 // Register user prefs for mapping SitePerProcess and IsolateOrigins in
22 // user policy in addition to the same named ones in Local State (which are 22 // user policy in addition to the same named ones in Local State (which are
23 // used for mapping the command-line flags). 23 // used for mapping the command-line flags).
24--- chrome/browser/net/prediction_options.cc.orig 24--- a/chrome/browser/net/profile_network_context_service.cc
25+++ chrome/browser/net/prediction_options.cc 25+++ b/chrome/browser/net/profile_network_context_service.cc
26@@ -31,7 +31,7 @@ NetworkPredictionStatus CanPrefetchAndPr 26@@ -337,7 +337,7 @@ void ProfileNetworkContextService::Updat
27 }
28 return NetworkPredictionStatus::DISABLED_DUE_TO_NETWORK;
29 default:
30- DCHECK_EQ(NETWORK_PREDICTION_NEVER, network_prediction_options);
31+ //DCHECK_EQ(NETWORK_PREDICTION_NEVER, network_prediction_options);
32 return NetworkPredictionStatus::DISABLED_ALWAYS;
33 }
34 }
35--- chrome/browser/net/prediction_options.h.orig
36+++ chrome/browser/net/prediction_options.h
37@@ -22,7 +22,7 @@ enum NetworkPredictionOptions {
38 NETWORK_PREDICTION_ALWAYS,
39 NETWORK_PREDICTION_WIFI_ONLY,
40 NETWORK_PREDICTION_NEVER,
41- NETWORK_PREDICTION_DEFAULT = NETWORK_PREDICTION_WIFI_ONLY,
42+ NETWORK_PREDICTION_DEFAULT = NETWORK_PREDICTION_NEVER,
43 };
44
45 enum class NetworkPredictionStatus {
46--- chrome/browser/net/profile_network_context_service.cc.orig
47+++ chrome/browser/net/profile_network_context_service.cc
48@@ -319,7 +319,7 @@ void ProfileNetworkContextService::Updat
49 void ProfileNetworkContextService::RegisterProfilePrefs( 27 void ProfileNetworkContextService::RegisterProfilePrefs(
50 user_prefs::PrefRegistrySyncable* registry) { 28 user_prefs::PrefRegistrySyncable* registry) {
51 registry->RegisterBooleanPref( 29 registry->RegisterBooleanPref(
@@ -54,19 +32,30 @@
54 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); 32 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
55 registry->RegisterBooleanPref(prefs::kQuicAllowed, true); 33 registry->RegisterBooleanPref(prefs::kQuicAllowed, true);
56 registry->RegisterBooleanPref(prefs::kGloballyScopeHTTPAuthCacheEnabled, 34 registry->RegisterBooleanPref(prefs::kGloballyScopeHTTPAuthCacheEnabled,
57--- chrome/browser/profiles/profile.cc.orig 35--- a/chrome/browser/prefetch/prefetch_prefs.h
58+++ chrome/browser/profiles/profile.cc 36+++ b/chrome/browser/prefetch/prefetch_prefs.h
59@@ -276,7 +276,7 @@ const char Profile::kProfileKey[] = "__P 37@@ -22,7 +22,7 @@ enum class NetworkPredictionOptions {
38 kWifiOnlyDeprecated = 1,
39 kDisabled = 2,
40 kExtended = 3,
41- kDefault = kWifiOnlyDeprecated,
42+ kDefault = kDisabled,
43 };
44
45 // Enum representing possible values of the Preload Pages opt-in state. Since
46--- a/chrome/browser/profiles/profile.cc
47+++ b/chrome/browser/profiles/profile.cc
48@@ -275,7 +275,7 @@ const char Profile::kProfileKey[] = "__P
60 void Profile::RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { 49 void Profile::RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
61 registry->RegisterBooleanPref( 50 registry->RegisterBooleanPref(
62 prefs::kSearchSuggestEnabled, 51 prefs::kSearchSuggestEnabled,
63- true, 52- true,
64+ false, 53+ false,
65 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); 54 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
66 #if defined(OS_ANDROID) 55 #if BUILDFLAG(IS_ANDROID)
67 registry->RegisterStringPref( 56 registry->RegisterStringPref(
68--- chrome/browser/resources/settings/reset_page/reset_profile_dialog.html.orig 57--- a/chrome/browser/resources/settings/reset_page/reset_profile_dialog.html
69+++ chrome/browser/resources/settings/reset_page/reset_profile_dialog.html 58+++ b/chrome/browser/resources/settings/reset_page/reset_profile_dialog.html
70@@ -36,7 +36,7 @@ 59@@ -36,7 +36,7 @@
71 </cr-button> 60 </cr-button>
72 </div> 61 </div>
@@ -76,9 +65,9 @@
76 $i18nRaw{resetPageFeedback}</cr-checkbox> 65 $i18nRaw{resetPageFeedback}</cr-checkbox>
77 </div> 66 </div>
78 </cr-dialog> 67 </cr-dialog>
79--- chrome/browser/signin/account_consistency_mode_manager.cc.orig 68--- a/chrome/browser/signin/account_consistency_mode_manager.cc
80+++ chrome/browser/signin/account_consistency_mode_manager.cc 69+++ b/chrome/browser/signin/account_consistency_mode_manager.cc
81@@ -111,7 +111,7 @@ AccountConsistencyModeManager::~AccountC 70@@ -110,7 +110,7 @@ AccountConsistencyModeManager::~AccountC
82 // static 71 // static
83 void AccountConsistencyModeManager::RegisterProfilePrefs( 72 void AccountConsistencyModeManager::RegisterProfilePrefs(
84 user_prefs::PrefRegistrySyncable* registry) { 73 user_prefs::PrefRegistrySyncable* registry) {
@@ -87,8 +76,8 @@
87 } 76 }
88 77
89 // static 78 // static
90--- chrome/browser/ui/browser_ui_prefs.cc.orig 79--- a/chrome/browser/ui/browser_ui_prefs.cc
91+++ chrome/browser/ui/browser_ui_prefs.cc 80+++ b/chrome/browser/ui/browser_ui_prefs.cc
92@@ -77,11 +77,11 @@ void RegisterBrowserUserPrefs(user_prefs 81@@ -77,11 +77,11 @@ void RegisterBrowserUserPrefs(user_prefs
93 registry->RegisterBooleanPref(prefs::kWebAppCreateInAppsMenu, true); 82 registry->RegisterBooleanPref(prefs::kWebAppCreateInAppsMenu, true);
94 registry->RegisterBooleanPref(prefs::kWebAppCreateInQuickLaunchBar, true); 83 registry->RegisterBooleanPref(prefs::kWebAppCreateInQuickLaunchBar, true);
@@ -103,19 +92,8 @@
103 registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacement); 92 registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacement);
104 registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacementPopup); 93 registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacementPopup);
105 registry->RegisterDictionaryPref(prefs::kAppWindowPlacement); 94 registry->RegisterDictionaryPref(prefs::kAppWindowPlacement);
106--- chrome/service/cloud_print/connector_settings.cc.orig 95--- a/components/autofill/core/common/autofill_prefs.cc
107+++ chrome/service/cloud_print/connector_settings.cc 96+++ b/components/autofill/core/common/autofill_prefs.cc
108@@ -59,7 +59,7 @@ void ConnectorSettings::InitFrom(Service
109 DCHECK(server_url_.is_valid());
110
111 connect_new_printers_ = prefs->GetBoolean(
112- prefs::kCloudPrintConnectNewPrinters, true);
113+ prefs::kCloudPrintConnectNewPrinters, false);
114
115 xmpp_ping_enabled_ = prefs->GetBoolean(
116 prefs::kCloudPrintXmppPingEnabled, false);
117--- components/autofill/core/common/autofill_prefs.cc.orig
118+++ components/autofill/core/common/autofill_prefs.cc
119@@ -131,10 +131,10 @@ const char kAutocompleteLastVersionReten 97@@ -131,10 +131,10 @@ const char kAutocompleteLastVersionReten
120 void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { 98 void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
121 // Synced prefs. Used for cross-device choices, e.g., credit card Autofill. 99 // Synced prefs. Used for cross-device choices, e.g., credit card Autofill.
@@ -138,9 +116,9 @@
138 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); 116 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
139 registry->RegisterStringPref( 117 registry->RegisterStringPref(
140 prefs::kAutofillProfileValidity, "", 118 prefs::kAutofillProfileValidity, "",
141--- components/bookmarks/browser/bookmark_utils.cc.orig 119--- a/components/bookmarks/browser/bookmark_utils.cc
142+++ components/bookmarks/browser/bookmark_utils.cc 120+++ b/components/bookmarks/browser/bookmark_utils.cc
143@@ -437,7 +437,7 @@ bool DoesBookmarkContainWords(const std: 121@@ -438,7 +438,7 @@ bool DoesBookmarkContainWords(const std:
144 void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { 122 void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
145 registry->RegisterBooleanPref( 123 registry->RegisterBooleanPref(
146 prefs::kShowBookmarkBar, 124 prefs::kShowBookmarkBar,
@@ -149,8 +127,8 @@
149 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); 127 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
150 registry->RegisterBooleanPref(prefs::kEditBookmarksEnabled, true); 128 registry->RegisterBooleanPref(prefs::kEditBookmarksEnabled, true);
151 registry->RegisterBooleanPref( 129 registry->RegisterBooleanPref(
152--- components/bookmarks/browser/features.cc.orig 130--- a/components/bookmarks/browser/features.cc
153+++ components/bookmarks/browser/features.cc 131+++ b/components/bookmarks/browser/features.cc
154@@ -10,7 +10,7 @@ namespace features { 132@@ -10,7 +10,7 @@ namespace features {
155 // Changes the apps shortcut on the bookmarks bar to default to off. 133 // Changes the apps shortcut on the bookmarks bar to default to off.
156 // https://crbug.com/1236793 134 // https://crbug.com/1236793
@@ -160,8 +138,8 @@
160 138
161 } // namespace features 139 } // namespace features
162 } // namespace bookmarks 140 } // namespace bookmarks
163--- components/content_settings/core/browser/cookie_settings.cc.orig 141--- a/components/content_settings/core/browser/cookie_settings.cc
164+++ components/content_settings/core/browser/cookie_settings.cc 142+++ b/components/content_settings/core/browser/cookie_settings.cc
165@@ -63,7 +63,7 @@ void CookieSettings::RegisterProfilePref 143@@ -63,7 +63,7 @@ void CookieSettings::RegisterProfilePref
166 user_prefs::PrefRegistrySyncable* registry) { 144 user_prefs::PrefRegistrySyncable* registry) {
167 registry->RegisterIntegerPref( 145 registry->RegisterIntegerPref(
@@ -171,8 +149,8 @@
171 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); 149 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
172 } 150 }
173 151
174--- components/password_manager/core/browser/password_manager.cc.orig 152--- a/components/password_manager/core/browser/password_manager.cc
175+++ components/password_manager/core/browser/password_manager.cc 153+++ b/components/password_manager/core/browser/password_manager.cc
176@@ -204,10 +204,10 @@ bool HasMutedCredentials(base::span<cons 154@@ -204,10 +204,10 @@ bool HasMutedCredentials(base::span<cons
177 void PasswordManager::RegisterProfilePrefs( 155 void PasswordManager::RegisterProfilePrefs(
178 user_prefs::PrefRegistrySyncable* registry) { 156 user_prefs::PrefRegistrySyncable* registry) {
@@ -186,8 +164,8 @@
186 user_prefs::PrefRegistrySyncable::SYNCABLE_PRIORITY_PREF); 164 user_prefs::PrefRegistrySyncable::SYNCABLE_PRIORITY_PREF);
187 registry->RegisterStringPref(prefs::kSyncPasswordHash, std::string(), 165 registry->RegisterStringPref(prefs::kSyncPasswordHash, std::string(),
188 PrefRegistry::NO_REGISTRATION_FLAGS); 166 PrefRegistry::NO_REGISTRATION_FLAGS);
189--- components/payments/core/payment_prefs.cc.orig 167--- a/components/payments/core/payment_prefs.cc
190+++ components/payments/core/payment_prefs.cc 168+++ b/components/payments/core/payment_prefs.cc
191@@ -16,7 +16,7 @@ const char kCanMakePaymentEnabled[] = "p 169@@ -16,7 +16,7 @@ const char kCanMakePaymentEnabled[] = "p
192 void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { 170 void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
193 registry->RegisterBooleanPref(kPaymentsFirstTransactionCompleted, false); 171 registry->RegisterBooleanPref(kPaymentsFirstTransactionCompleted, false);
diff --git a/www/chromium-uc/patches/extra/inox-patchset/0008-restore-classic-ntp.patch b/www/chromium-uc/patches/extra/inox-patchset/0008-restore-classic-ntp.patch
index 9d21b6f..288c6f5 100644
--- a/www/chromium-uc/patches/extra/inox-patchset/0008-restore-classic-ntp.patch
+++ b/www/chromium-uc/patches/extra/inox-patchset/0008-restore-classic-ntp.patch
@@ -1,6 +1,6 @@
1--- chrome/browser/search/search.cc.orig 1--- a/chrome/browser/search/search.cc
2+++ chrome/browser/search/search.cc 2+++ b/chrome/browser/search/search.cc
3@@ -182,26 +182,7 @@ struct NewTabURLDetails { 3@@ -184,26 +184,7 @@ struct NewTabURLDetails {
4 : chrome::kChromeUINewTabPageThirdPartyURL); 4 : chrome::kChromeUINewTabPageThirdPartyURL);
5 #endif 5 #endif
6 6
@@ -28,8 +28,8 @@
28 } 28 }
29 29
30 const GURL url; 30 const GURL url;
31--- components/ntp_snippets/features.cc.orig 31--- a/components/ntp_snippets/features.cc
32+++ components/ntp_snippets/features.cc 32+++ b/components/ntp_snippets/features.cc
33@@ -39,7 +39,7 @@ const base::Feature* const kAllFeatures[ 33@@ -39,7 +39,7 @@ const base::Feature* const kAllFeatures[
34 &kOptionalImagesEnabledFeature}; 34 &kOptionalImagesEnabledFeature};
35 35
diff --git a/www/chromium-uc/patches/extra/inox-patchset/0013-disable-missing-key-warning.patch b/www/chromium-uc/patches/extra/inox-patchset/0013-disable-missing-key-warning.patch
index 0b14cd8..c5a74c7 100644
--- a/www/chromium-uc/patches/extra/inox-patchset/0013-disable-missing-key-warning.patch
+++ b/www/chromium-uc/patches/extra/inox-patchset/0013-disable-missing-key-warning.patch
@@ -1,5 +1,5 @@
1--- chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc.orig 1--- a/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc
2+++ chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc 2+++ b/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc
3@@ -17,9 +17,6 @@ 3@@ -17,9 +17,6 @@
4 // static 4 // static
5 void GoogleApiKeysInfoBarDelegate::Create( 5 void GoogleApiKeysInfoBarDelegate::Create(
diff --git a/www/chromium-uc/patches/extra/inox-patchset/0016-chromium-sandbox-pie.patch b/www/chromium-uc/patches/extra/inox-patchset/0016-chromium-sandbox-pie.patch
index ff72a53..6ee4d73 100644
--- a/www/chromium-uc/patches/extra/inox-patchset/0016-chromium-sandbox-pie.patch
+++ b/www/chromium-uc/patches/extra/inox-patchset/0016-chromium-sandbox-pie.patch
@@ -1,6 +1,6 @@
1--- sandbox/linux/BUILD.gn.orig 1--- a/sandbox/linux/BUILD.gn
2+++ sandbox/linux/BUILD.gn 2+++ b/sandbox/linux/BUILD.gn
3@@ -327,6 +327,12 @@ if (is_linux || is_chromeos) { 3@@ -296,6 +296,12 @@ if (is_linux || is_chromeos) {
4 # These files have a suspicious comparison. 4 # These files have a suspicious comparison.
5 # TODO fix this and re-enable this warning. 5 # TODO fix this and re-enable this warning.
6 "-Wno-sign-compare", 6 "-Wno-sign-compare",
diff --git a/www/chromium-uc/patches/extra/inox-patchset/0018-disable-first-run-behaviour.patch b/www/chromium-uc/patches/extra/inox-patchset/0018-disable-first-run-behaviour.patch
index 4790f65..dd03502 100644
--- a/www/chromium-uc/patches/extra/inox-patchset/0018-disable-first-run-behaviour.patch
+++ b/www/chromium-uc/patches/extra/inox-patchset/0018-disable-first-run-behaviour.patch
@@ -1,6 +1,6 @@
1--- chrome/browser/ui/startup/startup_tab_provider.cc.orig 1--- a/chrome/browser/ui/startup/startup_tab_provider.cc
2+++ chrome/browser/ui/startup/startup_tab_provider.cc 2+++ b/chrome/browser/ui/startup/startup_tab_provider.cc
3@@ -105,7 +105,7 @@ bool ValidateUrl(const GURL& url) { 3@@ -108,7 +108,7 @@ bool ValidateUrl(const GURL& url) {
4 4
5 StartupTabs StartupTabProviderImpl::GetOnboardingTabs(Profile* profile) const { 5 StartupTabs StartupTabProviderImpl::GetOnboardingTabs(Profile* profile) const {
6 // Chrome OS has its own welcome flow provided by OOBE. 6 // Chrome OS has its own welcome flow provided by OOBE.
diff --git a/www/chromium-uc/patches/extra/inox-patchset/0019-disable-battery-status-service.patch b/www/chromium-uc/patches/extra/inox-patchset/0019-disable-battery-status-service.patch
index ded3df9..e69d4da 100644
--- a/www/chromium-uc/patches/extra/inox-patchset/0019-disable-battery-status-service.patch
+++ b/www/chromium-uc/patches/extra/inox-patchset/0019-disable-battery-status-service.patch
@@ -1,5 +1,5 @@
1--- services/device/battery/battery_status_service.cc.orig 1--- a/services/device/battery/battery_status_service.cc
2+++ services/device/battery/battery_status_service.cc 2+++ b/services/device/battery/battery_status_service.cc
3@@ -22,10 +22,7 @@ BatteryStatusService::BatteryStatusServi 3@@ -22,10 +22,7 @@ BatteryStatusService::BatteryStatusServi
4 update_callback_( 4 update_callback_(
5 base::BindRepeating(&BatteryStatusService::NotifyConsumers, 5 base::BindRepeating(&BatteryStatusService::NotifyConsumers,
@@ -82,9 +82,9 @@
82 is_shutdown_ = false; 82 is_shutdown_ = false;
83 main_thread_task_runner_ = base::ThreadTaskRunnerHandle::Get(); 83 main_thread_task_runner_ = base::ThreadTaskRunnerHandle::Get();
84 } 84 }
85--- services/device/battery/battery_status_service.h.orig 85--- a/services/device/battery/battery_status_service.h
86+++ services/device/battery/battery_status_service.h 86+++ b/services/device/battery/battery_status_service.h
87@@ -60,15 +60,10 @@ class BatteryStatusService { 87@@ -59,15 +59,10 @@ class BatteryStatusService {
88 // Updates current battery status and sends new status to interested 88 // Updates current battery status and sends new status to interested
89 // render processes. Can be called on any thread via a callback. 89 // render processes. Can be called on any thread via a callback.
90 void NotifyConsumers(const mojom::BatteryStatus& status); 90 void NotifyConsumers(const mojom::BatteryStatus& status);
diff --git a/www/chromium-uc/patches/extra/iridium-browser/Remove-EV-certificates.patch b/www/chromium-uc/patches/extra/iridium-browser/Remove-EV-certificates.patch
index 8f794fe..5f6dedb 100644
--- a/www/chromium-uc/patches/extra/iridium-browser/Remove-EV-certificates.patch
+++ b/www/chromium-uc/patches/extra/iridium-browser/Remove-EV-certificates.patch
@@ -7,16 +7,15 @@ The team chose to let EV certificates appear just like normal
7certificates. The web of trust is considered a failure in itself, so 7certificates. The web of trust is considered a failure in itself, so
8do not give users a false sense of extra security with EV certs. 8do not give users a false sense of extra security with EV certs.
9Instead, let them appear just like regular ones. 9Instead, let them appear just like regular ones.
10---
11 net/cert/ev_root_ca_metadata.cc | 14 +++++++++++++-
12 1 file changed, 13 insertions(+), 1 deletion(-)
13 10
14--- net/cert/ev_root_ca_metadata.cc.orig 11--- a/net/cert/ev_root_ca_metadata.cc
15+++ net/cert/ev_root_ca_metadata.cc 12+++ b/net/cert/ev_root_ca_metadata.cc
16@@ -41,6 +41,16 @@ struct EVMetadata { 13@@ -41,7 +41,17 @@ struct EVMetadata {
14 const base::StringPiece policy_oids[kMaxOIDsPerCA];
15 };
17 16
18 // These certificates may be found in net/data/ssl/ev_roots. 17-#include "net/data/ssl/ev_roots/chrome-ev-root-store-inc.cc"
19 static const EVMetadata kEvRootCaMetadata[] = { 18+static const EVMetadata kEvRootCaMetadata[] = {
20+ // need some dummy thing to make compiler happy, because 19+ // need some dummy thing to make compiler happy, because
21+ // arraysize() is implemented as a convoluted template rather than 20+ // arraysize() is implemented as a convoluted template rather than
22+ // the traditional sizeof(x)/sizeof(*x) 21+ // the traditional sizeof(x)/sizeof(*x)
@@ -25,18 +24,7 @@ Instead, let them appear just like regular ones.
25+ { 24+ {
26+ "0", 25+ "0",
27+ } 26+ }
28+ },
29+#if 0
30 // AC Camerfirma S.A. Chambers of Commerce Root - 2008
31 // https://www.camerfirma.com
32 {
33@@ -590,7 +600,9 @@ static const EVMetadata kEvRootCaMetadat
34 0xd2, 0x09, 0xb7, 0x37, 0xcb, 0xe2, 0xc1, 0x8c, 0xfb, 0x2c, 0x10,
35 0xc0, 0xff, 0x0b, 0xcf, 0x0d, 0x32, 0x86, 0xfc, 0x1a, 0xa2}},
36 {"2.16.840.1.114404.1.1.2.4.1", ""},
37- }};
38+ } 27+ }
39+#endif
40+}; 28+};
41 29
42 #endif // defined(PLATFORM_USES_CHROMIUM_EV_METADATA) 30 #endif // defined(PLATFORM_USES_CHROMIUM_EV_METADATA)
diff --git a/www/chromium-uc/patches/extra/iridium-browser/browser-disable-profile-auto-import-on-first-run.patch b/www/chromium-uc/patches/extra/iridium-browser/browser-disable-profile-auto-import-on-first-run.patch
index 0072e8f..2f3b4f7 100644
--- a/www/chromium-uc/patches/extra/iridium-browser/browser-disable-profile-auto-import-on-first-run.patch
+++ b/www/chromium-uc/patches/extra/iridium-browser/browser-disable-profile-auto-import-on-first-run.patch
@@ -3,18 +3,14 @@ From: Joachim Bauch <jojo@struktur.de>
3Date: Thu, 25 Jun 2015 15:51:59 +0200 3Date: Thu, 25 Jun 2015 15:51:59 +0200
4Subject: [PATCH 56/66] browser: disable profile auto-import on first run 4Subject: [PATCH 56/66] browser: disable profile auto-import on first run
5 5
6--- 6--- a/chrome/browser/chrome_browser_main.cc
7 chrome/browser/chrome_browser_main.cc | 2 -- 7+++ b/chrome/browser/chrome_browser_main.cc
8 1 file changed, 2 deletions(-) 8@@ -1617,8 +1617,6 @@ int ChromeBrowserMainParts::PreMainMessa
9
10--- chrome/browser/chrome_browser_main.cc.orig
11+++ chrome/browser/chrome_browser_main.cc
12@@ -1492,8 +1492,6 @@ int ChromeBrowserMainParts::PreMainMessa
13 // and preferences have been registered since some of the import code depends 9 // and preferences have been registered since some of the import code depends
14 // on preferences. 10 // on preferences.
15 if (first_run::IsChromeFirstRun()) { 11 if (first_run::IsChromeFirstRun()) {
16- first_run::AutoImport(profile_, master_prefs_->import_bookmarks_path); 12- first_run::AutoImport(profile, master_prefs_->import_bookmarks_path);
17- 13-
18 // Note: This can pop-up the first run consent dialog on Linux & Mac. 14 // Note: This can pop-up the first run consent dialog on Linux & Mac.
19 first_run::DoPostImportTasks(profile_, 15 first_run::DoPostImportTasks(profile,
20 master_prefs_->make_chrome_default_for_user); 16 master_prefs_->make_chrome_default_for_user);
diff --git a/www/chromium-uc/patches/extra/iridium-browser/mime_util-force-text-x-suse-ymp-to-be-downloaded.patch b/www/chromium-uc/patches/extra/iridium-browser/mime_util-force-text-x-suse-ymp-to-be-downloaded.patch
index a6eab74..e66b0d6 100644
--- a/www/chromium-uc/patches/extra/iridium-browser/mime_util-force-text-x-suse-ymp-to-be-downloaded.patch
+++ b/www/chromium-uc/patches/extra/iridium-browser/mime_util-force-text-x-suse-ymp-to-be-downloaded.patch
@@ -9,8 +9,8 @@ very interesting in themselves. Force them to be stored.
9 components/mime_util/mime_util.cc | 1 + 9 components/mime_util/mime_util.cc | 1 +
10 1 file changed, 1 insertion(+) 10 1 file changed, 1 insertion(+)
11 11
12--- third_party/blink/common/mime_util/mime_util.cc.orig 12--- a/third_party/blink/common/mime_util/mime_util.cc
13+++ third_party/blink/common/mime_util/mime_util.cc 13+++ b/third_party/blink/common/mime_util/mime_util.cc
14@@ -83,6 +83,7 @@ static const char* const kUnsupportedTex 14@@ -83,6 +83,7 @@ static const char* const kUnsupportedTex
15 "text/x-csv", 15 "text/x-csv",
16 "text/x-vcf", 16 "text/x-vcf",
diff --git a/www/chromium-uc/patches/extra/iridium-browser/net-cert-increase-default-key-length-for-newly-gener.patch b/www/chromium-uc/patches/extra/iridium-browser/net-cert-increase-default-key-length-for-newly-gener.patch
index 394a6da..fe39bb4 100644
--- a/www/chromium-uc/patches/extra/iridium-browser/net-cert-increase-default-key-length-for-newly-gener.patch
+++ b/www/chromium-uc/patches/extra/iridium-browser/net-cert-increase-default-key-length-for-newly-gener.patch
@@ -10,9 +10,9 @@ it as hidden as it was before?
10 net/cert/x509_util.cc | 2 +- 10 net/cert/x509_util.cc | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-) 11 1 file changed, 1 insertion(+), 1 deletion(-)
12 12
13--- net/cert/x509_util.cc.orig 13--- a/net/cert/x509_util.cc
14+++ net/cert/x509_util.cc 14+++ b/net/cert/x509_util.cc
15@@ -241,7 +241,7 @@ bool GetTLSServerEndPointChannelBinding( 15@@ -243,7 +243,7 @@ bool GetTLSServerEndPointChannelBinding(
16 } 16 }
17 17
18 // RSA keys created by CreateKeyAndSelfSignedCert will be of this length. 18 // RSA keys created by CreateKeyAndSelfSignedCert will be of this length.
diff --git a/www/chromium-uc/patches/extra/iridium-browser/prefs-always-prompt-for-download-directory-by-defaul.patch b/www/chromium-uc/patches/extra/iridium-browser/prefs-always-prompt-for-download-directory-by-defaul.patch
index beb8b0b..b1aa987 100644
--- a/www/chromium-uc/patches/extra/iridium-browser/prefs-always-prompt-for-download-directory-by-defaul.patch
+++ b/www/chromium-uc/patches/extra/iridium-browser/prefs-always-prompt-for-download-directory-by-defaul.patch
@@ -27,9 +27,9 @@ TLDR: Do not let files sneak onto the disk too easily.
27 chrome/browser/download/download_prefs.cc | 2 +- 27 chrome/browser/download/download_prefs.cc | 2 +-
28 1 file changed, 1 insertion(+), 1 deletion(-) 28 1 file changed, 1 insertion(+), 1 deletion(-)
29 29
30--- chrome/browser/download/download_prefs.cc.orig 30--- a/chrome/browser/download/download_prefs.cc
31+++ chrome/browser/download/download_prefs.cc 31+++ b/chrome/browser/download/download_prefs.cc
32@@ -271,7 +271,7 @@ void DownloadPrefs::RegisterProfilePrefs 32@@ -262,7 +262,7 @@ void DownloadPrefs::RegisterProfilePrefs
33 user_prefs::PrefRegistrySyncable* registry) { 33 user_prefs::PrefRegistrySyncable* registry) {
34 registry->RegisterBooleanPref( 34 registry->RegisterBooleanPref(
35 prefs::kPromptForDownload, 35 prefs::kPromptForDownload,
diff --git a/www/chromium-uc/patches/extra/iridium-browser/prefs-only-keep-cookies-until-exit.patch b/www/chromium-uc/patches/extra/iridium-browser/prefs-only-keep-cookies-until-exit.patch
index 01696b7..41e42b8 100644
--- a/www/chromium-uc/patches/extra/iridium-browser/prefs-only-keep-cookies-until-exit.patch
+++ b/www/chromium-uc/patches/extra/iridium-browser/prefs-only-keep-cookies-until-exit.patch
@@ -8,11 +8,11 @@ Out with all those tracking cookies!
8 components/content_settings/core/browser/content_settings_registry.cc | 2 +- 8 components/content_settings/core/browser/content_settings_registry.cc | 2 +-
9 1 file changed, 1 insertion(+), 1 deletion(-) 9 1 file changed, 1 insertion(+), 1 deletion(-)
10 10
11--- components/content_settings/core/browser/content_settings_registry.cc.orig 11--- a/components/content_settings/core/browser/content_settings_registry.cc
12+++ components/content_settings/core/browser/content_settings_registry.cc 12+++ b/components/content_settings/core/browser/content_settings_registry.cc
13@@ -126,7 +126,7 @@ void ContentSettingsRegistry::Init() { 13@@ -131,7 +131,7 @@ void ContentSettingsRegistry::Init() {
14 // WARNING: The string names of the permissions passed in below are used to 14 // PrefProvider::DiscardOrMigrateObsoletePreferences() and
15 // generate preference names and should never be changed! 15 // DefaultProvider::DiscardOrMigrateObsoletePreferences() accordingly.
16 16
17- Register(ContentSettingsType::COOKIES, "cookies", CONTENT_SETTING_ALLOW, 17- Register(ContentSettingsType::COOKIES, "cookies", CONTENT_SETTING_ALLOW,
18+ Register(ContentSettingsType::COOKIES, "cookies", CONTENT_SETTING_SESSION_ONLY, 18+ Register(ContentSettingsType::COOKIES, "cookies", CONTENT_SETTING_SESSION_ONLY,
diff --git a/www/chromium-uc/patches/extra/iridium-browser/updater-disable-auto-update.patch b/www/chromium-uc/patches/extra/iridium-browser/updater-disable-auto-update.patch
index a6be904..1394a10 100644
--- a/www/chromium-uc/patches/extra/iridium-browser/updater-disable-auto-update.patch
+++ b/www/chromium-uc/patches/extra/iridium-browser/updater-disable-auto-update.patch
@@ -14,8 +14,8 @@ the case anyway, since we are based off Chromium, not Chrome.
14 chrome/browser/app_controller_mac.mm | 2 +- 14 chrome/browser/app_controller_mac.mm | 2 +-
15 1 file changed, 1 insertion(+), 1 deletion(-) 15 1 file changed, 1 insertion(+), 1 deletion(-)
16 16
17--- chrome/browser/app_controller_mac.mm.orig 17--- a/chrome/browser/app_controller_mac.mm
18+++ chrome/browser/app_controller_mac.mm 18+++ b/chrome/browser/app_controller_mac.mm
19@@ -866,7 +866,7 @@ static base::mac::ScopedObjCClassSwizzle 19@@ -866,7 +866,7 @@ static base::mac::ScopedObjCClassSwizzle
20 CFStringRef checkInterval = CFSTR("checkInterval"); 20 CFStringRef checkInterval = CFSTR("checkInterval");
21 CFPropertyListRef plist = CFPreferencesCopyAppValue(checkInterval, app); 21 CFPropertyListRef plist = CFPreferencesCopyAppValue(checkInterval, app);
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-components-ungoogled.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-components-ungoogled.patch
index 167eaec..c9ef633 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-components-ungoogled.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-components-ungoogled.patch
@@ -1,7 +1,7 @@
1# Add ungoogled-chromium-specific code to components/ungoogled/ 1# Add ungoogled-chromium-specific code to components/ungoogled/
2 2
3--- /dev/null 3--- /dev/null
4+++ components/ungoogled/BUILD.gn 4+++ b/components/ungoogled/BUILD.gn
5@@ -0,0 +1,14 @@ 5@@ -0,0 +1,14 @@
6+# Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved. 6+# Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved.
7+# Use of this source code is governed by a BSD-style license that can be 7+# Use of this source code is governed by a BSD-style license that can be
@@ -18,7 +18,7 @@
18+ deps = [ "//base" ] 18+ deps = [ "//base" ]
19+} 19+}
20--- /dev/null 20--- /dev/null
21+++ components/ungoogled/ungoogled_switches.cc 21+++ b/components/ungoogled/ungoogled_switches.cc
22@@ -0,0 +1,21 @@ 22@@ -0,0 +1,21 @@
23+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved. 23+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved.
24+// Use of this source code is governed by a BSD-style license that can be 24+// Use of this source code is governed by a BSD-style license that can be
@@ -42,7 +42,7 @@
42+ 42+
43+} // namespace switches 43+} // namespace switches
44--- /dev/null 44--- /dev/null
45+++ components/ungoogled/ungoogled_switches.h 45+++ b/components/ungoogled/ungoogled_switches.h
46@@ -0,0 +1,21 @@ 46@@ -0,0 +1,21 @@
47+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved. 47+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved.
48+// Use of this source code is governed by a BSD-style license that can be 48+// Use of this source code is governed by a BSD-style license that can be
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-extra-channel-info.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-extra-channel-info.patch
index 6df493e..0df57e0 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-extra-channel-info.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-extra-channel-info.patch
@@ -5,8 +5,8 @@ author: Wengling Chen <feiyu2817@gmail.com>
5 components/version_ui_strings.grdp | 4 ++-- 5 components/version_ui_strings.grdp | 4 ++--
6 1 file changed, 2 insertions(+), 2 deletions(-) 6 1 file changed, 2 insertions(+), 2 deletions(-)
7 7
8--- components/version_ui_strings.grdp.orig 8--- a/components/version_ui_strings.grdp
9+++ components/version_ui_strings.grdp 9+++ b/components/version_ui_strings.grdp
10@@ -4,10 +4,10 @@ 10@@ -4,10 +4,10 @@
11 About Version 11 About Version
12 </message> 12 </message>
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-bookmark-bar-ntp.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-bookmark-bar-ntp.patch
index 0d622e8..169ac68 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-bookmark-bar-ntp.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-bookmark-bar-ntp.patch
@@ -1,5 +1,5 @@
1--- chrome/browser/ui/bookmarks/bookmark_tab_helper.cc.orig 1--- a/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc
2+++ chrome/browser/ui/bookmarks/bookmark_tab_helper.cc 2+++ b/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc
3@@ -4,6 +4,7 @@ 3@@ -4,6 +4,7 @@
4 4
5 #include "chrome/browser/ui/bookmarks/bookmark_tab_helper.h" 5 #include "chrome/browser/ui/bookmarks/bookmark_tab_helper.h"
@@ -22,8 +22,8 @@
22 } 22 }
23 23
24 void BookmarkTabHelper::AddObserver(BookmarkTabHelperObserver* observer) { 24 void BookmarkTabHelper::AddObserver(BookmarkTabHelperObserver* observer) {
25--- chrome/browser/ungoogled_flag_choices.h.orig 25--- a/chrome/browser/ungoogled_flag_choices.h
26+++ chrome/browser/ungoogled_flag_choices.h 26+++ b/chrome/browser/ungoogled_flag_choices.h
27@@ -39,4 +39,10 @@ const FeatureEntry::Choice kPDFPluginNam 27@@ -39,4 +39,10 @@ const FeatureEntry::Choice kPDFPluginNam
28 {"Google Chrome", switches::kPDFPluginName, "chrome"}, 28 {"Google Chrome", switches::kPDFPluginName, "chrome"},
29 {"Microsoft Edge", switches::kPDFPluginName, "edge"}, 29 {"Microsoft Edge", switches::kPDFPluginName, "edge"},
@@ -35,9 +35,9 @@
35+ "never"}, 35+ "never"},
36+}; 36+};
37 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_ 37 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_
38--- chrome/browser/ungoogled_flag_entries.h.orig 38--- a/chrome/browser/ungoogled_flag_entries.h
39+++ chrome/browser/ungoogled_flag_entries.h 39+++ b/chrome/browser/ungoogled_flag_entries.h
40@@ -44,4 +44,8 @@ 40@@ -40,4 +40,8 @@
41 "Set internal PDF plugin name", 41 "Set internal PDF plugin name",
42 "Sets the internal PDF viewer plugin name. Useful for sites that probe JS API navigator.plugins. ungoogled-chromium flag.", 42 "Sets the internal PDF viewer plugin name. Useful for sites that probe JS API navigator.plugins. ungoogled-chromium flag.",
43 kOsDesktop, MULTI_VALUE_TYPE(kPDFPluginNameChoices)}, 43 kOsDesktop, MULTI_VALUE_TYPE(kPDFPluginNameChoices)},
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-close-confirmation.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-close-confirmation.patch
index 56dc7e2..81fd375 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-close-confirmation.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-close-confirmation.patch
@@ -1,6 +1,6 @@
1--- chrome/browser/ui/browser.cc.orig 1--- a/chrome/browser/ui/browser.cc
2+++ chrome/browser/ui/browser.cc 2+++ b/chrome/browser/ui/browser.cc
3@@ -140,6 +140,8 @@ 3@@ -139,6 +139,8 @@
4 #include "chrome/browser/ui/tabs/tab_strip_model.h" 4 #include "chrome/browser/ui/tabs/tab_strip_model.h"
5 #include "chrome/browser/ui/tabs/tab_utils.h" 5 #include "chrome/browser/ui/tabs/tab_utils.h"
6 #include "chrome/browser/ui/ui_features.h" 6 #include "chrome/browser/ui/ui_features.h"
@@ -9,7 +9,7 @@
9 #include "chrome/browser/ui/web_applications/app_browser_controller.h" 9 #include "chrome/browser/ui/web_applications/app_browser_controller.h"
10 #include "chrome/browser/ui/web_applications/web_app_launch_utils.h" 10 #include "chrome/browser/ui/web_applications/web_app_launch_utils.h"
11 #include "chrome/browser/ui/webui/signin/login_ui_service.h" 11 #include "chrome/browser/ui/webui/signin/login_ui_service.h"
12@@ -467,6 +469,7 @@ Browser::Browser(const CreateParams& par 12@@ -468,6 +470,7 @@ Browser::Browser(const CreateParams& par
13 omit_from_session_restore_(params.omit_from_session_restore), 13 omit_from_session_restore_(params.omit_from_session_restore),
14 should_trigger_session_restore_(params.should_trigger_session_restore), 14 should_trigger_session_restore_(params.should_trigger_session_restore),
15 cancel_download_confirmation_state_(NOT_PROMPTED), 15 cancel_download_confirmation_state_(NOT_PROMPTED),
@@ -17,7 +17,7 @@
17 override_bounds_(params.initial_bounds), 17 override_bounds_(params.initial_bounds),
18 initial_show_state_(params.initial_show_state), 18 initial_show_state_(params.initial_show_state),
19 initial_workspace_(params.initial_workspace), 19 initial_workspace_(params.initial_workspace),
20@@ -830,7 +833,7 @@ Browser::WarnBeforeClosingResult Browser 20@@ -835,7 +838,7 @@ Browser::WarnBeforeClosingResult Browser
21 // If the browser can close right away (there are no pending downloads we need 21 // If the browser can close right away (there are no pending downloads we need
22 // to prompt about) then there's no need to warn. In the future, we might need 22 // to prompt about) then there's no need to warn. In the future, we might need
23 // to check other conditions as well. 23 // to check other conditions as well.
@@ -26,7 +26,7 @@
26 return WarnBeforeClosingResult::kOkToClose; 26 return WarnBeforeClosingResult::kOkToClose;
27 27
28 DCHECK(!warn_before_closing_callback_) 28 DCHECK(!warn_before_closing_callback_)
29@@ -860,6 +863,7 @@ bool Browser::TryToCloseWindow( 29@@ -865,6 +868,7 @@ bool Browser::TryToCloseWindow(
30 30
31 void Browser::ResetTryToCloseWindow() { 31 void Browser::ResetTryToCloseWindow() {
32 cancel_download_confirmation_state_ = NOT_PROMPTED; 32 cancel_download_confirmation_state_ = NOT_PROMPTED;
@@ -34,7 +34,7 @@
34 unload_controller_.ResetTryToCloseWindow(); 34 unload_controller_.ResetTryToCloseWindow();
35 } 35 }
36 36
37@@ -2702,6 +2706,62 @@ bool Browser::CanCloseWithInProgressDown 37@@ -2698,6 +2702,62 @@ bool Browser::CanCloseWithInProgressDown
38 return false; 38 return false;
39 } 39 }
40 40
@@ -97,7 +97,7 @@
97 void Browser::InProgressDownloadResponse(bool cancel_downloads) { 97 void Browser::InProgressDownloadResponse(bool cancel_downloads) {
98 if (cancel_downloads) { 98 if (cancel_downloads) {
99 cancel_download_confirmation_state_ = RESPONSE_RECEIVED; 99 cancel_download_confirmation_state_ = RESPONSE_RECEIVED;
100@@ -2720,6 +2780,22 @@ void Browser::InProgressDownloadResponse 100@@ -2716,6 +2776,22 @@ void Browser::InProgressDownloadResponse
101 101
102 std::move(warn_before_closing_callback_) 102 std::move(warn_before_closing_callback_)
103 .Run(WarnBeforeClosingResult::kDoNotClose); 103 .Run(WarnBeforeClosingResult::kDoNotClose);
@@ -120,8 +120,8 @@
120 } 120 }
121 121
122 void Browser::FinishWarnBeforeClosing(WarnBeforeClosingResult result) { 122 void Browser::FinishWarnBeforeClosing(WarnBeforeClosingResult result) {
123--- chrome/browser/ui/browser.h.orig 123--- a/chrome/browser/ui/browser.h
124+++ chrome/browser/ui/browser.h 124+++ b/chrome/browser/ui/browser.h
125@@ -26,6 +26,7 @@ 125@@ -26,6 +26,7 @@
126 #include "chrome/browser/ui/bookmarks/bookmark_tab_helper_observer.h" 126 #include "chrome/browser/ui/bookmarks/bookmark_tab_helper_observer.h"
127 #include "chrome/browser/ui/browser_navigator_params.h" 127 #include "chrome/browser/ui/browser_navigator_params.h"
@@ -130,7 +130,7 @@
130 #include "chrome/browser/ui/signin_view_controller.h" 130 #include "chrome/browser/ui/signin_view_controller.h"
131 #include "chrome/browser/ui/tabs/tab_strip_model_observer.h" 131 #include "chrome/browser/ui/tabs/tab_strip_model_observer.h"
132 #include "chrome/browser/ui/unload_controller.h" 132 #include "chrome/browser/ui/unload_controller.h"
133@@ -1008,12 +1009,17 @@ class Browser : public TabStripModelObse 133@@ -1015,12 +1016,17 @@ class Browser : public TabStripModelObse
134 // Returns true if the window can close, false otherwise. 134 // Returns true if the window can close, false otherwise.
135 bool CanCloseWithInProgressDownloads(); 135 bool CanCloseWithInProgressDownloads();
136 136
@@ -148,7 +148,7 @@
148 // Called when all warnings have completed when attempting to close the 148 // Called when all warnings have completed when attempting to close the
149 // browser directly (e.g. via hotkey, close button, terminate signal, etc.) 149 // browser directly (e.g. via hotkey, close button, terminate signal, etc.)
150 // Used as a WarnBeforeClosingCallback by ShouldCloseWindow(). 150 // Used as a WarnBeforeClosingCallback by ShouldCloseWindow().
151@@ -1176,6 +1182,8 @@ class Browser : public TabStripModelObse 151@@ -1183,6 +1189,8 @@ class Browser : public TabStripModelObse
152 // when the browser is closed with in-progress downloads. 152 // when the browser is closed with in-progress downloads.
153 CancelDownloadConfirmationState cancel_download_confirmation_state_; 153 CancelDownloadConfirmationState cancel_download_confirmation_state_;
154 154
@@ -157,8 +157,8 @@
157 ///////////////////////////////////////////////////////////////////////////// 157 /////////////////////////////////////////////////////////////////////////////
158 158
159 // Override values for the bounds of the window and its maximized or minimized 159 // Override values for the bounds of the window and its maximized or minimized
160--- chrome/browser/ungoogled_flag_choices.h.orig 160--- a/chrome/browser/ungoogled_flag_choices.h
161+++ chrome/browser/ungoogled_flag_choices.h 161+++ b/chrome/browser/ungoogled_flag_choices.h
162@@ -66,4 +66,13 @@ const FeatureEntry::Choice kCloseWindowW 162@@ -66,4 +66,13 @@ const FeatureEntry::Choice kCloseWindowW
163 "close-window-with-last-tab", 163 "close-window-with-last-tab",
164 "never"}, 164 "never"},
@@ -173,9 +173,9 @@
173+ "multiple"}, 173+ "multiple"},
174+}; 174+};
175 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_ 175 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_
176--- chrome/browser/ungoogled_flag_entries.h.orig 176--- a/chrome/browser/ungoogled_flag_entries.h
177+++ chrome/browser/ungoogled_flag_entries.h 177+++ b/chrome/browser/ungoogled_flag_entries.h
178@@ -80,4 +80,8 @@ 178@@ -76,4 +76,8 @@
179 "Remove Grab Handle", 179 "Remove Grab Handle",
180 "Removes the reserved empty space in the tabstrip for moving the window. ungoogled-chromium flag", 180 "Removes the reserved empty space in the tabstrip for moving the window. ungoogled-chromium flag",
181 kOsDesktop, SINGLE_VALUE_TYPE("remove-grab-handle")}, 181 kOsDesktop, SINGLE_VALUE_TYPE("remove-grab-handle")},
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-custom-ntp.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-custom-ntp.patch
index 6bb52b8..3f273e5 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-custom-ntp.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-custom-ntp.patch
@@ -1,6 +1,6 @@
1--- chrome/browser/chrome_content_browser_client.cc.orig 1--- a/chrome/browser/chrome_content_browser_client.cc
2+++ chrome/browser/chrome_content_browser_client.cc 2+++ b/chrome/browser/chrome_content_browser_client.cc
3@@ -743,6 +743,9 @@ bool HandleNewTabPageLocationOverride( 3@@ -771,6 +771,9 @@ bool HandleNewTabPageLocationOverride(
4 Profile* profile = Profile::FromBrowserContext(browser_context); 4 Profile* profile = Profile::FromBrowserContext(browser_context);
5 std::string ntp_location = 5 std::string ntp_location =
6 profile->GetPrefs()->GetString(prefs::kNewTabPageLocationOverride); 6 profile->GetPrefs()->GetString(prefs::kNewTabPageLocationOverride);
@@ -10,9 +10,9 @@
10 if (ntp_location.empty()) 10 if (ntp_location.empty())
11 return false; 11 return false;
12 url::Component scheme; 12 url::Component scheme;
13--- chrome/browser/ungoogled_flag_entries.h.orig 13--- a/chrome/browser/ungoogled_flag_entries.h
14+++ chrome/browser/ungoogled_flag_entries.h 14+++ b/chrome/browser/ungoogled_flag_entries.h
15@@ -84,4 +84,8 @@ 15@@ -80,4 +80,8 @@
16 "Close Confirmation", 16 "Close Confirmation",
17 "Show a warning prompt when closing the browser window. ungoogled-chromium flag", 17 "Show a warning prompt when closing the browser window. ungoogled-chromium flag",
18 kOsDesktop, MULTI_VALUE_TYPE(kCloseConfirmation)}, 18 kOsDesktop, MULTI_VALUE_TYPE(kCloseConfirmation)},
@@ -21,17 +21,17 @@
21+ "Allows setting a custom URL for the new tab page. Value can be internal (e.g. `about:blank`), external (e.g. `example.com`), or local (e.g. `file:///tmp/startpage.html`). This applies for incognito windows as well when not set to a `chrome://` internal page. ungoogled-chromium flag", 21+ "Allows setting a custom URL for the new tab page. Value can be internal (e.g. `about:blank`), external (e.g. `example.com`), or local (e.g. `file:///tmp/startpage.html`). This applies for incognito windows as well when not set to a `chrome://` internal page. ungoogled-chromium flag",
22+ kOsDesktop, ORIGIN_LIST_VALUE_TYPE("custom-ntp", "")}, 22+ kOsDesktop, ORIGIN_LIST_VALUE_TYPE("custom-ntp", "")},
23 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ 23 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
24--- components/flags_ui/flags_state.cc.orig 24--- a/components/flags_ui/flags_state.cc
25+++ components/flags_ui/flags_state.cc 25+++ b/components/flags_ui/flags_state.cc
26@@ -231,6 +231,7 @@ std::string GetCombinedOriginListValue(c 26@@ -207,6 +207,7 @@ std::string GetCombinedOriginListValue(c
27 command_line_switch); 27 command_line.GetSwitchValueASCII(command_line_switch);
28 const std::string new_value = 28 const std::string new_value =
29 flags_storage.GetOriginListFlag(internal_entry_name); 29 flags_storage.GetOriginListFlag(internal_entry_name);
30+ if (command_line_switch == "custom-ntp") return existing_value.empty() ? new_value : existing_value; 30+ if (command_line_switch == "custom-ntp") return existing_value.empty() ? new_value : existing_value;
31 return CombineAndSanitizeOriginLists(existing_value, new_value); 31 return CombineAndSanitizeOriginLists(existing_value, new_value);
32 } 32 }
33 33
34@@ -417,6 +418,7 @@ void FlagsState::SetOriginListFlag(const 34@@ -395,6 +396,7 @@ void FlagsState::SetOriginListFlag(const
35 const std::string& value, 35 const std::string& value,
36 FlagsStorage* flags_storage) { 36 FlagsStorage* flags_storage) {
37 const std::string new_value = 37 const std::string new_value =
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-grab-handle.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-grab-handle.patch
index 8fc406a..6c4ef2b 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-grab-handle.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-grab-handle.patch
@@ -1,6 +1,6 @@
1--- chrome/browser/ui/views/frame/tab_strip_region_view.cc.orig 1--- a/chrome/browser/ui/views/frame/tab_strip_region_view.cc
2+++ chrome/browser/ui/views/frame/tab_strip_region_view.cc 2+++ b/chrome/browser/ui/views/frame/tab_strip_region_view.cc
3@@ -42,6 +42,7 @@ class FrameGrabHandle : public views::Vi 3@@ -46,6 +46,7 @@ class FrameGrabHandle : public views::Vi
4 // Reserve some space for the frame to be grabbed by, even if the tabstrip 4 // Reserve some space for the frame to be grabbed by, even if the tabstrip
5 // is full. 5 // is full.
6 // TODO(tbergquist): Define this relative to the NTB insets again. 6 // TODO(tbergquist): Define this relative to the NTB insets again.
@@ -8,9 +8,9 @@
8 return gfx::Size(42, 0); 8 return gfx::Size(42, 0);
9 } 9 }
10 }; 10 };
11--- chrome/browser/ungoogled_flag_entries.h.orig 11--- a/chrome/browser/ungoogled_flag_entries.h
12+++ chrome/browser/ungoogled_flag_entries.h 12+++ b/chrome/browser/ungoogled_flag_entries.h
13@@ -76,4 +76,8 @@ 13@@ -72,4 +72,8 @@
14 "Disable QR Generator", 14 "Disable QR Generator",
15 "Disables the QR generator for sharing page links. ungoogled-chromium flag", 15 "Disables the QR generator for sharing page links. ungoogled-chromium flag",
16 kOsDesktop, FEATURE_VALUE_TYPE(kDisableQRGenerator)}, 16 kOsDesktop, FEATURE_VALUE_TYPE(kDisableQRGenerator)},
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-omnibox-autocomplete-filtering.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-omnibox-autocomplete-filtering.patch
index 0e695ce..e1c88a7 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-omnibox-autocomplete-filtering.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-omnibox-autocomplete-filtering.patch
@@ -1,5 +1,5 @@
1--- chrome/browser/ungoogled_flag_choices.h.orig 1--- a/chrome/browser/ungoogled_flag_choices.h
2+++ chrome/browser/ungoogled_flag_choices.h 2+++ b/chrome/browser/ungoogled_flag_choices.h
3@@ -45,4 +45,19 @@ const FeatureEntry::Choice kBookmarkBarN 3@@ -45,4 +45,19 @@ const FeatureEntry::Choice kBookmarkBarN
4 "bookmark-bar-ntp", 4 "bookmark-bar-ntp",
5 "never"}, 5 "never"},
@@ -20,9 +20,9 @@
20+ "search-bookmarks-chrome"}, 20+ "search-bookmarks-chrome"},
21+}; 21+};
22 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_ 22 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_
23--- chrome/browser/ungoogled_flag_entries.h.orig 23--- a/chrome/browser/ungoogled_flag_entries.h
24+++ chrome/browser/ungoogled_flag_entries.h 24+++ b/chrome/browser/ungoogled_flag_entries.h
25@@ -48,4 +48,8 @@ 25@@ -44,4 +44,8 @@
26 "Bookmark Bar on New-Tab-Page", 26 "Bookmark Bar on New-Tab-Page",
27 "Disable the Bookmark Bar on the New-Tab-Page. ungoogled-chromium flag.", 27 "Disable the Bookmark Bar on the New-Tab-Page. ungoogled-chromium flag.",
28 kOsDesktop, MULTI_VALUE_TYPE(kBookmarkBarNewTab)}, 28 kOsDesktop, MULTI_VALUE_TYPE(kBookmarkBarNewTab)},
@@ -31,8 +31,8 @@
31+ "Restrict omnibox autocomplete results to a combination of search suggestions (if enabled), bookmarks, and internal chrome pages. ungoogled-chromium flag.", 31+ "Restrict omnibox autocomplete results to a combination of search suggestions (if enabled), bookmarks, and internal chrome pages. ungoogled-chromium flag.",
32+ kOsAll, MULTI_VALUE_TYPE(kOmniboxAutocompleteFiltering)}, 32+ kOsAll, MULTI_VALUE_TYPE(kOmniboxAutocompleteFiltering)},
33 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ 33 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
34--- components/omnibox/browser/autocomplete_controller.cc.orig 34--- a/components/omnibox/browser/autocomplete_controller.cc
35+++ components/omnibox/browser/autocomplete_controller.cc 35+++ b/components/omnibox/browser/autocomplete_controller.cc
36@@ -15,6 +15,8 @@ 36@@ -15,6 +15,8 @@
37 37
38 #include "base/bind.h" 38 #include "base/bind.h"
@@ -42,7 +42,7 @@
42 #include "base/feature_list.h" 42 #include "base/feature_list.h"
43 #include "base/format_macros.h" 43 #include "base/format_macros.h"
44 #include "base/metrics/histogram.h" 44 #include "base/metrics/histogram.h"
45@@ -276,6 +278,15 @@ AutocompleteController::AutocompleteCont 45@@ -272,6 +274,15 @@ AutocompleteController::AutocompleteCont
46 search_service_worker_signal_sent_(false), 46 search_service_worker_signal_sent_(false),
47 template_url_service_(provider_client_->GetTemplateURLService()) { 47 template_url_service_(provider_client_->GetTemplateURLService()) {
48 provider_types &= ~OmniboxFieldTrial::GetDisabledProviderTypes(); 48 provider_types &= ~OmniboxFieldTrial::GetDisabledProviderTypes();
@@ -58,9 +58,9 @@
58 if (provider_types & AutocompleteProvider::TYPE_BOOKMARK) 58 if (provider_types & AutocompleteProvider::TYPE_BOOKMARK)
59 providers_.push_back(new BookmarkProvider(provider_client_.get())); 59 providers_.push_back(new BookmarkProvider(provider_client_.get()));
60 if (provider_types & AutocompleteProvider::TYPE_BUILTIN) 60 if (provider_types & AutocompleteProvider::TYPE_BUILTIN)
61--- components/omnibox/browser/history_url_provider.cc.orig 61--- a/components/omnibox/browser/history_url_provider.cc
62+++ components/omnibox/browser/history_url_provider.cc 62+++ b/components/omnibox/browser/history_url_provider.cc
63@@ -551,6 +551,9 @@ void HistoryURLProvider::Start(const Aut 63@@ -472,6 +472,9 @@ void HistoryURLProvider::Start(const Aut
64 if (fixed_up_input.type() != metrics::OmniboxInputType::QUERY) 64 if (fixed_up_input.type() != metrics::OmniboxInputType::QUERY)
65 matches_.push_back(what_you_typed_match); 65 matches_.push_back(what_you_typed_match);
66 66
@@ -70,8 +70,8 @@
70 // We'll need the history service to run both passes, so try to obtain it. 70 // We'll need the history service to run both passes, so try to obtain it.
71 history::HistoryService* const history_service = 71 history::HistoryService* const history_service =
72 client()->GetHistoryService(); 72 client()->GetHistoryService();
73--- components/omnibox/browser/search_provider.cc.orig 73--- a/components/omnibox/browser/search_provider.cc
74+++ components/omnibox/browser/search_provider.cc 74+++ b/components/omnibox/browser/search_provider.cc
75@@ -12,6 +12,7 @@ 75@@ -12,6 +12,7 @@
76 #include "base/base64.h" 76 #include "base/base64.h"
77 #include "base/bind.h" 77 #include "base/bind.h"
@@ -90,8 +90,8 @@
90 // The history query results are synchronous, so if minimal_changes is true, 90 // The history query results are synchronous, so if minimal_changes is true,
91 // we still have the last results and don't need to do anything. 91 // we still have the last results and don't need to do anything.
92 if (minimal_changes) 92 if (minimal_changes)
93--- components/url_formatter/url_fixer.cc.orig 93--- a/components/url_formatter/url_fixer.cc
94+++ components/url_formatter/url_fixer.cc 94+++ b/components/url_formatter/url_fixer.cc
95@@ -9,6 +9,8 @@ 95@@ -9,6 +9,8 @@
96 #include <algorithm> 96 #include <algorithm>
97 97
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-pdf-plugin-name.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-pdf-plugin-name.patch
index 5b52596..37a4834 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-pdf-plugin-name.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-pdf-plugin-name.patch
@@ -1,6 +1,6 @@
1--- chrome/browser/chrome_content_browser_client.cc.orig 1--- a/chrome/browser/chrome_content_browser_client.cc
2+++ chrome/browser/chrome_content_browser_client.cc 2+++ b/chrome/browser/chrome_content_browser_client.cc
3@@ -6001,7 +6001,7 @@ bool ChromeContentBrowserClient::ShouldA 3@@ -6068,7 +6068,7 @@ bool ChromeContentBrowserClient::ShouldA
4 const url::Origin& embedder_origin, 4 const url::Origin& embedder_origin,
5 const content::PepperPluginInfo& plugin_info) { 5 const content::PepperPluginInfo& plugin_info) {
6 #if BUILDFLAG(ENABLE_PDF) 6 #if BUILDFLAG(ENABLE_PDF)
@@ -9,8 +9,8 @@
9 return IsPdfInternalPluginAllowedOrigin(embedder_origin); 9 return IsPdfInternalPluginAllowedOrigin(embedder_origin);
10 } 10 }
11 #endif // BUILDFLAG(ENABLE_PDF) 11 #endif // BUILDFLAG(ENABLE_PDF)
12--- chrome/browser/pdf/pdf_extension_util.cc.orig 12--- a/chrome/browser/pdf/pdf_extension_util.cc
13+++ chrome/browser/pdf/pdf_extension_util.cc 13+++ b/chrome/browser/pdf/pdf_extension_util.cc
14@@ -170,7 +170,7 @@ std::string GetManifest() { 14@@ -170,7 +170,7 @@ std::string GetManifest() {
15 DCHECK(manifest_contents.find(kNameTag) != std::string::npos); 15 DCHECK(manifest_contents.find(kNameTag) != std::string::npos);
16 base::ReplaceFirstSubstringAfterOffset( 16 base::ReplaceFirstSubstringAfterOffset(
@@ -20,9 +20,9 @@
20 20
21 return manifest_contents; 21 return manifest_contents;
22 } 22 }
23--- chrome/browser/plugins/pdf_iframe_navigation_throttle_unittest.cc.orig 23--- a/chrome/browser/plugins/pdf_iframe_navigation_throttle_unittest.cc
24+++ chrome/browser/plugins/pdf_iframe_navigation_throttle_unittest.cc 24+++ b/chrome/browser/plugins/pdf_iframe_navigation_throttle_unittest.cc
25@@ -65,7 +65,7 @@ class PDFIFrameNavigationThrottleTest : 25@@ -67,7 +67,7 @@ class PDFIFrameNavigationThrottleTest :
26 // Register a fake PDF Viewer plugin into our plugin service. 26 // Register a fake PDF Viewer plugin into our plugin service.
27 content::WebPluginInfo info; 27 content::WebPluginInfo info;
28 info.name = 28 info.name =
@@ -31,8 +31,8 @@
31 info.mime_types.push_back(content::WebPluginMimeType( 31 info.mime_types.push_back(content::WebPluginMimeType(
32 kPDFMimeType, "pdf", "Fake PDF description")); 32 kPDFMimeType, "pdf", "Fake PDF description"));
33 plugin_service->RegisterInternalPlugin(info, true); 33 plugin_service->RegisterInternalPlugin(info, true);
34--- chrome/browser/plugins/plugin_prefs.cc.orig 34--- a/chrome/browser/plugins/plugin_prefs.cc
35+++ chrome/browser/plugins/plugin_prefs.cc 35+++ b/chrome/browser/plugins/plugin_prefs.cc
36@@ -40,7 +40,7 @@ bool IsPDFViewerPlugin(const std::u16str 36@@ -40,7 +40,7 @@ bool IsPDFViewerPlugin(const std::u16str
37 // plugin, which is also used for Print Preview. Note that only the PDF viewer 37 // plugin, which is also used for Print Preview. Note that only the PDF viewer
38 // and Print Preview can create the internal PDF plugin in the first place. 38 // and Print Preview can create the internal PDF plugin in the first place.
@@ -42,8 +42,8 @@
42 } 42 }
43 43
44 } // namespace 44 } // namespace
45--- chrome/browser/plugins/plugin_prefs_unittest.cc.orig 45--- a/chrome/browser/plugins/plugin_prefs_unittest.cc
46+++ chrome/browser/plugins/plugin_prefs_unittest.cc 46+++ b/chrome/browser/plugins/plugin_prefs_unittest.cc
47@@ -24,11 +24,11 @@ class PluginPrefsTest : public ::testing 47@@ -24,11 +24,11 @@ class PluginPrefsTest : public ::testing
48 TEST_F(PluginPrefsTest, AlwaysOpenPdfExternally) { 48 TEST_F(PluginPrefsTest, AlwaysOpenPdfExternally) {
49 EXPECT_EQ(PluginPrefs::NO_POLICY, 49 EXPECT_EQ(PluginPrefs::NO_POLICY,
@@ -58,8 +58,8 @@
58- ChromeContentClient::kPDFExtensionPluginName))); 58- ChromeContentClient::kPDFExtensionPluginName)));
59+ ChromeContentClient::GetPDFExtensionPluginName()))); 59+ ChromeContentClient::GetPDFExtensionPluginName())));
60 } 60 }
61--- chrome/browser/resources/plugin_metadata/plugins_chromeos.json.orig 61--- a/chrome/browser/resources/plugin_metadata/plugins_chromeos.json
62+++ chrome/browser/resources/plugin_metadata/plugins_chromeos.json 62+++ b/chrome/browser/resources/plugin_metadata/plugins_chromeos.json
63@@ -44,6 +44,19 @@ 63@@ -44,6 +44,19 @@
64 "name": "Chrome PDF Viewer", 64 "name": "Chrome PDF Viewer",
65 "group_name_matcher": "*Chrome PDF Viewer*" 65 "group_name_matcher": "*Chrome PDF Viewer*"
@@ -100,8 +100,8 @@
100 "chromium-pdf-plugin": { 100 "chromium-pdf-plugin": {
101 "mime_types": [ 101 "mime_types": [
102 ], 102 ],
103--- chrome/browser/resources/plugin_metadata/plugins_linux.json.orig 103--- a/chrome/browser/resources/plugin_metadata/plugins_linux.json
104+++ chrome/browser/resources/plugin_metadata/plugins_linux.json 104+++ b/chrome/browser/resources/plugin_metadata/plugins_linux.json
105@@ -36,6 +36,19 @@ 105@@ -36,6 +36,19 @@
106 "name": "Chrome PDF Viewer", 106 "name": "Chrome PDF Viewer",
107 "group_name_matcher": "*Chrome PDF Viewer*" 107 "group_name_matcher": "*Chrome PDF Viewer*"
@@ -142,8 +142,8 @@
142 "chromium-pdf-plugin": { 142 "chromium-pdf-plugin": {
143 "mime_types": [ 143 "mime_types": [
144 ], 144 ],
145--- chrome/browser/resources/plugin_metadata/plugins_mac.json.orig 145--- a/chrome/browser/resources/plugin_metadata/plugins_mac.json
146+++ chrome/browser/resources/plugin_metadata/plugins_mac.json 146+++ b/chrome/browser/resources/plugin_metadata/plugins_mac.json
147@@ -33,6 +33,19 @@ 147@@ -33,6 +33,19 @@
148 "name": "Chrome PDF Viewer", 148 "name": "Chrome PDF Viewer",
149 "group_name_matcher": "*Chrome PDF Viewer*" 149 "group_name_matcher": "*Chrome PDF Viewer*"
@@ -184,8 +184,8 @@
184 "chromium-pdf-plugin": { 184 "chromium-pdf-plugin": {
185 "mime_types": [ 185 "mime_types": [
186 ], 186 ],
187--- chrome/browser/resources/plugin_metadata/plugins_win.json.orig 187--- a/chrome/browser/resources/plugin_metadata/plugins_win.json
188+++ chrome/browser/resources/plugin_metadata/plugins_win.json 188+++ b/chrome/browser/resources/plugin_metadata/plugins_win.json
189@@ -33,6 +33,19 @@ 189@@ -33,6 +33,19 @@
190 "name": "Chrome PDF Viewer", 190 "name": "Chrome PDF Viewer",
191 "group_name_matcher": "*Chrome PDF Viewer*" 191 "group_name_matcher": "*Chrome PDF Viewer*"
@@ -226,8 +226,8 @@
226 "chromium-pdf-plugin": { 226 "chromium-pdf-plugin": {
227 "mime_types": [ 227 "mime_types": [
228 ], 228 ],
229--- chrome/browser/ungoogled_flag_choices.h.orig 229--- a/chrome/browser/ungoogled_flag_choices.h
230+++ chrome/browser/ungoogled_flag_choices.h 230+++ b/chrome/browser/ungoogled_flag_choices.h
231@@ -34,4 +34,9 @@ const FeatureEntry::Choice kScrollEventC 231@@ -34,4 +34,9 @@ const FeatureEntry::Choice kScrollEventC
232 "scroll-tabs", 232 "scroll-tabs",
233 "never"} 233 "never"}
@@ -238,9 +238,9 @@
238+ {"Microsoft Edge", switches::kPDFPluginName, "edge"}, 238+ {"Microsoft Edge", switches::kPDFPluginName, "edge"},
239+}; 239+};
240 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_ 240 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_
241--- chrome/browser/ungoogled_flag_entries.h.orig 241--- a/chrome/browser/ungoogled_flag_entries.h
242+++ chrome/browser/ungoogled_flag_entries.h 242+++ b/chrome/browser/ungoogled_flag_entries.h
243@@ -40,4 +40,8 @@ 243@@ -36,4 +36,8 @@
244 "Scroll switches tab", 244 "Scroll switches tab",
245 "Switch to the left/right tab if the wheel-scroll happens over the tabstrip, or the empty space beside the tabstrip. ungoogled-chromium flag.", 245 "Switch to the left/right tab if the wheel-scroll happens over the tabstrip, or the empty space beside the tabstrip. ungoogled-chromium flag.",
246 kOsDesktop, MULTI_VALUE_TYPE(kScrollEventChangesTab)}, 246 kOsDesktop, MULTI_VALUE_TYPE(kScrollEventChangesTab)},
@@ -249,9 +249,9 @@
249+ "Sets the internal PDF viewer plugin name. Useful for sites that probe JS API navigator.plugins. ungoogled-chromium flag.", 249+ "Sets the internal PDF viewer plugin name. Useful for sites that probe JS API navigator.plugins. ungoogled-chromium flag.",
250+ kOsDesktop, MULTI_VALUE_TYPE(kPDFPluginNameChoices)}, 250+ kOsDesktop, MULTI_VALUE_TYPE(kPDFPluginNameChoices)},
251 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ 251 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
252--- chrome/common/BUILD.gn.orig 252--- a/chrome/common/BUILD.gn
253+++ chrome/common/BUILD.gn 253+++ b/chrome/common/BUILD.gn
254@@ -249,6 +249,7 @@ static_library("common") { 254@@ -246,6 +246,7 @@ static_library("common") {
255 "//components/no_state_prefetch/common", 255 "//components/no_state_prefetch/common",
256 "//components/no_state_prefetch/common:mojo_bindings", 256 "//components/no_state_prefetch/common:mojo_bindings",
257 "//components/page_load_metrics/common:common", 257 "//components/page_load_metrics/common:common",
@@ -259,9 +259,9 @@
259 ] 259 ]
260 260
261 if (enable_pdf) { 261 if (enable_pdf) {
262--- chrome/common/chrome_content_client.cc.orig 262--- a/chrome/common/chrome_content_client.cc
263+++ chrome/common/chrome_content_client.cc 263+++ b/chrome/common/chrome_content_client.cc
264@@ -122,7 +122,7 @@ void ComputeBuiltInPlugins(std::vector<c 264@@ -126,7 +126,7 @@ void ComputeBuiltInPlugins(std::vector<c
265 content::PepperPluginInfo pdf_info; 265 content::PepperPluginInfo pdf_info;
266 pdf_info.is_internal = true; 266 pdf_info.is_internal = true;
267 pdf_info.is_out_of_process = true; 267 pdf_info.is_out_of_process = true;
@@ -270,9 +270,9 @@
270 pdf_info.description = kPDFPluginDescription; 270 pdf_info.description = kPDFPluginDescription;
271 pdf_info.path = base::FilePath(ChromeContentClient::kPDFPluginPath); 271 pdf_info.path = base::FilePath(ChromeContentClient::kPDFPluginPath);
272 content::WebPluginMimeType pdf_mime_type( 272 content::WebPluginMimeType pdf_mime_type(
273--- chrome/common/chrome_content_client.h.orig 273--- a/chrome/common/chrome_content_client.h
274+++ chrome/common/chrome_content_client.h 274+++ b/chrome/common/chrome_content_client.h
275@@ -42,8 +42,8 @@ class ChromeContentClient : public conte 275@@ -41,8 +41,8 @@ class ChromeContentClient : public conte
276 static const base::FilePath::CharType kNaClPluginFileName[]; 276 static const base::FilePath::CharType kNaClPluginFileName[];
277 #endif 277 #endif
278 278
@@ -283,8 +283,8 @@
283 static const base::FilePath::CharType kPDFPluginPath[]; 283 static const base::FilePath::CharType kPDFPluginPath[];
284 284
285 ChromeContentClient(); 285 ChromeContentClient();
286--- chrome/common/chrome_content_client_constants.cc.orig 286--- a/chrome/common/chrome_content_client_constants.cc
287+++ chrome/common/chrome_content_client_constants.cc 287+++ b/chrome/common/chrome_content_client_constants.cc
288@@ -2,8 +2,12 @@ 288@@ -2,8 +2,12 @@
289 // Use of this source code is governed by a BSD-style license that can be 289 // Use of this source code is governed by a BSD-style license that can be
290 // found in the LICENSE file. 290 // found in the LICENSE file.
@@ -358,9 +358,9 @@
358 358
359 const base::FilePath::CharType ChromeContentClient::kPDFPluginPath[] = 359 const base::FilePath::CharType ChromeContentClient::kPDFPluginPath[] =
360 FILE_PATH_LITERAL("internal-pdf-viewer"); 360 FILE_PATH_LITERAL("internal-pdf-viewer");
361--- chrome/renderer/chrome_content_renderer_client.cc.orig 361--- a/chrome/renderer/chrome_content_renderer_client.cc
362+++ chrome/renderer/chrome_content_renderer_client.cc 362+++ b/chrome/renderer/chrome_content_renderer_client.cc
363@@ -1047,7 +1047,7 @@ WebPlugin* ChromeContentRendererClient:: 363@@ -1027,7 +1027,7 @@ WebPlugin* ChromeContentRendererClient::
364 } 364 }
365 } 365 }
366 } else if (info.name == 366 } else if (info.name ==
@@ -369,7 +369,7 @@
369 // Report PDF load metrics. Since the PDF plugin is comprised of an 369 // Report PDF load metrics. Since the PDF plugin is comprised of an
370 // extension that loads a second plugin, avoid double counting by 370 // extension that loads a second plugin, avoid double counting by
371 // ignoring the creation of the second plugin. 371 // ignoring the creation of the second plugin.
372@@ -1079,7 +1079,7 @@ WebPlugin* ChromeContentRendererClient:: 372@@ -1059,7 +1059,7 @@ WebPlugin* ChromeContentRendererClient::
373 373
374 #if BUILDFLAG(ENABLE_PDF) 374 #if BUILDFLAG(ENABLE_PDF)
375 if (info.name == 375 if (info.name ==
@@ -378,7 +378,7 @@
378 return pdf::CreateInternalPlugin( 378 return pdf::CreateInternalPlugin(
379 info, std::move(params), render_frame, 379 info, std::move(params), render_frame,
380 std::make_unique<ChromePdfInternalPluginDelegate>()); 380 std::make_unique<ChromePdfInternalPluginDelegate>());
381@@ -1092,7 +1092,7 @@ WebPlugin* ChromeContentRendererClient:: 381@@ -1072,7 +1072,7 @@ WebPlugin* ChromeContentRendererClient::
382 PluginUMAReporter::GetInstance()->ReportPluginDisabled(orig_mime_type, 382 PluginUMAReporter::GetInstance()->ReportPluginDisabled(orig_mime_type,
383 url); 383 url);
384 if (info.name == 384 if (info.name ==
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-qr-generator.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-qr-generator.patch
index 5b97e10..553782e 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-qr-generator.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-qr-generator.patch
@@ -1,21 +1,21 @@
1--- chrome/browser/sharing/features.cc.orig 1--- a/chrome/browser/sharing/features.cc
2+++ chrome/browser/sharing/features.cc 2+++ b/chrome/browser/sharing/features.cc
3@@ -32,3 +32,5 @@ const base::Feature kSharingPreferVapid 3@@ -26,3 +26,5 @@ const base::Feature kSharingSendViaSync{
4 base::FEATURE_DISABLED_BY_DEFAULT 4
5 #endif // defined(OS_ANDROID) 5 const base::Feature kSharingPreferVapid {
6 }; 6 "SharingPreferVapid", base::FEATURE_DISABLED_BY_DEFAULT};
7+ 7+
8+const base::Feature kDisableQRGenerator{"DisableQRGenerator", base::FEATURE_DISABLED_BY_DEFAULT}; 8+const base::Feature kDisableQRGenerator{"DisableQRGenerator", base::FEATURE_DISABLED_BY_DEFAULT};
9--- chrome/browser/sharing/features.h.orig 9--- a/chrome/browser/sharing/features.h
10+++ chrome/browser/sharing/features.h 10+++ b/chrome/browser/sharing/features.h
11@@ -34,4 +34,5 @@ extern const base::Feature kSharingSendV 11@@ -34,4 +34,5 @@ extern const base::Feature kSharingSendV
12 // Feature flag for prefer sending sharing message using VAPID. 12 // Feature flag for prefer sending sharing message using VAPID.
13 extern const base::Feature kSharingPreferVapid; 13 extern const base::Feature kSharingPreferVapid;
14 14
15+extern const base::Feature kDisableQRGenerator; 15+extern const base::Feature kDisableQRGenerator;
16 #endif // CHROME_BROWSER_SHARING_FEATURES_H_ 16 #endif // CHROME_BROWSER_SHARING_FEATURES_H_
17--- chrome/browser/ui/qrcode_generator/qrcode_generator_bubble_controller.cc.orig 17--- a/chrome/browser/ui/qrcode_generator/qrcode_generator_bubble_controller.cc
18+++ chrome/browser/ui/qrcode_generator/qrcode_generator_bubble_controller.cc 18+++ b/chrome/browser/ui/qrcode_generator/qrcode_generator_bubble_controller.cc
19@@ -23,7 +23,7 @@ QRCodeGeneratorBubbleController::~QRCode 19@@ -23,7 +23,7 @@ QRCodeGeneratorBubbleController::~QRCode
20 20
21 // static 21 // static
@@ -25,9 +25,9 @@
25 return false; 25 return false;
26 26
27 return true; 27 return true;
28--- chrome/browser/ui/views/location_bar/location_bar_view.cc.orig 28--- a/chrome/browser/ui/views/location_bar/location_bar_view.cc
29+++ chrome/browser/ui/views/location_bar/location_bar_view.cc 29+++ b/chrome/browser/ui/views/location_bar/location_bar_view.cc
30@@ -297,7 +297,8 @@ void LocationBarView::Init() { 30@@ -298,7 +298,8 @@ void LocationBarView::Init() {
31 // the left most icon. 31 // the left most icon.
32 params.types_enabled.push_back(PageActionIconType::kSendTabToSelf); 32 params.types_enabled.push_back(PageActionIconType::kSendTabToSelf);
33 params.types_enabled.push_back(PageActionIconType::kClickToCall); 33 params.types_enabled.push_back(PageActionIconType::kClickToCall);
@@ -37,9 +37,9 @@
37 if (base::FeatureList::IsEnabled(kSharedClipboardUI)) 37 if (base::FeatureList::IsEnabled(kSharedClipboardUI))
38 params.types_enabled.push_back(PageActionIconType::kSharedClipboard); 38 params.types_enabled.push_back(PageActionIconType::kSharedClipboard);
39 if (base::FeatureList::IsEnabled(kWebOTPCrossDevice)) 39 if (base::FeatureList::IsEnabled(kWebOTPCrossDevice))
40--- chrome/browser/ungoogled_flag_entries.h.orig 40--- a/chrome/browser/ungoogled_flag_entries.h
41+++ chrome/browser/ungoogled_flag_entries.h 41+++ b/chrome/browser/ungoogled_flag_entries.h
42@@ -72,4 +72,8 @@ 42@@ -68,4 +68,8 @@
43 "Remove Tabsearch Button", 43 "Remove Tabsearch Button",
44 "Removes the tabsearch button from the tabstrip. ungoogled-chromium flag", 44 "Removes the tabsearch button from the tabstrip. ungoogled-chromium flag",
45 kOsDesktop, SINGLE_VALUE_TYPE("remove-tabsearch-button")}, 45 kOsDesktop, SINGLE_VALUE_TYPE("remove-tabsearch-button")},
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-search-engine-collection.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-search-engine-collection.patch
index b80101e..13197f8 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-search-engine-collection.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-search-engine-collection.patch
@@ -1,8 +1,8 @@
1# Add flag to disable automatic search engine collection 1# Add flag to disable automatic search engine collection
2 2
3--- chrome/browser/ungoogled_flag_entries.h.orig 3--- a/chrome/browser/ungoogled_flag_entries.h
4+++ chrome/browser/ungoogled_flag_entries.h 4+++ b/chrome/browser/ungoogled_flag_entries.h
5@@ -16,4 +16,8 @@ 5@@ -12,4 +12,8 @@
6 "Handling of extension MIME type requests", 6 "Handling of extension MIME type requests",
7 "Used when deciding how to handle a request for a CRX or User Script MIME type. ungoogled-chromium flag.", 7 "Used when deciding how to handle a request for a CRX or User Script MIME type. ungoogled-chromium flag.",
8 kOsAll, MULTI_VALUE_TYPE(kExtensionHandlingChoices)}, 8 kOsAll, MULTI_VALUE_TYPE(kExtensionHandlingChoices)},
@@ -11,8 +11,8 @@
11+ "Prevents search engines from being added automatically. ungoogled-chromium flag.", 11+ "Prevents search engines from being added automatically. ungoogled-chromium flag.",
12+ kOsAll, SINGLE_VALUE_TYPE("disable-search-engine-collection")}, 12+ kOsAll, SINGLE_VALUE_TYPE("disable-search-engine-collection")},
13 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ 13 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
14--- chrome/renderer/chrome_render_frame_observer.cc.orig 14--- a/chrome/renderer/chrome_render_frame_observer.cc
15+++ chrome/renderer/chrome_render_frame_observer.cc 15+++ b/chrome/renderer/chrome_render_frame_observer.cc
16@@ -139,9 +139,10 @@ ChromeRenderFrameObserver::ChromeRenderF 16@@ -139,9 +139,10 @@ ChromeRenderFrameObserver::ChromeRenderF
17 if (!render_frame->IsMainFrame()) 17 if (!render_frame->IsMainFrame())
18 return; 18 return;
@@ -25,7 +25,7 @@
25 if (!command_line.HasSwitch(switches::kDisableClientSidePhishingDetection)) 25 if (!command_line.HasSwitch(switches::kDisableClientSidePhishingDetection))
26 SetClientSidePhishingDetection(); 26 SetClientSidePhishingDetection();
27 #endif 27 #endif
28@@ -201,14 +202,16 @@ void ChromeRenderFrameObserver::DidFinis 28@@ -200,14 +201,16 @@ void ChromeRenderFrameObserver::DidFinis
29 if (frame->Parent()) 29 if (frame->Parent())
30 return; 30 return;
31 31
@@ -50,9 +50,9 @@
50 } 50 }
51 } 51 }
52 52
53--- chrome/renderer/chrome_render_frame_observer.h.orig 53--- a/chrome/renderer/chrome_render_frame_observer.h
54+++ chrome/renderer/chrome_render_frame_observer.h 54+++ b/chrome/renderer/chrome_render_frame_observer.h
55@@ -139,6 +139,7 @@ class ChromeRenderFrameObserver : public 55@@ -138,6 +138,7 @@ class ChromeRenderFrameObserver : public
56 #if BUILDFLAG(SAFE_BROWSING_AVAILABLE) 56 #if BUILDFLAG(SAFE_BROWSING_AVAILABLE)
57 safe_browsing::PhishingClassifierDelegate* phishing_classifier_ = nullptr; 57 safe_browsing::PhishingClassifierDelegate* phishing_classifier_ = nullptr;
58 #endif 58 #endif
@@ -60,8 +60,8 @@
60 60
61 // Owned by ChromeContentRendererClient and outlive us. 61 // Owned by ChromeContentRendererClient and outlive us.
62 web_cache::WebCacheImpl* web_cache_impl_; 62 web_cache::WebCacheImpl* web_cache_impl_;
63--- components/search_engines/template_url_service.cc.orig 63--- a/components/search_engines/template_url_service.cc
64+++ components/search_engines/template_url_service.cc 64+++ b/components/search_engines/template_url_service.cc
65@@ -12,6 +12,7 @@ 65@@ -12,6 +12,7 @@
66 #include "base/bind.h" 66 #include "base/bind.h"
67 #include "base/callback.h" 67 #include "base/callback.h"
@@ -70,7 +70,7 @@
70 #include "base/containers/contains.h" 70 #include "base/containers/contains.h"
71 #include "base/debug/crash_logging.h" 71 #include "base/debug/crash_logging.h"
72 #include "base/format_macros.h" 72 #include "base/format_macros.h"
73@@ -197,6 +198,12 @@ bool IsCreatedByExtension(const Template 73@@ -199,6 +200,12 @@ bool IsCreatedByExtension(const Template
74 template_url->type() == TemplateURL::OMNIBOX_API_EXTENSION; 74 template_url->type() == TemplateURL::OMNIBOX_API_EXTENSION;
75 } 75 }
76 76
@@ -83,7 +83,7 @@
83 } // namespace 83 } // namespace
84 84
85 // TemplateURLService::LessWithPrefix ----------------------------------------- 85 // TemplateURLService::LessWithPrefix -----------------------------------------
86@@ -282,6 +289,7 @@ TemplateURLService::TemplateURLService( 86@@ -284,6 +291,7 @@ TemplateURLService::TemplateURLService(
87 std::unique_ptr<TemplateURLServiceClient> client, 87 std::unique_ptr<TemplateURLServiceClient> client,
88 const base::RepeatingClosure& dsp_change_callback) 88 const base::RepeatingClosure& dsp_change_callback)
89 : prefs_(prefs), 89 : prefs_(prefs),
@@ -91,7 +91,7 @@
91 search_terms_data_(std::move(search_terms_data)), 91 search_terms_data_(std::move(search_terms_data)),
92 web_data_service_(web_data_service), 92 web_data_service_(web_data_service),
93 client_(std::move(client)), 93 client_(std::move(client)),
94@@ -363,8 +371,8 @@ bool TemplateURLService::CanAddAutogener 94@@ -365,8 +373,8 @@ bool TemplateURLService::CanAddAutogener
95 // that may interfere with search queries). An easy heuristic for this is 95 // that may interfere with search queries). An easy heuristic for this is
96 // whether the user has a TemplateURL that has been manually modified (e.g., 96 // whether the user has a TemplateURL that has been manually modified (e.g.,
97 // renamed) connected to the same host. 97 // renamed) connected to the same host.
@@ -102,7 +102,7 @@
102 } 102 }
103 103
104 bool TemplateURLService::IsPrepopulatedOrCreatedByPolicy( 104 bool TemplateURLService::IsPrepopulatedOrCreatedByPolicy(
105@@ -1496,6 +1504,8 @@ SyncDataMap TemplateURLService::CreateGU 105@@ -1502,6 +1510,8 @@ SyncDataMap TemplateURLService::CreateGU
106 106
107 void TemplateURLService::Init(const Initializer* initializers, 107 void TemplateURLService::Init(const Initializer* initializers,
108 int num_initializers) { 108 int num_initializers) {
@@ -111,7 +111,7 @@
111 if (client_) 111 if (client_)
112 client_->SetOwner(this); 112 client_->SetOwner(this);
113 113
114@@ -1632,6 +1642,9 @@ void TemplateURLService::ChangeToLoadedS 114@@ -1638,6 +1648,9 @@ void TemplateURLService::ChangeToLoadedS
115 115
116 bool TemplateURLService::CanAddAutogeneratedKeywordForHost( 116 bool TemplateURLService::CanAddAutogeneratedKeywordForHost(
117 const std::string& host) const { 117 const std::string& host) const {
@@ -121,11 +121,11 @@
121 const TemplateURLSet* urls = provider_map_->GetURLsForHost(host); 121 const TemplateURLSet* urls = provider_map_->GetURLsForHost(host);
122 if (!urls) 122 if (!urls)
123 return true; 123 return true;
124--- components/search_engines/template_url_service.h.orig 124--- a/components/search_engines/template_url_service.h
125+++ components/search_engines/template_url_service.h 125+++ b/components/search_engines/template_url_service.h
126@@ -706,6 +706,8 @@ class TemplateURLService : public WebDat 126@@ -706,6 +706,8 @@ class TemplateURLService : public WebDat
127 // ---------- Browser state related members --------------------------------- 127 // ---------- Browser state related members ---------------------------------
128 PrefService* prefs_ = nullptr; 128 raw_ptr<PrefService> prefs_ = nullptr;
129 129
130+ bool should_autocollect_; // Whether search engines should be auto-collected 130+ bool should_autocollect_; // Whether search engines should be auto-collected
131+ 131+
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-tab-hover-cards.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-tab-hover-cards.patch
index 6010902..aac7b9d 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-tab-hover-cards.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-tab-hover-cards.patch
@@ -1,5 +1,5 @@
1--- chrome/browser/ui/views/tabs/tab.cc.orig 1--- a/chrome/browser/ui/views/tabs/tab.cc
2+++ chrome/browser/ui/views/tabs/tab.cc 2+++ b/chrome/browser/ui/views/tabs/tab.cc
3@@ -12,6 +12,7 @@ 3@@ -12,6 +12,7 @@
4 #include <utility> 4 #include <utility>
5 5
@@ -7,7 +7,7 @@
7+#include "base/command_line.h" 7+#include "base/command_line.h"
8 #include "base/debug/alias.h" 8 #include "base/debug/alias.h"
9 #include "base/i18n/rtl.h" 9 #include "base/i18n/rtl.h"
10 #include "base/metrics/user_metrics.h" 10 #include "base/memory/raw_ptr.h"
11@@ -641,6 +642,8 @@ void Tab::OnGestureEvent(ui::GestureEven 11@@ -641,6 +642,8 @@ void Tab::OnGestureEvent(ui::GestureEven
12 } 12 }
13 13
@@ -17,9 +17,9 @@
17 // Tab hover cards replace tooltips for tabs. 17 // Tab hover cards replace tooltips for tabs.
18 return std::u16string(); 18 return std::u16string();
19 } 19 }
20--- chrome/browser/ui/views/tabs/tab_strip.cc.orig 20--- a/chrome/browser/ui/views/tabs/tab_strip.cc
21+++ chrome/browser/ui/views/tabs/tab_strip.cc 21+++ b/chrome/browser/ui/views/tabs/tab_strip.cc
22@@ -15,6 +15,7 @@ 22@@ -16,6 +16,7 @@
23 23
24 #include "base/bind.h" 24 #include "base/bind.h"
25 #include "base/callback.h" 25 #include "base/callback.h"
@@ -27,7 +27,7 @@
27 #include "base/compiler_specific.h" 27 #include "base/compiler_specific.h"
28 #include "base/containers/adapters.h" 28 #include "base/containers/adapters.h"
29 #include "base/containers/contains.h" 29 #include "base/containers/contains.h"
30@@ -2153,6 +2154,8 @@ void TabStrip::OnMouseEventInTab(views:: 30@@ -1904,6 +1905,8 @@ void TabStrip::OnMouseEventInTab(views::
31 } 31 }
32 32
33 void TabStrip::UpdateHoverCard(Tab* tab, HoverCardUpdateType update_type) { 33 void TabStrip::UpdateHoverCard(Tab* tab, HoverCardUpdateType update_type) {
@@ -36,8 +36,8 @@
36 // Some operations (including e.g. starting a drag) can cause the tab focus 36 // Some operations (including e.g. starting a drag) can cause the tab focus
37 // to change at the same time as the tabstrip is starting to animate; the 37 // to change at the same time as the tabstrip is starting to animate; the
38 // hover card should not be visible at this time. 38 // hover card should not be visible at this time.
39--- chrome/browser/ungoogled_flag_choices.h.orig 39--- a/chrome/browser/ungoogled_flag_choices.h
40+++ chrome/browser/ungoogled_flag_choices.h 40+++ b/chrome/browser/ungoogled_flag_choices.h
41@@ -75,4 +75,13 @@ const FeatureEntry::Choice kCloseConfirm 41@@ -75,4 +75,13 @@ const FeatureEntry::Choice kCloseConfirm
42 "close-confirmation", 42 "close-confirmation",
43 "multiple"}, 43 "multiple"},
@@ -52,9 +52,9 @@
52+ "tooltip"}, 52+ "tooltip"},
53+}; 53+};
54 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_ 54 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_
55--- chrome/browser/ungoogled_flag_entries.h.orig 55--- a/chrome/browser/ungoogled_flag_entries.h
56+++ chrome/browser/ungoogled_flag_entries.h 56+++ b/chrome/browser/ungoogled_flag_entries.h
57@@ -88,4 +88,8 @@ 57@@ -84,4 +84,8 @@
58 "Custom New Tab Page", 58 "Custom New Tab Page",
59 "Allows setting a custom URL for the new tab page. Value can be internal (e.g. `about:blank`), external (e.g. `example.com`), or local (e.g. `file:///tmp/startpage.html`). This applies for incognito windows as well when not set to a `chrome://` internal page. ungoogled-chromium flag", 59 "Allows setting a custom URL for the new tab page. Value can be internal (e.g. `about:blank`), external (e.g. `example.com`), or local (e.g. `file:///tmp/startpage.html`). This applies for incognito windows as well when not set to a `chrome://` internal page. ungoogled-chromium flag",
60 kOsDesktop, ORIGIN_LIST_VALUE_TYPE("custom-ntp", "")}, 60 kOsDesktop, ORIGIN_LIST_VALUE_TYPE("custom-ntp", "")},
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-tabsearch-button.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-tabsearch-button.patch
index 317602c..e3ce3e5 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-tabsearch-button.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-for-tabsearch-button.patch
@@ -1,6 +1,6 @@
1--- chrome/browser/ui/browser_command_controller.cc.orig 1--- a/chrome/browser/ui/browser_command_controller.cc
2+++ chrome/browser/ui/browser_command_controller.cc 2+++ b/chrome/browser/ui/browser_command_controller.cc
3@@ -1139,7 +1139,8 @@ void BrowserCommandController::InitComma 3@@ -1160,7 +1160,8 @@ void BrowserCommandController::InitComma
4 command_updater_.UpdateCommandEnabled(IDC_WINDOW_CLOSE_OTHER_TABS, 4 command_updater_.UpdateCommandEnabled(IDC_WINDOW_CLOSE_OTHER_TABS,
5 normal_window); 5 normal_window);
6 6
@@ -10,8 +10,8 @@
10 command_updater_.UpdateCommandEnabled(IDC_TAB_SEARCH, 10 command_updater_.UpdateCommandEnabled(IDC_TAB_SEARCH,
11 enable_tab_search_commands); 11 enable_tab_search_commands);
12 command_updater_.UpdateCommandEnabled(IDC_TAB_SEARCH_CLOSE, 12 command_updater_.UpdateCommandEnabled(IDC_TAB_SEARCH_CLOSE,
13--- chrome/browser/ui/views/frame/tab_strip_region_view.cc.orig 13--- a/chrome/browser/ui/views/frame/tab_strip_region_view.cc
14+++ chrome/browser/ui/views/frame/tab_strip_region_view.cc 14+++ b/chrome/browser/ui/views/frame/tab_strip_region_view.cc
15@@ -5,6 +5,7 @@ 15@@ -5,6 +5,7 @@
16 #include "chrome/browser/ui/views/frame/tab_strip_region_view.h" 16 #include "chrome/browser/ui/views/frame/tab_strip_region_view.h"
17 17
@@ -20,19 +20,19 @@
20 #include "base/strings/utf_string_conversions.h" 20 #include "base/strings/utf_string_conversions.h"
21 #include "build/build_config.h" 21 #include "build/build_config.h"
22 #include "chrome/browser/themes/theme_properties.h" 22 #include "chrome/browser/themes/theme_properties.h"
23@@ -132,7 +133,8 @@ TabStripRegionView::TabStripRegionView(s 23@@ -137,7 +138,8 @@ TabStripRegionView::TabStripRegionView(s
24 return; 24 return;
25 #endif 25 }
26 const Browser* browser = tab_strip_->controller()->GetBrowser(); 26
27- if (browser && browser->is_type_normal()) { 27- if (browser->is_type_normal()) {
28+ if (browser && browser->is_type_normal() && 28+ if (browser->is_type_normal() &&
29+ !base::CommandLine::ForCurrentProcess()->HasSwitch("remove-tabsearch-button")) { 29+ !base::CommandLine::ForCurrentProcess()->HasSwitch("remove-tabsearch-button")) {
30 auto tab_search_button = std::make_unique<TabSearchButton>(tab_strip_); 30 auto tab_search_button = std::make_unique<TabSearchButton>(tab_strip_);
31 tab_search_button->SetTooltipText( 31 tab_search_button->SetTooltipText(
32 l10n_util::GetStringUTF16(IDS_TOOLTIP_TAB_SEARCH)); 32 l10n_util::GetStringUTF16(IDS_TOOLTIP_TAB_SEARCH));
33--- chrome/browser/ungoogled_flag_entries.h.orig 33--- a/chrome/browser/ungoogled_flag_entries.h
34+++ chrome/browser/ungoogled_flag_entries.h 34+++ b/chrome/browser/ungoogled_flag_entries.h
35@@ -68,4 +68,8 @@ 35@@ -64,4 +64,8 @@
36 "Clear data on exit", 36 "Clear data on exit",
37 "Clears all browsing data on exit. ungoogled-chromium flag", 37 "Clears all browsing data on exit. ungoogled-chromium flag",
38 kOsDesktop, FEATURE_VALUE_TYPE(browsing_data::features::kClearDataOnExit)}, 38 kOsDesktop, FEATURE_VALUE_TYPE(browsing_data::features::kClearDataOnExit)},
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-clear-data-on-exit.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-clear-data-on-exit.patch
index 070c4cd..a10762f 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-clear-data-on-exit.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-clear-data-on-exit.patch
@@ -1,6 +1,6 @@
1--- chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager.cc.orig 1--- a/chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager.cc
2+++ chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager.cc 2+++ b/chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager.cc
3@@ -24,6 +24,7 @@ 3@@ -25,6 +25,7 @@
4 #include "chrome/browser/profiles/profile.h" 4 #include "chrome/browser/profiles/profile.h"
5 #include "chrome/browser/profiles/profile_manager.h" 5 #include "chrome/browser/profiles/profile_manager.h"
6 #include "chrome/browser/sync/sync_service_factory.h" 6 #include "chrome/browser/sync/sync_service_factory.h"
@@ -8,7 +8,7 @@
8 #include "components/browsing_data/core/pref_names.h" 8 #include "components/browsing_data/core/pref_names.h"
9 #include "components/keep_alive_registry/keep_alive_types.h" 9 #include "components/keep_alive_registry/keep_alive_types.h"
10 #include "components/keep_alive_registry/scoped_keep_alive.h" 10 #include "components/keep_alive_registry/scoped_keep_alive.h"
11@@ -151,6 +152,21 @@ class BrowsingDataRemoverObserver 11@@ -157,6 +158,21 @@ class BrowsingDataRemoverObserver
12 #endif 12 #endif
13 }; 13 };
14 14
@@ -29,20 +29,20 @@
29+ 29+
30 uint64_t GetOriginTypeMask(const base::Value& data_types) { 30 uint64_t GetOriginTypeMask(const base::Value& data_types) {
31 uint64_t result = 0; 31 uint64_t result = 0;
32 for (const auto& data_type : data_types.GetList()) { 32 for (const auto& data_type : data_types.GetListDeprecated()) {
33@@ -292,8 +308,9 @@ void ChromeBrowsingDataLifetimeManager:: 33@@ -307,8 +323,9 @@ void ChromeBrowsingDataLifetimeManager::
34 bool keep_browser_alive) { 34 bool keep_browser_alive) {
35 auto* data_types = profile_->GetPrefs()->GetList( 35 auto* data_types = profile_->GetPrefs()->GetList(
36 browsing_data::prefs::kClearBrowsingDataOnExitList); 36 browsing_data::prefs::kClearBrowsingDataOnExitList);
37- if (data_types && !data_types->GetList().empty() && 37- if (data_types && !data_types->GetListDeprecated().empty() &&
38- !SyncServiceFactory::IsSyncAllowed(profile_)) { 38- !SyncServiceFactory::IsSyncAllowed(profile_)) {
39+ bool cdoe = base::FeatureList::IsEnabled(browsing_data::features::kClearDataOnExit); 39+ bool cdoe = base::FeatureList::IsEnabled(browsing_data::features::kClearDataOnExit);
40+ if (cdoe || (data_types && !data_types->GetList().empty() && 40+ if (cdoe || (data_types && !data_types->GetListDeprecated().empty() &&
41+ !SyncServiceFactory::IsSyncAllowed(profile_))) { 41+ !SyncServiceFactory::IsSyncAllowed(profile_))) {
42 profile_->GetPrefs()->SetBoolean( 42 profile_->GetPrefs()->SetBoolean(
43 browsing_data::prefs::kClearBrowsingDataOnExitDeletionPending, true); 43 browsing_data::prefs::kClearBrowsingDataOnExitDeletionPending, true);
44 auto* remover = profile_->GetBrowsingDataRemover(); 44 auto* remover = profile_->GetBrowsingDataRemover();
45@@ -304,8 +321,8 @@ void ChromeBrowsingDataLifetimeManager:: 45@@ -319,8 +336,8 @@ void ChromeBrowsingDataLifetimeManager::
46 DCHECK(keep_browser_alive); 46 DCHECK(keep_browser_alive);
47 #endif 47 #endif
48 remover->RemoveAndReply(base::Time(), base::Time::Max(), 48 remover->RemoveAndReply(base::Time(), base::Time::Max(),
@@ -53,8 +53,8 @@
53 BrowsingDataRemoverObserver::Create( 53 BrowsingDataRemoverObserver::Create(
54 remover, /*filterable_deletion=*/true, profile_, 54 remover, /*filterable_deletion=*/true, profile_,
55 keep_browser_alive)); 55 keep_browser_alive));
56--- chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager_factory.cc.orig 56--- a/chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager_factory.cc
57+++ chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager_factory.cc 57+++ b/chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager_factory.cc
58@@ -48,6 +48,8 @@ ChromeBrowsingDataLifetimeManagerFactory 58@@ -48,6 +48,8 @@ ChromeBrowsingDataLifetimeManagerFactory
59 KeyedService* ChromeBrowsingDataLifetimeManagerFactory::BuildServiceInstanceFor( 59 KeyedService* ChromeBrowsingDataLifetimeManagerFactory::BuildServiceInstanceFor(
60 content::BrowserContext* context) const { 60 content::BrowserContext* context) const {
@@ -64,9 +64,9 @@
64 browsing_data::features::kEnableBrowsingDataLifetimeManager)) 64 browsing_data::features::kEnableBrowsingDataLifetimeManager))
65 return nullptr; 65 return nullptr;
66 Profile* profile = Profile::FromBrowserContext(context); 66 Profile* profile = Profile::FromBrowserContext(context);
67--- chrome/browser/ungoogled_flag_entries.h.orig 67--- a/chrome/browser/ungoogled_flag_entries.h
68+++ chrome/browser/ungoogled_flag_entries.h 68+++ b/chrome/browser/ungoogled_flag_entries.h
69@@ -64,4 +64,8 @@ 69@@ -60,4 +60,8 @@
70 "Keep old history", 70 "Keep old history",
71 "Keep history older than 3 months. ungoogled-chromium flag", 71 "Keep history older than 3 months. ungoogled-chromium flag",
72 kOsAll, SINGLE_VALUE_TYPE("keep-old-history")}, 72 kOsAll, SINGLE_VALUE_TYPE("keep-old-history")},
@@ -75,8 +75,8 @@
75+ "Clears all browsing data on exit. ungoogled-chromium flag", 75+ "Clears all browsing data on exit. ungoogled-chromium flag",
76+ kOsDesktop, FEATURE_VALUE_TYPE(browsing_data::features::kClearDataOnExit)}, 76+ kOsDesktop, FEATURE_VALUE_TYPE(browsing_data::features::kClearDataOnExit)},
77 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ 77 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
78--- components/browsing_data/core/features.cc.orig 78--- a/components/browsing_data/core/features.cc
79+++ components/browsing_data/core/features.cc 79+++ b/components/browsing_data/core/features.cc
80@@ -19,5 +19,7 @@ const base::Feature kEnableBrowsingDataL 80@@ -19,5 +19,7 @@ const base::Feature kEnableBrowsingDataL
81 const base::Feature kEnableBrowsingDataLifetimeManager{ 81 const base::Feature kEnableBrowsingDataLifetimeManager{
82 "BrowsingDataLifetimeManager", base::FEATURE_ENABLED_BY_DEFAULT}; 82 "BrowsingDataLifetimeManager", base::FEATURE_ENABLED_BY_DEFAULT};
@@ -85,8 +85,8 @@
85+const base::Feature kClearDataOnExit{"ClearDataOnExit", base::FEATURE_DISABLED_BY_DEFAULT}; 85+const base::Feature kClearDataOnExit{"ClearDataOnExit", base::FEATURE_DISABLED_BY_DEFAULT};
86 } // namespace features 86 } // namespace features
87 } // namespace browsing_data 87 } // namespace browsing_data
88--- components/browsing_data/core/features.h.orig 88--- a/components/browsing_data/core/features.h
89+++ components/browsing_data/core/features.h 89+++ b/components/browsing_data/core/features.h
90@@ -17,6 +17,7 @@ extern const base::Feature kEnableRemovi 90@@ -17,6 +17,7 @@ extern const base::Feature kEnableRemovi
91 // defined by the BrowsingDataLifetime policy. 91 // defined by the BrowsingDataLifetime policy.
92 extern const base::Feature kEnableBrowsingDataLifetimeManager; 92 extern const base::Feature kEnableBrowsingDataLifetimeManager;
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-close-window-with-last-tab.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-close-window-with-last-tab.patch
index b0358e8..5c9dbac 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-close-window-with-last-tab.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-close-window-with-last-tab.patch
@@ -1,5 +1,5 @@
1--- chrome/browser/ui/tabs/tab_strip_model.cc.orig 1--- a/chrome/browser/ui/tabs/tab_strip_model.cc
2+++ chrome/browser/ui/tabs/tab_strip_model.cc 2+++ b/chrome/browser/ui/tabs/tab_strip_model.cc
3@@ -11,6 +11,7 @@ 3@@ -11,6 +11,7 @@
4 #include <utility> 4 #include <utility>
5 5
@@ -7,8 +7,8 @@
7+#include "base/command_line.h" 7+#include "base/command_line.h"
8 #include "base/containers/flat_map.h" 8 #include "base/containers/flat_map.h"
9 #include "base/cxx17_backports.h" 9 #include "base/cxx17_backports.h"
10 #include "base/metrics/histogram_macros.h" 10 #include "base/memory/raw_ptr.h"
11@@ -1779,6 +1780,10 @@ bool TabStripModel::CloseTabs(base::span 11@@ -1875,6 +1876,10 @@ bool TabStripModel::CloseTabs(base::span
12 if (items.empty()) 12 if (items.empty())
13 return true; 13 return true;
14 14
@@ -19,8 +19,8 @@
19 const bool closing_all = static_cast<int>(items.size()) == count(); 19 const bool closing_all = static_cast<int>(items.size()) == count();
20 base::WeakPtr<TabStripModel> ref = weak_factory_.GetWeakPtr(); 20 base::WeakPtr<TabStripModel> ref = weak_factory_.GetWeakPtr();
21 if (closing_all) { 21 if (closing_all) {
22--- chrome/browser/ungoogled_flag_choices.h.orig 22--- a/chrome/browser/ungoogled_flag_choices.h
23+++ chrome/browser/ungoogled_flag_choices.h 23+++ b/chrome/browser/ungoogled_flag_choices.h
24@@ -60,4 +60,10 @@ const FeatureEntry::Choice kOmniboxAutoc 24@@ -60,4 +60,10 @@ const FeatureEntry::Choice kOmniboxAutoc
25 "omnibox-autocomplete-filtering", 25 "omnibox-autocomplete-filtering",
26 "search-bookmarks-chrome"}, 26 "search-bookmarks-chrome"},
@@ -32,9 +32,9 @@
32+ "never"}, 32+ "never"},
33+}; 33+};
34 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_ 34 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_
35--- chrome/browser/ungoogled_flag_entries.h.orig 35--- a/chrome/browser/ungoogled_flag_entries.h
36+++ chrome/browser/ungoogled_flag_entries.h 36+++ b/chrome/browser/ungoogled_flag_entries.h
37@@ -52,4 +52,8 @@ 37@@ -48,4 +48,8 @@
38 "Omnibox Autocomplete Filtering", 38 "Omnibox Autocomplete Filtering",
39 "Restrict omnibox autocomplete results to a combination of search suggestions (if enabled), bookmarks, and internal chrome pages. ungoogled-chromium flag.", 39 "Restrict omnibox autocomplete results to a combination of search suggestions (if enabled), bookmarks, and internal chrome pages. ungoogled-chromium flag.",
40 kOsAll, MULTI_VALUE_TYPE(kOmniboxAutocompleteFiltering)}, 40 kOsAll, MULTI_VALUE_TYPE(kOmniboxAutocompleteFiltering)},
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-configure-extension-downloading.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-configure-extension-downloading.patch
index 381de61..e50637e 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-configure-extension-downloading.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-configure-extension-downloading.patch
@@ -1,8 +1,8 @@
1# Add extension-mime-request-handling chrome://flag to tweak the behavior of 1# Add extension-mime-request-handling chrome://flag to tweak the behavior of
2# extension MIME types 2# extension MIME types
3 3
4--- chrome/browser/download/download_crx_util.cc.orig 4--- a/chrome/browser/download/download_crx_util.cc
5+++ chrome/browser/download/download_crx_util.cc 5+++ b/chrome/browser/download/download_crx_util.cc
6@@ -8,6 +8,7 @@ 6@@ -8,6 +8,7 @@
7 7
8 #include <memory> 8 #include <memory>
@@ -35,8 +35,8 @@
35 } else { 35 } else {
36 return false; 36 return false;
37 } 37 }
38--- chrome/browser/download/download_crx_util.h.orig 38--- a/chrome/browser/download/download_crx_util.h
39+++ chrome/browser/download/download_crx_util.h 39+++ b/chrome/browser/download/download_crx_util.h
40@@ -43,6 +43,10 @@ scoped_refptr<extensions::CrxInstaller> 40@@ -43,6 +43,10 @@ scoped_refptr<extensions::CrxInstaller>
41 Profile* profile, 41 Profile* profile,
42 const download::DownloadItem& download_item); 42 const download::DownloadItem& download_item);
@@ -48,9 +48,9 @@
48 // Returns true if this is an extension download. This also considers user 48 // Returns true if this is an extension download. This also considers user
49 // scripts to be extension downloads, since we convert those automatically. 49 // scripts to be extension downloads, since we convert those automatically.
50 bool IsExtensionDownload(const download::DownloadItem& download_item); 50 bool IsExtensionDownload(const download::DownloadItem& download_item);
51--- chrome/browser/download/download_target_determiner.cc.orig 51--- a/chrome/browser/download/download_target_determiner.cc
52+++ chrome/browser/download/download_target_determiner.cc 52+++ b/chrome/browser/download/download_target_determiner.cc
53@@ -1059,10 +1059,12 @@ DownloadConfirmationReason DownloadTarge 53@@ -1057,10 +1057,12 @@ DownloadConfirmationReason DownloadTarge
54 return DownloadConfirmationReason::SAVE_AS; 54 return DownloadConfirmationReason::SAVE_AS;
55 55
56 #if BUILDFLAG(ENABLE_EXTENSIONS) 56 #if BUILDFLAG(ENABLE_EXTENSIONS)
@@ -67,8 +67,8 @@
67 #endif 67 #endif
68 68
69 // Don't prompt for file types that are marked for opening automatically. 69 // Don't prompt for file types that are marked for opening automatically.
70--- chrome/browser/extensions/extension_management.cc.orig 70--- a/chrome/browser/extensions/extension_management.cc
71+++ chrome/browser/extensions/extension_management.cc 71+++ b/chrome/browser/extensions/extension_management.cc
72@@ -10,6 +10,7 @@ 72@@ -10,6 +10,7 @@
73 73
74 #include "base/bind.h" 74 #include "base/bind.h"
@@ -91,8 +91,8 @@
91 // No allowed install sites specified, disallow by default. 91 // No allowed install sites specified, disallow by default.
92 if (!global_settings_->has_restricted_install_sources) 92 if (!global_settings_->has_restricted_install_sources)
93 return false; 93 return false;
94--- chrome/browser/ungoogled_flag_choices.h.orig 94--- a/chrome/browser/ungoogled_flag_choices.h
95+++ chrome/browser/ungoogled_flag_choices.h 95+++ b/chrome/browser/ungoogled_flag_choices.h
96@@ -4,4 +4,13 @@ 96@@ -4,4 +4,13 @@
97 97
98 #ifndef CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_ 98 #ifndef CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_
@@ -107,12 +107,12 @@
107+ "always-prompt-for-install"}, 107+ "always-prompt-for-install"},
108+}; 108+};
109 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_ 109 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_
110--- chrome/browser/ungoogled_flag_entries.h.orig 110--- a/chrome/browser/ungoogled_flag_entries.h
111+++ chrome/browser/ungoogled_flag_entries.h 111+++ b/chrome/browser/ungoogled_flag_entries.h
112@@ -12,4 +12,8 @@ 112@@ -8,4 +8,8 @@
113 "Enable stacking in the tab strip", 113 "SetIpv6ProbeFalse",
114 "Forces tabs to be stacked in the tab strip. Otherwise, they follow default behavior. ungoogled-chromium flag.", 114 "Forces the result of the browser's IPv6 probing (i.e. IPv6 connectivity test) to be unsuccessful. This causes IPv4 addresses to be prioritized over IPv6 addresses. Without this flag, the probing result is set to be successful, which causes IPv6 to be used over IPv4 when possible. ungoogled-chromium flag.",
115 kOsAll, SINGLE_VALUE_TYPE("enable-stacked-tab-strip")}, 115 kOsAll, FEATURE_VALUE_TYPE(net::features::kSetIpv6ProbeFalse)},
116+ {"extension-mime-request-handling", 116+ {"extension-mime-request-handling",
117+ "Handling of extension MIME type requests", 117+ "Handling of extension MIME type requests",
118+ "Used when deciding how to handle a request for a CRX or User Script MIME type. ungoogled-chromium flag.", 118+ "Used when deciding how to handle a request for a CRX or User Script MIME type. ungoogled-chromium flag.",
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-convert-popups-to-tabs.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-convert-popups-to-tabs.patch
index 9a31082..da6544e 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-convert-popups-to-tabs.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-convert-popups-to-tabs.patch
@@ -1,8 +1,8 @@
1# Make popups go to tabs instead 1# Make popups go to tabs instead
2 2
3--- chrome/browser/ungoogled_flag_entries.h.orig 3--- a/chrome/browser/ungoogled_flag_entries.h
4+++ chrome/browser/ungoogled_flag_entries.h 4+++ b/chrome/browser/ungoogled_flag_entries.h
5@@ -56,4 +56,8 @@ 5@@ -52,4 +52,8 @@
6 "Close window with last tab", 6 "Close window with last tab",
7 "Determines whether a window should close once the last tab is closed. ungoogled-chromium flag.", 7 "Determines whether a window should close once the last tab is closed. ungoogled-chromium flag.",
8 kOsDesktop, MULTI_VALUE_TYPE(kCloseWindowWithLastTab)}, 8 kOsDesktop, MULTI_VALUE_TYPE(kCloseWindowWithLastTab)},
@@ -11,19 +11,20 @@
11+ "Makes popups open in new tabs. ungoogled-chromium flag", 11+ "Makes popups open in new tabs. ungoogled-chromium flag",
12+ kOsAll, SINGLE_VALUE_TYPE("popups-to-tabs")}, 12+ kOsAll, SINGLE_VALUE_TYPE("popups-to-tabs")},
13 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ 13 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
14--- content/renderer/render_view_impl.cc.orig 14--- a/content/renderer/render_view_impl.cc
15+++ content/renderer/render_view_impl.cc 15+++ b/content/renderer/render_view_impl.cc
16@@ -73,6 +73,8 @@ WindowOpenDisposition RenderViewImpl::Na 16@@ -74,6 +74,9 @@ WindowOpenDisposition RenderViewImpl::Na
17 case blink::kWebNavigationPolicyNewWindow: 17 case blink::kWebNavigationPolicyNewWindow:
18 return WindowOpenDisposition::NEW_WINDOW; 18 return WindowOpenDisposition::NEW_WINDOW;
19 case blink::kWebNavigationPolicyNewPopup: 19 case blink::kWebNavigationPolicyNewPopup:
20+ if (base::CommandLine::ForCurrentProcess()->HasSwitch("popups-to-tabs")) 20+ if (base::CommandLine::ForCurrentProcess()->HasSwitch("popups-to-tabs"))
21+ return WindowOpenDisposition::NEW_FOREGROUND_TAB; 21+ return WindowOpenDisposition::NEW_FOREGROUND_TAB;
22+ return WindowOpenDisposition::NEW_POPUP;
23 case blink::kWebNavigationPolicyPictureInPicture:
22 return WindowOpenDisposition::NEW_POPUP; 24 return WindowOpenDisposition::NEW_POPUP;
23 default: 25 default:
24 NOTREACHED() << "Unexpected WebNavigationPolicy"; 26--- a/ui/base/mojom/window_open_disposition_mojom_traits.h
25--- ui/base/mojom/window_open_disposition_mojom_traits.h.orig 27+++ b/ui/base/mojom/window_open_disposition_mojom_traits.h
26+++ ui/base/mojom/window_open_disposition_mojom_traits.h
27@@ -5,6 +5,7 @@ 28@@ -5,6 +5,7 @@
28 #ifndef UI_BASE_MOJOM_WINDOW_OPEN_DISPOSITION_MOJOM_TRAITS_H_ 29 #ifndef UI_BASE_MOJOM_WINDOW_OPEN_DISPOSITION_MOJOM_TRAITS_H_
29 #define UI_BASE_MOJOM_WINDOW_OPEN_DISPOSITION_MOJOM_TRAITS_H_ 30 #define UI_BASE_MOJOM_WINDOW_OPEN_DISPOSITION_MOJOM_TRAITS_H_
@@ -32,16 +33,16 @@
32 #include "base/notreached.h" 33 #include "base/notreached.h"
33 #include "mojo/public/cpp/bindings/enum_traits.h" 34 #include "mojo/public/cpp/bindings/enum_traits.h"
34 #include "ui/base/mojom/window_open_disposition.mojom.h" 35 #include "ui/base/mojom/window_open_disposition.mojom.h"
35@@ -28,6 +29,8 @@ struct EnumTraits<ui::mojom::WindowOpenD 36@@ -30,6 +31,8 @@ struct EnumTraits<ui::mojom::WindowOpenD
36 case WindowOpenDisposition::NEW_BACKGROUND_TAB: 37 case WindowOpenDisposition::NEW_PICTURE_IN_PICTURE:
37 return ui::mojom::WindowOpenDisposition::NEW_BACKGROUND_TAB; 38 return ui::mojom::WindowOpenDisposition::NEW_PICTURE_IN_PICTURE;
38 case WindowOpenDisposition::NEW_POPUP: 39 case WindowOpenDisposition::NEW_POPUP:
39+ if (base::CommandLine::ForCurrentProcess()->HasSwitch("popups-to-tabs")) 40+ if (base::CommandLine::ForCurrentProcess()->HasSwitch("popups-to-tabs"))
40+ return ui::mojom::WindowOpenDisposition::NEW_FOREGROUND_TAB; 41+ return ui::mojom::WindowOpenDisposition::NEW_FOREGROUND_TAB;
41 return ui::mojom::WindowOpenDisposition::NEW_POPUP; 42 return ui::mojom::WindowOpenDisposition::NEW_POPUP;
42 case WindowOpenDisposition::NEW_WINDOW: 43 case WindowOpenDisposition::NEW_WINDOW:
43 return ui::mojom::WindowOpenDisposition::NEW_WINDOW; 44 return ui::mojom::WindowOpenDisposition::NEW_WINDOW;
44@@ -63,6 +66,8 @@ struct EnumTraits<ui::mojom::WindowOpenD 45@@ -68,6 +71,8 @@ struct EnumTraits<ui::mojom::WindowOpenD
45 return true; 46 return true;
46 case ui::mojom::WindowOpenDisposition::NEW_POPUP: 47 case ui::mojom::WindowOpenDisposition::NEW_POPUP:
47 *out = WindowOpenDisposition::NEW_POPUP; 48 *out = WindowOpenDisposition::NEW_POPUP;
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-disable-beforeunload.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-disable-beforeunload.patch
index c46ec2b..c2678af 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-disable-beforeunload.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-disable-beforeunload.patch
@@ -1,8 +1,8 @@
1# Add --disable-beforeunload to always disable beforeunload JavaScript dialogs 1# Add --disable-beforeunload to always disable beforeunload JavaScript dialogs
2 2
3--- chrome/browser/ungoogled_flag_entries.h.orig 3--- a/chrome/browser/ungoogled_flag_entries.h
4+++ chrome/browser/ungoogled_flag_entries.h 4+++ b/chrome/browser/ungoogled_flag_entries.h
5@@ -20,4 +20,8 @@ 5@@ -16,4 +16,8 @@
6 "Disable search engine collection", 6 "Disable search engine collection",
7 "Prevents search engines from being added automatically. ungoogled-chromium flag.", 7 "Prevents search engines from being added automatically. ungoogled-chromium flag.",
8 kOsAll, SINGLE_VALUE_TYPE("disable-search-engine-collection")}, 8 kOsAll, SINGLE_VALUE_TYPE("disable-search-engine-collection")},
@@ -11,17 +11,17 @@
11+ "Disables JavaScript dialog boxes triggered by beforeunload. ungoogled-chromium flag.", 11+ "Disables JavaScript dialog boxes triggered by beforeunload. ungoogled-chromium flag.",
12+ kOsAll, SINGLE_VALUE_TYPE("disable-beforeunload")}, 12+ kOsAll, SINGLE_VALUE_TYPE("disable-beforeunload")},
13 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ 13 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
14--- components/javascript_dialogs/app_modal_dialog_manager.cc.orig 14--- a/components/javascript_dialogs/app_modal_dialog_manager.cc
15+++ components/javascript_dialogs/app_modal_dialog_manager.cc 15+++ b/components/javascript_dialogs/app_modal_dialog_manager.cc
16@@ -8,6 +8,7 @@ 16@@ -8,6 +8,7 @@
17 #include <utility> 17 #include <utility>
18 18
19 #include "base/bind.h" 19 #include "base/bind.h"
20+#include "base/command_line.h" 20+#include "base/command_line.h"
21 #include "base/i18n/rtl.h" 21 #include "base/i18n/rtl.h"
22 #include "base/macros.h"
23 #include "base/metrics/histogram_macros.h" 22 #include "base/metrics/histogram_macros.h"
24@@ -196,7 +197,8 @@ void AppModalDialogManager::RunBeforeUnl 23 #include "base/strings/utf_string_conversions.h"
24@@ -195,7 +196,8 @@ void AppModalDialogManager::RunBeforeUnl
25 ChromeJavaScriptDialogExtraData* extra_data = 25 ChromeJavaScriptDialogExtraData* extra_data =
26 &javascript_dialog_extra_data_[web_contents]; 26 &javascript_dialog_extra_data_[web_contents];
27 27
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-disable-local-history-expiration.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-disable-local-history-expiration.patch
index 090432a..f377414 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-disable-local-history-expiration.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-disable-local-history-expiration.patch
@@ -1,8 +1,8 @@
1# Keep local history longer than 90 days 1# Keep local history longer than 90 days
2 2
3--- chrome/browser/ungoogled_flag_entries.h.orig 3--- a/chrome/browser/ungoogled_flag_entries.h
4+++ chrome/browser/ungoogled_flag_entries.h 4+++ b/chrome/browser/ungoogled_flag_entries.h
5@@ -60,4 +60,8 @@ 5@@ -56,4 +56,8 @@
6 "Popups to tabs", 6 "Popups to tabs",
7 "Makes popups open in new tabs. ungoogled-chromium flag", 7 "Makes popups open in new tabs. ungoogled-chromium flag",
8 kOsAll, SINGLE_VALUE_TYPE("popups-to-tabs")}, 8 kOsAll, SINGLE_VALUE_TYPE("popups-to-tabs")},
@@ -11,8 +11,8 @@
11+ "Keep history older than 3 months. ungoogled-chromium flag", 11+ "Keep history older than 3 months. ungoogled-chromium flag",
12+ kOsAll, SINGLE_VALUE_TYPE("keep-old-history")}, 12+ kOsAll, SINGLE_VALUE_TYPE("keep-old-history")},
13 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ 13 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
14--- components/history/core/browser/history_backend.cc.orig 14--- a/components/history/core/browser/history_backend.cc
15+++ components/history/core/browser/history_backend.cc 15+++ b/components/history/core/browser/history_backend.cc
16@@ -15,6 +15,7 @@ 16@@ -15,6 +15,7 @@
17 #include <vector> 17 #include <vector>
18 18
@@ -21,7 +21,7 @@
21 #include "base/callback_helpers.h" 21 #include "base/callback_helpers.h"
22 #include "base/compiler_specific.h" 22 #include "base/compiler_specific.h"
23 #include "base/containers/flat_set.h" 23 #include "base/containers/flat_set.h"
24@@ -911,7 +912,8 @@ void HistoryBackend::InitImpl( 24@@ -977,7 +978,8 @@ void HistoryBackend::InitImpl(
25 db_->GetStartDate(&first_recorded_time_); 25 db_->GetStartDate(&first_recorded_time_);
26 26
27 // Start expiring old stuff. 27 // Start expiring old stuff.
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-force-punycode-hostnames.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-force-punycode-hostnames.patch
index be26b2c..840f91a 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-force-punycode-hostnames.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-force-punycode-hostnames.patch
@@ -1,8 +1,8 @@
1# Add flag to force punycode in hostnames instead of Unicode when displaying Internationalized Domain Names (IDNs) to mitigate homograph attacks 1# Add flag to force punycode in hostnames instead of Unicode when displaying Internationalized Domain Names (IDNs) to mitigate homograph attacks
2 2
3--- chrome/browser/ungoogled_flag_entries.h.orig 3--- a/chrome/browser/ungoogled_flag_entries.h
4+++ chrome/browser/ungoogled_flag_entries.h 4+++ b/chrome/browser/ungoogled_flag_entries.h
5@@ -24,4 +24,8 @@ 5@@ -20,4 +20,8 @@
6 "Disable beforeunload", 6 "Disable beforeunload",
7 "Disables JavaScript dialog boxes triggered by beforeunload. ungoogled-chromium flag.", 7 "Disables JavaScript dialog boxes triggered by beforeunload. ungoogled-chromium flag.",
8 kOsAll, SINGLE_VALUE_TYPE("disable-beforeunload")}, 8 kOsAll, SINGLE_VALUE_TYPE("disable-beforeunload")},
@@ -11,17 +11,17 @@
11+ "Force punycode in hostnames instead of Unicode when displaying Internationalized Domain Names (IDNs). ungoogled-chromium flag.", 11+ "Force punycode in hostnames instead of Unicode when displaying Internationalized Domain Names (IDNs). ungoogled-chromium flag.",
12+ kOsAll, SINGLE_VALUE_TYPE("force-punycode-hostnames")}, 12+ kOsAll, SINGLE_VALUE_TYPE("force-punycode-hostnames")},
13 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ 13 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
14--- components/url_formatter/url_formatter.cc.orig 14--- a/components/url_formatter/url_formatter.cc
15+++ components/url_formatter/url_formatter.cc 15+++ b/components/url_formatter/url_formatter.cc
16@@ -8,6 +8,7 @@ 16@@ -9,6 +9,7 @@
17 #include <utility> 17 #include <utility>
18 #include <vector> 18 #include <vector>
19 19
20+#include "base/command_line.h" 20+#include "base/command_line.h"
21 #include "base/lazy_instance.h" 21 #include "base/lazy_instance.h"
22 #include "base/memory/raw_ptr.h"
22 #include "base/numerics/safe_conversions.h" 23 #include "base/numerics/safe_conversions.h"
23 #include "base/strings/strcat.h" 24@@ -270,6 +271,13 @@ IDNConversionResult IDNToUnicodeWithAdju
24@@ -264,6 +265,13 @@ IDNConversionResult IDNToUnicodeWithAdju
25 host16.reserve(host.length()); 25 host16.reserve(host.length());
26 host16.insert(host16.end(), host.begin(), host.end()); 26 host16.insert(host16.end(), host.begin(), host.end());
27 27
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-hide-crashed-bubble.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-hide-crashed-bubble.patch
index 87da094..a7a43aa 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-hide-crashed-bubble.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-hide-crashed-bubble.patch
@@ -1,21 +1,21 @@
1# Add flag --hide-crashed-bubble to hide the bubble box: 1# Add flag --hide-crashed-bubble to hide the bubble box:
2# "Restore Pages? Chromium didn't shut down correctly." 2# "Restore Pages? Chromium didn't shut down correctly."
3 3
4--- chrome/browser/ui/startup/startup_browser_creator_impl.cc.orig 4--- a/chrome/browser/ui/startup/infobar_utils.cc
5+++ chrome/browser/ui/startup/startup_browser_creator_impl.cc 5+++ b/chrome/browser/ui/startup/infobar_utils.cc
6@@ -648,7 +648,8 @@ void StartupBrowserCreatorImpl::AddInfoB 6@@ -80,7 +80,8 @@ void AddInfoBarsIfNecessary(Browser* bro
7 if (command_line_.HasSwitch(switches::kKioskMode))
8 return; 7 return;
9 8
10- if (HasPendingUncleanExit(browser->profile())) 9 // Web apps should not display the session restore bubble (crbug.com/1264121)
11+ if (HasPendingUncleanExit(browser->profile()) && 10- if (!is_web_app && HasPendingUncleanExit(browser->profile()))
12+ !command_line_.HasSwitch("hide-crashed-bubble")) 11+ if (!is_web_app && HasPendingUncleanExit(browser->profile()) &&
12+ !startup_command_line.HasSwitch("hide-crashed-bubble"))
13 SessionCrashedBubble::ShowIfNotOffTheRecordProfile( 13 SessionCrashedBubble::ShowIfNotOffTheRecordProfile(
14 browser, /*skip_tab_checking=*/false); 14 browser, /*skip_tab_checking=*/false);
15 15
16--- chrome/browser/ungoogled_flag_entries.h.orig 16--- a/chrome/browser/ungoogled_flag_entries.h
17+++ chrome/browser/ungoogled_flag_entries.h 17+++ b/chrome/browser/ungoogled_flag_entries.h
18@@ -32,4 +32,8 @@ 18@@ -28,4 +28,8 @@
19 "Show avatar/people/profile button", 19 "Show avatar/people/profile button",
20 "Show avatar/people/profile button in the browser toolbar. ungoogled-chromium flag.", 20 "Show avatar/people/profile button in the browser toolbar. ungoogled-chromium flag.",
21 kOsDesktop, MULTI_VALUE_TYPE(kShowAvatarButtonChoices)}, 21 kOsDesktop, MULTI_VALUE_TYPE(kShowAvatarButtonChoices)},
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-hide-tab-close-buttons.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-hide-tab-close-buttons.patch
index 7937d6f..085b6b2 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-hide-tab-close-buttons.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-hide-tab-close-buttons.patch
@@ -1,17 +1,29 @@
1--- chrome/browser/ui/views/tabs/tab_strip.cc.orig 1--- a/chrome/browser/ui/views/tabs/tab.cc
2+++ chrome/browser/ui/views/tabs/tab_strip.cc 2+++ b/chrome/browser/ui/views/tabs/tab.cc
3@@ -1909,6 +1909,8 @@ bool TabStrip::SupportsMultipleSelection 3@@ -978,7 +978,11 @@ void Tab::UpdateIconVisibility() {
4 } 4 if (IsActive()) {
5 // Close button is shown on active tabs regardless of the size.
6 showing_close_button_ = true;
7+ if (base::CommandLine::ForCurrentProcess()->HasSwitch("hide-tab-close-buttons")) {
8+ showing_close_button_ = false;
9+ } else {
10 available_width -= close_button_width;
11+ }
5 12
6 bool TabStrip::ShouldHideCloseButtonForTab(Tab* tab) const { 13 showing_alert_indicator_ =
7+ if (base::CommandLine::ForCurrentProcess()->HasSwitch("hide-tab-close-buttons")) 14 has_alert_icon && alert_icon_width <= available_width;
8+ return true; 15@@ -999,6 +1003,8 @@ void Tab::UpdateIconVisibility() {
9 if (tab->IsActive()) 16 available_width -= favicon_width;
10 return false; 17
11 return !!touch_layout_; 18 showing_close_button_ = large_enough_for_close_button;
12--- chrome/browser/ungoogled_flag_entries.h.orig 19+ if (base::CommandLine::ForCurrentProcess()->HasSwitch("hide-tab-close-buttons"))
13+++ chrome/browser/ungoogled_flag_entries.h 20+ showing_close_button_ = false;
14@@ -92,4 +92,8 @@ 21 if (showing_close_button_)
22 available_width -= close_button_width;
23
24--- a/chrome/browser/ungoogled_flag_entries.h
25+++ b/chrome/browser/ungoogled_flag_entries.h
26@@ -88,4 +88,8 @@
15 "Tab Hover Cards", 27 "Tab Hover Cards",
16 "Allows removing the tab hover cards or using a tooltip as a replacement. ungoogled-chromium flag.", 28 "Allows removing the tab hover cards or using a tooltip as a replacement. ungoogled-chromium flag.",
17 kOsDesktop, MULTI_VALUE_TYPE(kTabHoverCards)}, 29 kOsDesktop, MULTI_VALUE_TYPE(kTabHoverCards)},
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-scroll-tabs.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-scroll-tabs.patch
index d657480..e1a6886 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-scroll-tabs.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-scroll-tabs.patch
@@ -1,5 +1,5 @@
1--- chrome/browser/ui/views/frame/browser_root_view.cc.orig 1--- a/chrome/browser/ui/views/frame/browser_root_view.cc
2+++ chrome/browser/ui/views/frame/browser_root_view.cc 2+++ b/chrome/browser/ui/views/frame/browser_root_view.cc
3@@ -11,6 +11,7 @@ 3@@ -11,6 +11,7 @@
4 4
5 #include "base/bind.h" 5 #include "base/bind.h"
@@ -38,7 +38,7 @@
38 38
39 BrowserRootView::~BrowserRootView() { 39 BrowserRootView::~BrowserRootView() {
40 // It's possible to destroy the browser while a drop is active. In this case, 40 // It's possible to destroy the browser while a drop is active. In this case,
41@@ -245,7 +260,7 @@ bool BrowserRootView::OnMouseWheel(const 41@@ -255,7 +270,7 @@ bool BrowserRootView::OnMouseWheel(const
42 42
43 // Scroll-event-changes-tab is incompatible with scrolling tabstrip, so 43 // Scroll-event-changes-tab is incompatible with scrolling tabstrip, so
44 // disable it if the latter feature is enabled. 44 // disable it if the latter feature is enabled.
@@ -47,9 +47,9 @@
47 !base::FeatureList::IsEnabled(features::kScrollableTabStrip)) { 47 !base::FeatureList::IsEnabled(features::kScrollableTabStrip)) {
48 // Switch to the left/right tab if the wheel-scroll happens over the 48 // Switch to the left/right tab if the wheel-scroll happens over the
49 // tabstrip, or the empty space beside the tabstrip. 49 // tabstrip, or the empty space beside the tabstrip.
50--- chrome/browser/ui/views/frame/browser_root_view.h.orig 50--- a/chrome/browser/ui/views/frame/browser_root_view.h
51+++ chrome/browser/ui/views/frame/browser_root_view.h 51+++ b/chrome/browser/ui/views/frame/browser_root_view.h
52@@ -143,6 +143,8 @@ class BrowserRootView : public views::in 52@@ -144,6 +144,8 @@ class BrowserRootView : public views::in
53 int scroll_remainder_x_ = 0; 53 int scroll_remainder_x_ = 0;
54 int scroll_remainder_y_ = 0; 54 int scroll_remainder_y_ = 0;
55 55
@@ -58,8 +58,8 @@
58 std::unique_ptr<DropInfo> drop_info_; 58 std::unique_ptr<DropInfo> drop_info_;
59 59
60 base::WeakPtrFactory<BrowserRootView> weak_ptr_factory_{this}; 60 base::WeakPtrFactory<BrowserRootView> weak_ptr_factory_{this};
61--- chrome/browser/ungoogled_flag_choices.h.orig 61--- a/chrome/browser/ungoogled_flag_choices.h
62+++ chrome/browser/ungoogled_flag_choices.h 62+++ b/chrome/browser/ungoogled_flag_choices.h
63@@ -25,4 +25,13 @@ const FeatureEntry::Choice kShowAvatarBu 63@@ -25,4 +25,13 @@ const FeatureEntry::Choice kShowAvatarBu
64 "show-avatar-button", 64 "show-avatar-button",
65 "never"} 65 "never"}
@@ -74,9 +74,9 @@
74+ "never"} 74+ "never"}
75+}; 75+};
76 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_ 76 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_
77--- chrome/browser/ungoogled_flag_entries.h.orig 77--- a/chrome/browser/ungoogled_flag_entries.h
78+++ chrome/browser/ungoogled_flag_entries.h 78+++ b/chrome/browser/ungoogled_flag_entries.h
79@@ -36,4 +36,8 @@ 79@@ -32,4 +32,8 @@
80 "Hide crashed bubble", 80 "Hide crashed bubble",
81 "Hides the bubble box with the message \"Restore Pages? Chromium didn't shut down correctly.\" that shows on startup after the browser did not exit cleanly. ungoogled-chromium flag.", 81 "Hides the bubble box with the message \"Restore Pages? Chromium didn't shut down correctly.\" that shows on startup after the browser did not exit cleanly. ungoogled-chromium flag.",
82 kOsAll, SINGLE_VALUE_TYPE("hide-crashed-bubble")}, 82 kOsAll, SINGLE_VALUE_TYPE("hide-crashed-bubble")},
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-show-avatar-button.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-show-avatar-button.patch
index 8fe39bd..6035274 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-show-avatar-button.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-show-avatar-button.patch
@@ -1,6 +1,6 @@
1--- chrome/browser/ui/views/toolbar/toolbar_view.cc.orig 1--- a/chrome/browser/ui/views/toolbar/toolbar_view.cc
2+++ chrome/browser/ui/views/toolbar/toolbar_view.cc 2+++ b/chrome/browser/ui/views/toolbar/toolbar_view.cc
3@@ -273,12 +273,28 @@ void ToolbarView::Init() { 3@@ -282,14 +282,30 @@ void ToolbarView::Init() {
4 4
5 std::unique_ptr<ToolbarAccountIconContainerView> 5 std::unique_ptr<ToolbarAccountIconContainerView>
6 toolbar_account_icon_container; 6 toolbar_account_icon_container;
@@ -19,6 +19,8 @@
19- show_avatar_toolbar_button = browser_->profile()->IsOffTheRecord() || 19- show_avatar_toolbar_button = browser_->profile()->IsOffTheRecord() ||
20- browser_->profile()->IsGuestSession(); 20- browser_->profile()->IsGuestSession();
21+ show_avatar_toolbar_button = in_incognito_or_guest_mode; 21+ show_avatar_toolbar_button = in_incognito_or_guest_mode;
22 #elif BUILDFLAG(IS_CHROMEOS_LACROS)
23 show_avatar_toolbar_button = !profiles::IsPublicSession();
22 #endif 24 #endif
23+ 25+
24+ if (flag_value == "always") 26+ if (flag_value == "always")
@@ -31,8 +33,8 @@
31 if (base::FeatureList::IsEnabled( 33 if (base::FeatureList::IsEnabled(
32 autofill::features::kAutofillEnableToolbarStatusChip)) { 34 autofill::features::kAutofillEnableToolbarStatusChip)) {
33 // The avatar button is contained inside the page-action container and 35 // The avatar button is contained inside the page-action container and
34--- chrome/browser/ungoogled_flag_choices.h.orig 36--- a/chrome/browser/ungoogled_flag_choices.h
35+++ chrome/browser/ungoogled_flag_choices.h 37+++ b/chrome/browser/ungoogled_flag_choices.h
36@@ -13,4 +13,16 @@ const FeatureEntry::Choice kExtensionHan 38@@ -13,4 +13,16 @@ const FeatureEntry::Choice kExtensionHan
37 "extension-mime-request-handling", 39 "extension-mime-request-handling",
38 "always-prompt-for-install"}, 40 "always-prompt-for-install"},
@@ -50,9 +52,9 @@
50+ "never"} 52+ "never"}
51+}; 53+};
52 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_ 54 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_
53--- chrome/browser/ungoogled_flag_entries.h.orig 55--- a/chrome/browser/ungoogled_flag_entries.h
54+++ chrome/browser/ungoogled_flag_entries.h 56+++ b/chrome/browser/ungoogled_flag_entries.h
55@@ -28,4 +28,8 @@ 57@@ -24,4 +24,8 @@
56 "Force punycode hostnames", 58 "Force punycode hostnames",
57 "Force punycode in hostnames instead of Unicode when displaying Internationalized Domain Names (IDNs). ungoogled-chromium flag.", 59 "Force punycode in hostnames instead of Unicode when displaying Internationalized Domain Names (IDNs). ungoogled-chromium flag.",
58 kOsAll, SINGLE_VALUE_TYPE("force-punycode-hostnames")}, 60 kOsAll, SINGLE_VALUE_TYPE("force-punycode-hostnames")},
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-stack-tabs.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-stack-tabs.patch
deleted file mode 100644
index 6e19e76..0000000
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-flag-to-stack-tabs.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1# Add --enable-stacked-tab-strip and --enable-tab-adjust-layout flags to tweak tab strip behavior
2
3--- chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc.orig
4+++ chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc
5@@ -83,14 +83,13 @@ using content::WebContents;
6 namespace {
7
8 bool DetermineTabStripLayoutStacked(PrefService* prefs, bool* adjust_layout) {
9- *adjust_layout = false;
10- // For ash, always allow entering stacked mode.
11 #if BUILDFLAG(IS_CHROMEOS_ASH)
12 *adjust_layout = true;
13 return prefs->GetBoolean(prefs::kTabStripStackedLayout);
14 #else
15- return base::CommandLine::ForCurrentProcess()->HasSwitch(
16- switches::kForceStackedTabStripLayout);
17+ *adjust_layout = base::CommandLine::ForCurrentProcess()->HasSwitch("enable-tab-adjust-layout");
18+ return prefs->GetBoolean(prefs::kTabStripStackedLayout) ||
19+ base::CommandLine::ForCurrentProcess()->HasSwitch("enable-stacked-tab-strip");
20 #endif
21 }
22
23--- chrome/browser/ungoogled_flag_entries.h.orig
24+++ chrome/browser/ungoogled_flag_entries.h
25@@ -8,4 +8,8 @@
26 "SetIpv6ProbeFalse",
27 "Forces the result of the browser's IPv6 probing (i.e. IPv6 connectivity test) to be unsuccessful. This causes IPv4 addresses to be prioritized over IPv6 addresses. Without this flag, the probing result is set to be successful, which causes IPv6 to be used over IPv4 when possible. ungoogled-chromium flag.",
28 kOsAll, FEATURE_VALUE_TYPE(net::features::kSetIpv6ProbeFalse)},
29+ {"enable-stacked-tab-strip",
30+ "Enable stacking in the tab strip",
31+ "Forces tabs to be stacked in the tab strip. Otherwise, they follow default behavior. ungoogled-chromium flag.",
32+ kOsAll, SINGLE_VALUE_TYPE("enable-stacked-tab-strip")},
33 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-ipv6-probing-option.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-ipv6-probing-option.patch
index 0bc5dd5..ce33ec4 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-ipv6-probing-option.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-ipv6-probing-option.patch
@@ -1,7 +1,7 @@
1# Disables IPv6 probing and adds an option to change the IPv6 probing result 1# Disables IPv6 probing and adds an option to change the IPv6 probing result
2 2
3--- chrome/browser/ungoogled_flag_entries.h.orig 3--- a/chrome/browser/ungoogled_flag_entries.h
4+++ chrome/browser/ungoogled_flag_entries.h 4+++ b/chrome/browser/ungoogled_flag_entries.h
5@@ -4,4 +4,8 @@ 5@@ -4,4 +4,8 @@
6 6
7 #ifndef CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ 7 #ifndef CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
@@ -11,30 +11,30 @@
11+ "Forces the result of the browser's IPv6 probing (i.e. IPv6 connectivity test) to be unsuccessful. This causes IPv4 addresses to be prioritized over IPv6 addresses. Without this flag, the probing result is set to be successful, which causes IPv6 to be used over IPv4 when possible. ungoogled-chromium flag.", 11+ "Forces the result of the browser's IPv6 probing (i.e. IPv6 connectivity test) to be unsuccessful. This causes IPv4 addresses to be prioritized over IPv6 addresses. Without this flag, the probing result is set to be successful, which causes IPv6 to be used over IPv4 when possible. ungoogled-chromium flag.",
12+ kOsAll, FEATURE_VALUE_TYPE(net::features::kSetIpv6ProbeFalse)}, 12+ kOsAll, FEATURE_VALUE_TYPE(net::features::kSetIpv6ProbeFalse)},
13 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ 13 #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
14--- net/base/features.cc.orig 14--- a/net/base/features.cc
15+++ net/base/features.cc 15+++ b/net/base/features.cc
16@@ -263,5 +263,7 @@ const base::Feature kPartitionedCookies{ 16@@ -259,5 +259,7 @@ const base::Feature kRecordRadioWakeupTr
17 const base::Feature kExtraCookieValidityChecks{ 17 const base::Feature kSandboxHttpCache("SandboxHttpCache",
18 "ExtraCookieValidityChecks", base::FEATURE_ENABLED_BY_DEFAULT}; 18 base::FEATURE_DISABLED_BY_DEFAULT);
19 19
20+const base::Feature kSetIpv6ProbeFalse{"SetIpv6ProbeFalse", base::FEATURE_DISABLED_BY_DEFAULT}; 20+const base::Feature kSetIpv6ProbeFalse{"SetIpv6ProbeFalse", base::FEATURE_DISABLED_BY_DEFAULT};
21+ 21+
22 } // namespace features 22 } // namespace features
23 } // namespace net 23 } // namespace net
24--- net/base/features.h.orig 24--- a/net/base/features.h
25+++ net/base/features.h 25+++ b/net/base/features.h
26@@ -396,6 +396,8 @@ NET_EXPORT extern const base::Feature kP 26@@ -390,6 +390,8 @@ NET_EXPORT extern const base::Feature kR
27 // feature flag, assuming no breakage occurs with it enabled. 27 // the network process to be sandboxed.
28 NET_EXPORT extern const base::Feature kExtraCookieValidityChecks; 28 NET_EXPORT extern const base::Feature kSandboxHttpCache;
29 29
30+NET_EXPORT extern const base::Feature kSetIpv6ProbeFalse; 30+NET_EXPORT extern const base::Feature kSetIpv6ProbeFalse;
31+ 31+
32 } // namespace features 32 } // namespace features
33 } // namespace net 33 } // namespace net
34 34
35--- net/dns/host_resolver_manager.cc.orig 35--- a/net/dns/host_resolver_manager.cc
36+++ net/dns/host_resolver_manager.cc 36+++ b/net/dns/host_resolver_manager.cc
37@@ -139,11 +139,6 @@ const unsigned kMinimumTTLSeconds = kCac 37@@ -151,11 +151,6 @@ const unsigned kMinimumTTLSeconds = kCac
38 // cached. 38 // cached.
39 const int kIPv6ProbePeriodMs = 1000; 39 const int kIPv6ProbePeriodMs = 1000;
40 40
@@ -46,7 +46,7 @@
46 enum DnsResolveStatus { 46 enum DnsResolveStatus {
47 RESOLVE_STATUS_DNS_SUCCESS = 0, 47 RESOLVE_STATUS_DNS_SUCCESS = 0,
48 RESOLVE_STATUS_PROC_SUCCESS, 48 RESOLVE_STATUS_PROC_SUCCESS,
49@@ -3696,7 +3691,7 @@ bool HostResolverManager::IsIPv6Reachabl 49@@ -3907,7 +3902,7 @@ bool HostResolverManager::IsIPv6Reachabl
50 (tick_clock_->NowTicks() - last_ipv6_probe_time_).InMilliseconds() > 50 (tick_clock_->NowTicks() - last_ipv6_probe_time_).InMilliseconds() >
51 kIPv6ProbePeriodMs) { 51 kIPv6ProbePeriodMs) {
52 SetLastIPv6ProbeResult( 52 SetLastIPv6ProbeResult(
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-suggestions-url-field.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-suggestions-url-field.patch
index 9ff8cfa..1b30554 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-suggestions-url-field.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-suggestions-url-field.patch
@@ -1,8 +1,8 @@
1# Add suggestions URL text field to the search engine editing dialog 1# Add suggestions URL text field to the search engine editing dialog
2# (chrome://settings/searchEngines). 2# (chrome://settings/searchEngines).
3 3
4--- chrome/browser/resources/settings/search_engines_page/search_engine_dialog.html.orig 4--- a/chrome/browser/resources/settings/search_engines_page/search_engine_edit_dialog.html
5+++ chrome/browser/resources/settings/search_engines_page/search_engine_dialog.html 5+++ b/chrome/browser/resources/settings/search_engines_page/search_engine_edit_dialog.html
6@@ -20,6 +20,13 @@ 6@@ -20,6 +20,13 @@
7 value="{{queryUrl_}}" on-focus="validate_" on-input="validate_" 7 value="{{queryUrl_}}" on-focus="validate_" on-input="validate_"
8 disabled$="[[model.urlLocked]]"> 8 disabled$="[[model.urlLocked]]">
@@ -17,9 +17,9 @@
17 </div> 17 </div>
18 <div slot="button-container"> 18 <div slot="button-container">
19 <cr-button class="cancel-button" on-click="cancel_" id="cancel"> 19 <cr-button class="cancel-button" on-click="cancel_" id="cancel">
20--- chrome/browser/resources/settings/search_engines_page/search_engine_dialog.ts.orig 20--- a/chrome/browser/resources/settings/search_engines_page/search_engine_edit_dialog.ts
21+++ chrome/browser/resources/settings/search_engines_page/search_engine_dialog.ts 21+++ b/chrome/browser/resources/settings/search_engines_page/search_engine_edit_dialog.ts
22@@ -26,6 +26,7 @@ interface SettingsSearchEngineDialogElem 22@@ -28,6 +28,7 @@ export interface SettingsSearchEngineEdi
23 dialog: CrDialogElement, 23 dialog: CrDialogElement,
24 keyword: CrInputElement, 24 keyword: CrInputElement,
25 queryUrl: CrInputElement, 25 queryUrl: CrInputElement,
@@ -27,23 +27,23 @@
27 searchEngine: CrInputElement, 27 searchEngine: CrInputElement,
28 }; 28 };
29 } 29 }
30@@ -54,6 +55,7 @@ class SettingsSearchEngineDialogElement 30@@ -56,6 +57,7 @@ export class SettingsSearchEngineEditDia
31 searchEngine_: String, 31 searchEngine_: String,
32 keyword_: String, 32 keyword_: String,
33 queryUrl_: String, 33 queryUrl_: String,
34+ suggestionsUrl_: String, 34+ suggestionsUrl_: String,
35 dialogTitle_: String, 35 dialogTitle_: String,
36 keywordFieldLabel_: String,
36 actionButtonText_: String, 37 actionButtonText_: String,
37 }; 38@@ -72,6 +74,7 @@ export class SettingsSearchEngineEditDia
38@@ -63,6 +65,7 @@ class SettingsSearchEngineDialogElement
39 private searchEngine_: string; 39 private searchEngine_: string;
40 private keyword_: string; 40 private keyword_: string;
41 private queryUrl_: string; 41 private queryUrl_: string;
42+ private suggestionsUrl_: string; 42+ private suggestionsUrl_: string;
43 private dialogTitle_: string; 43 private dialogTitle_: string;
44 private keywordFieldLabel_: string;
44 private actionButtonText_: string; 45 private actionButtonText_: string;
45 private browserProxy_: SearchEnginesBrowserProxy = 46@@ -103,6 +106,7 @@ export class SettingsSearchEngineEditDia
46@@ -92,6 +95,7 @@ class SettingsSearchEngineDialogElement
47 this.searchEngine_ = this.model.name; 47 this.searchEngine_ = this.model.name;
48 this.keyword_ = this.model.keyword; 48 this.keyword_ = this.model.keyword;
49 this.queryUrl_ = this.model.url; 49 this.queryUrl_ = this.model.url;
@@ -51,7 +51,7 @@
51 } else { 51 } else {
52 this.dialogTitle_ = 52 this.dialogTitle_ =
53 loadTimeData.getString('searchEnginesAddSearchEngine'); 53 loadTimeData.getString('searchEnginesAddSearchEngine');
54@@ -127,8 +131,12 @@ class SettingsSearchEngineDialogElement 54@@ -142,8 +146,12 @@ export class SettingsSearchEngineEditDia
55 } 55 }
56 } 56 }
57 57
@@ -66,7 +66,7 @@
66 } 66 }
67 67
68 private cancel_() { 68 private cancel_() {
69@@ -137,7 +145,8 @@ class SettingsSearchEngineDialogElement 69@@ -152,7 +160,8 @@ export class SettingsSearchEngineEditDia
70 70
71 private onActionButtonTap_() { 71 private onActionButtonTap_() {
72 this.browserProxy_.searchEngineEditCompleted( 72 this.browserProxy_.searchEngineEditCompleted(
@@ -76,7 +76,7 @@
76 this.$.dialog.close(); 76 this.$.dialog.close();
77 } 77 }
78 78
79@@ -165,9 +174,11 @@ class SettingsSearchEngineDialogElement 79@@ -180,9 +189,11 @@ export class SettingsSearchEngineEditDia
80 80
81 private updateActionButtonState_() { 81 private updateActionButtonState_() {
82 const allValid = [ 82 const allValid = [
@@ -90,17 +90,17 @@
90 }); 90 });
91 this.$.actionButton.disabled = !allValid; 91 this.$.actionButton.disabled = !allValid;
92 } 92 }
93--- chrome/browser/resources/settings/search_engines_page/search_engines_browser_proxy.ts.orig 93--- a/chrome/browser/resources/settings/search_engines_page/search_engines_browser_proxy.ts
94+++ chrome/browser/resources/settings/search_engines_page/search_engines_browser_proxy.ts 94+++ b/chrome/browser/resources/settings/search_engines_page/search_engines_browser_proxy.ts
95@@ -30,6 +30,7 @@ export type SearchEngine = { 95@@ -31,6 +31,7 @@ export type SearchEngine = {
96 modelIndex: number,
97 name: string, 96 name: string,
97 shouldConfirmDeletion: boolean,
98 url: string, 98 url: string,
99+ suggestionsUrl: string, 99+ suggestionsUrl: string,
100 urlLocked: boolean, 100 urlLocked: boolean,
101 }; 101 };
102 102
103@@ -53,7 +54,7 @@ export interface SearchEnginesBrowserPro 103@@ -73,7 +74,7 @@ export interface SearchEnginesBrowserPro
104 searchEngineEditCancelled(): void; 104 searchEngineEditCancelled(): void;
105 105
106 searchEngineEditCompleted( 106 searchEngineEditCompleted(
@@ -109,7 +109,7 @@
109 109
110 getSearchEnginesList(): Promise<SearchEnginesInfo>; 110 getSearchEnginesList(): Promise<SearchEnginesInfo>;
111 111
112@@ -84,11 +85,12 @@ export class SearchEnginesBrowserProxyIm 112@@ -114,11 +115,12 @@ export class SearchEnginesBrowserProxyIm
113 } 113 }
114 114
115 searchEngineEditCompleted( 115 searchEngineEditCompleted(
@@ -123,8 +123,8 @@
123 ]); 123 ]);
124 } 124 }
125 125
126--- chrome/browser/ui/search_engines/edit_search_engine_controller.cc.orig 126--- a/chrome/browser/ui/search_engines/edit_search_engine_controller.cc
127+++ chrome/browser/ui/search_engines/edit_search_engine_controller.cc 127+++ b/chrome/browser/ui/search_engines/edit_search_engine_controller.cc
128@@ -67,6 +67,15 @@ bool EditSearchEngineController::IsURLVa 128@@ -67,6 +67,15 @@ bool EditSearchEngineController::IsURLVa
129 .is_valid(); 129 .is_valid();
130 } 130 }
@@ -165,8 +165,8 @@
165 } 165 }
166 } 166 }
167 167
168--- chrome/browser/ui/search_engines/edit_search_engine_controller.h.orig 168--- a/chrome/browser/ui/search_engines/edit_search_engine_controller.h
169+++ chrome/browser/ui/search_engines/edit_search_engine_controller.h 169+++ b/chrome/browser/ui/search_engines/edit_search_engine_controller.h
170@@ -23,7 +23,8 @@ class EditSearchEngineControllerDelegate 170@@ -23,7 +23,8 @@ class EditSearchEngineControllerDelegate
171 virtual void OnEditedKeyword(TemplateURL* template_url, 171 virtual void OnEditedKeyword(TemplateURL* template_url,
172 const std::u16string& title, 172 const std::u16string& title,
@@ -196,8 +196,8 @@
196 196
197 // Deletes an unused TemplateURL, if its add was cancelled and it's not 197 // Deletes an unused TemplateURL, if its add was cancelled and it's not
198 // already owned by the TemplateURLService. 198 // already owned by the TemplateURLService.
199--- chrome/browser/ui/search_engines/keyword_editor_controller.cc.orig 199--- a/chrome/browser/ui/search_engines/keyword_editor_controller.cc
200+++ chrome/browser/ui/search_engines/keyword_editor_controller.cc 200+++ b/chrome/browser/ui/search_engines/keyword_editor_controller.cc
201@@ -21,23 +21,27 @@ KeywordEditorController::KeywordEditorCo 201@@ -21,23 +21,27 @@ KeywordEditorController::KeywordEditorCo
202 KeywordEditorController::~KeywordEditorController() { 202 KeywordEditorController::~KeywordEditorController() {
203 } 203 }
@@ -249,8 +249,8 @@
249 249
250 base::RecordAction(UserMetricsAction("KeywordEditor_ModifiedKeyword")); 250 base::RecordAction(UserMetricsAction("KeywordEditor_ModifiedKeyword"));
251 } 251 }
252--- chrome/browser/ui/search_engines/keyword_editor_controller.h.orig 252--- a/chrome/browser/ui/search_engines/keyword_editor_controller.h
253+++ chrome/browser/ui/search_engines/keyword_editor_controller.h 253+++ b/chrome/browser/ui/search_engines/keyword_editor_controller.h
254@@ -29,14 +29,16 @@ class KeywordEditorController { 254@@ -29,14 +29,16 @@ class KeywordEditorController {
255 // model. Returns the index of the added URL. 255 // model. Returns the index of the added URL.
256 int AddTemplateURL(const std::u16string& title, 256 int AddTemplateURL(const std::u16string& title,
@@ -270,9 +270,9 @@
270 270
271 // Return true if the given |url| can be edited. 271 // Return true if the given |url| can be edited.
272 bool CanEdit(const TemplateURL* url) const; 272 bool CanEdit(const TemplateURL* url) const;
273--- chrome/browser/ui/search_engines/template_url_table_model.cc.orig 273--- a/chrome/browser/ui/search_engines/template_url_table_model.cc
274+++ chrome/browser/ui/search_engines/template_url_table_model.cc 274+++ b/chrome/browser/ui/search_engines/template_url_table_model.cc
275@@ -109,21 +109,25 @@ void TemplateURLTableModel::Remove(int i 275@@ -108,21 +108,25 @@ void TemplateURLTableModel::Remove(int i
276 void TemplateURLTableModel::Add(int index, 276 void TemplateURLTableModel::Add(int index,
277 const std::u16string& short_name, 277 const std::u16string& short_name,
278 const std::u16string& keyword, 278 const std::u16string& keyword,
@@ -303,7 +303,7 @@
303 DCHECK(index >= 0 && index <= RowCount()); 303 DCHECK(index >= 0 && index <= RowCount());
304 DCHECK(!url.empty()); 304 DCHECK(!url.empty());
305 TemplateURL* template_url = GetTemplateURL(index); 305 TemplateURL* template_url = GetTemplateURL(index);
306@@ -132,7 +136,8 @@ void TemplateURLTableModel::ModifyTempla 306@@ -131,7 +135,8 @@ void TemplateURLTableModel::ModifyTempla
307 DCHECK(template_url_service_->GetDefaultSearchProvider() != template_url || 307 DCHECK(template_url_service_->GetDefaultSearchProvider() != template_url ||
308 template_url->SupportsReplacement( 308 template_url->SupportsReplacement(
309 template_url_service_->search_terms_data())); 309 template_url_service_->search_terms_data()));
@@ -313,9 +313,9 @@
313 } 313 }
314 314
315 TemplateURL* TemplateURLTableModel::GetTemplateURL(int index) { 315 TemplateURL* TemplateURLTableModel::GetTemplateURL(int index) {
316--- chrome/browser/ui/search_engines/template_url_table_model.h.orig 316--- a/chrome/browser/ui/search_engines/template_url_table_model.h
317+++ chrome/browser/ui/search_engines/template_url_table_model.h 317+++ b/chrome/browser/ui/search_engines/template_url_table_model.h
318@@ -54,13 +54,15 @@ class TemplateURLTableModel : public ui: 318@@ -53,13 +53,15 @@ class TemplateURLTableModel : public ui:
319 void Add(int index, 319 void Add(int index,
320 const std::u16string& short_name, 320 const std::u16string& short_name,
321 const std::u16string& keyword, 321 const std::u16string& keyword,
@@ -333,8 +333,8 @@
333 333
334 // Reloads the icon at the specified index. 334 // Reloads the icon at the specified index.
335 void ReloadIcon(int index); 335 void ReloadIcon(int index);
336--- chrome/browser/ui/webui/settings/search_engines_handler.cc.orig 336--- a/chrome/browser/ui/webui/settings/search_engines_handler.cc
337+++ chrome/browser/ui/webui/settings/search_engines_handler.cc 337+++ b/chrome/browser/ui/webui/settings/search_engines_handler.cc
338@@ -37,6 +37,7 @@ namespace { 338@@ -37,6 +37,7 @@ namespace {
339 const char kSearchEngineField[] = "searchEngine"; 339 const char kSearchEngineField[] = "searchEngine";
340 const char kKeywordField[] = "keyword"; 340 const char kKeywordField[] = "keyword";
@@ -345,12 +345,12 @@
345 const int kNewSearchEngineIndex = -1; 345 const int kNewSearchEngineIndex = -1;
346@@ -212,6 +213,9 @@ SearchEnginesHandler::CreateDictionaryFo 346@@ -212,6 +213,9 @@ SearchEnginesHandler::CreateDictionaryFo
347 Profile* profile = Profile::FromWebUI(web_ui()); 347 Profile* profile = Profile::FromWebUI(web_ui());
348 dict->SetString( 348 dict->SetStringKey(
349 "url", template_url->url_ref().DisplayURL(UIThreadSearchTermsData())); 349 "url", template_url->url_ref().DisplayURL(UIThreadSearchTermsData()));
350+ dict->SetString("suggestionsUrl", 350+ dict->SetStringKey("suggestionsUrl",
351+ template_url->suggestions_url_ref().DisplayURL( 351+ template_url->suggestions_url_ref().DisplayURL(
352+ UIThreadSearchTermsData())); 352+ UIThreadSearchTermsData()));
353 dict->SetBoolean("urlLocked", template_url->prepopulate_id() > 0); 353 dict->SetBoolKey("urlLocked", template_url->prepopulate_id() > 0);
354 GURL icon_url = template_url->favicon_url(); 354 GURL icon_url = template_url->favicon_url();
355 if (icon_url.is_valid()) 355 if (icon_url.is_valid())
356@@ -325,12 +329,14 @@ void SearchEnginesHandler::HandleSearchE 356@@ -325,12 +329,14 @@ void SearchEnginesHandler::HandleSearchE
@@ -371,7 +371,7 @@
371 371
372 edit_controller_.reset(); 372 edit_controller_.reset();
373 } 373 }
374@@ -361,6 +367,8 @@ bool SearchEnginesHandler::CheckFieldVal 374@@ -358,6 +364,8 @@ bool SearchEnginesHandler::CheckFieldVal
375 is_valid = edit_controller_->IsKeywordValid(base::UTF8ToUTF16(field_value)); 375 is_valid = edit_controller_->IsKeywordValid(base::UTF8ToUTF16(field_value));
376 else if (field_name.compare(kQueryUrlField) == 0) 376 else if (field_name.compare(kQueryUrlField) == 0)
377 is_valid = edit_controller_->IsURLValid(field_value); 377 is_valid = edit_controller_->IsURLValid(field_value);
@@ -380,15 +380,11 @@
380 else 380 else
381 NOTREACHED(); 381 NOTREACHED();
382 382
383@@ -382,17 +390,21 @@ void SearchEnginesHandler::HandleSearchE 383@@ -379,14 +387,17 @@ void SearchEnginesHandler::HandleSearchE
384 std::string search_engine; 384 const std::string& search_engine = args[0].GetString();
385 std::string keyword; 385 const std::string& keyword = args[1].GetString();
386 std::string query_url; 386 const std::string& query_url = args[2].GetString();
387+ std::string suggestions_url; 387+ const std::string& suggestions_url = args[3].GetString();
388 CHECK(args->GetString(0, &search_engine));
389 CHECK(args->GetString(1, &keyword));
390 CHECK(args->GetString(2, &query_url));
391+ CHECK(args->GetString(3, &suggestions_url));
392 388
393 // Recheck validity. It's possible to get here with invalid input if e.g. the 389 // Recheck validity. It's possible to get here with invalid input if e.g. the
394 // user calls the right JS functions directly from the web inspector. 390 // user calls the right JS functions directly from the web inspector.
@@ -404,9 +400,9 @@
404 } 400 }
405 } 401 }
406 402
407--- chrome/browser/ui/webui/settings/search_engines_handler.h.orig 403--- a/chrome/browser/ui/webui/settings/search_engines_handler.h
408+++ chrome/browser/ui/webui/settings/search_engines_handler.h 404+++ b/chrome/browser/ui/webui/settings/search_engines_handler.h
409@@ -50,7 +50,8 @@ class SearchEnginesHandler : public Sett 405@@ -45,7 +45,8 @@ class SearchEnginesHandler : public Sett
410 void OnEditedKeyword(TemplateURL* template_url, 406 void OnEditedKeyword(TemplateURL* template_url,
411 const std::u16string& title, 407 const std::u16string& title,
412 const std::u16string& keyword, 408 const std::u16string& keyword,
@@ -416,9 +412,9 @@
416 412
417 // SettingsPageUIHandler implementation. 413 // SettingsPageUIHandler implementation.
418 void RegisterMessages() override; 414 void RegisterMessages() override;
419@@ -82,8 +83,8 @@ class SearchEnginesHandler : public Sett 415@@ -77,8 +78,8 @@ class SearchEnginesHandler : public Sett
420 // to WebUI. Called from WebUI. 416 // to WebUI. Called from WebUI.
421 void HandleValidateSearchEngineInput(const base::ListValue* args); 417 void HandleValidateSearchEngineInput(base::Value::ConstListView args);
422 418
423- // Checks whether the given user input field (searchEngine, keyword, queryUrl) 419- // Checks whether the given user input field (searchEngine, keyword, queryUrl)
424- // is populated with a valid value. 420- // is populated with a valid value.
@@ -427,9 +423,9 @@
427 bool CheckFieldValidity(const std::string& field_name, 423 bool CheckFieldValidity(const std::string& field_name,
428 const std::string& field_value); 424 const std::string& field_value);
429 425
430--- components/search_engines/template_url_service.cc.orig 426--- a/components/search_engines/template_url_service.cc
431+++ components/search_engines/template_url_service.cc 427+++ b/components/search_engines/template_url_service.cc
432@@ -641,7 +641,8 @@ void TemplateURLService::IncrementUsageC 428@@ -643,7 +643,8 @@ void TemplateURLService::IncrementUsageC
433 void TemplateURLService::ResetTemplateURL(TemplateURL* url, 429 void TemplateURLService::ResetTemplateURL(TemplateURL* url,
434 const std::u16string& title, 430 const std::u16string& title,
435 const std::u16string& keyword, 431 const std::u16string& keyword,
@@ -439,7 +435,7 @@
439 DCHECK(!IsCreatedByExtension(url)); 435 DCHECK(!IsCreatedByExtension(url));
440 DCHECK(!keyword.empty()); 436 DCHECK(!keyword.empty());
441 DCHECK(!search_url.empty()); 437 DCHECK(!search_url.empty());
442@@ -656,6 +657,7 @@ void TemplateURLService::ResetTemplateUR 438@@ -658,6 +659,7 @@ void TemplateURLService::ResetTemplateUR
443 data.safe_for_autoreplace = false; 439 data.safe_for_autoreplace = false;
444 data.last_modified = clock_->Now(); 440 data.last_modified = clock_->Now();
445 data.is_active = TemplateURLData::ActiveStatus::kTrue; 441 data.is_active = TemplateURLData::ActiveStatus::kTrue;
@@ -447,8 +443,8 @@
447 443
448 Update(url, TemplateURL(data)); 444 Update(url, TemplateURL(data));
449 } 445 }
450--- components/search_engines/template_url_service.h.orig 446--- a/components/search_engines/template_url_service.h
451+++ components/search_engines/template_url_service.h 447+++ b/components/search_engines/template_url_service.h
452@@ -253,7 +253,8 @@ class TemplateURLService : public WebDat 448@@ -253,7 +253,8 @@ class TemplateURLService : public WebDat
453 void ResetTemplateURL(TemplateURL* url, 449 void ResetTemplateURL(TemplateURL* url,
454 const std::u16string& title, 450 const std::u16string& title,
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/add-ungoogled-flag-headers.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/add-ungoogled-flag-headers.patch
index 4a78da1..3c6d4f8 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/add-ungoogled-flag-headers.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/add-ungoogled-flag-headers.patch
@@ -1,6 +1,6 @@
1--- chrome/browser/about_flags.cc.orig 1--- a/chrome/browser/about_flags.cc
2+++ chrome/browser/about_flags.cc 2+++ b/chrome/browser/about_flags.cc
3@@ -2728,7 +2728,13 @@ const FeatureEntry::FeatureVariation kWi 3@@ -2865,7 +2865,13 @@ constexpr FeatureEntry::FeatureVariation
4 // calculate and verify checksum. 4 // calculate and verify checksum.
5 // 5 //
6 // When adding a new choice, add it to the end of the list. 6 // When adding a new choice, add it to the end of the list.
@@ -15,7 +15,7 @@
15 // //tools/flags/generate_unexpire_flags.py. 15 // //tools/flags/generate_unexpire_flags.py.
16 #include "build/chromeos_buildflags.h" 16 #include "build/chromeos_buildflags.h"
17--- /dev/null 17--- /dev/null
18+++ chrome/browser/bromite_flag_choices.h 18+++ b/chrome/browser/bromite_flag_choices.h
19@@ -0,0 +1,7 @@ 19@@ -0,0 +1,7 @@
20+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved. 20+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved.
21+// Use of this source code is governed by a BSD-style license that can be 21+// Use of this source code is governed by a BSD-style license that can be
@@ -25,7 +25,7 @@
25+#define CHROME_BROWSER_BROMITE_FLAG_CHOICES_H_ 25+#define CHROME_BROWSER_BROMITE_FLAG_CHOICES_H_
26+#endif // CHROME_BROWSER_BROMITE_FLAG_CHOICES_H_ 26+#endif // CHROME_BROWSER_BROMITE_FLAG_CHOICES_H_
27--- /dev/null 27--- /dev/null
28+++ chrome/browser/bromite_flag_entries.h 28+++ b/chrome/browser/bromite_flag_entries.h
29@@ -0,0 +1,7 @@ 29@@ -0,0 +1,7 @@
30+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved. 30+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved.
31+// Use of this source code is governed by a BSD-style license that can be 31+// Use of this source code is governed by a BSD-style license that can be
@@ -35,7 +35,7 @@
35+#define CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_ 35+#define CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_
36+#endif // CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_ 36+#endif // CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_
37--- /dev/null 37--- /dev/null
38+++ chrome/browser/ungoogled_flag_choices.h 38+++ b/chrome/browser/ungoogled_flag_choices.h
39@@ -0,0 +1,7 @@ 39@@ -0,0 +1,7 @@
40+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved. 40+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved.
41+// Use of this source code is governed by a BSD-style license that can be 41+// Use of this source code is governed by a BSD-style license that can be
@@ -45,7 +45,7 @@
45+#define CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_ 45+#define CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_
46+#endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_ 46+#endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_
47--- /dev/null 47--- /dev/null
48+++ chrome/browser/ungoogled_flag_entries.h 48+++ b/chrome/browser/ungoogled_flag_entries.h
49@@ -0,0 +1,7 @@ 49@@ -0,0 +1,7 @@
50+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved. 50+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved.
51+// Use of this source code is governed by a BSD-style license that can be 51+// Use of this source code is governed by a BSD-style license that can be
@@ -55,7 +55,7 @@
55+#define CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ 55+#define CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
56+#endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ 56+#endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
57--- /dev/null 57--- /dev/null
58+++ chrome/browser/ungoogled_platform_flag_choices.h 58+++ b/chrome/browser/ungoogled_platform_flag_choices.h
59@@ -0,0 +1,7 @@ 59@@ -0,0 +1,7 @@
60+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved. 60+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved.
61+// Use of this source code is governed by a BSD-style license that can be 61+// Use of this source code is governed by a BSD-style license that can be
@@ -65,7 +65,7 @@
65+#define CHROME_BROWSER_UNGOOGLED_PLATFORM_FLAG_CHOICES_H_ 65+#define CHROME_BROWSER_UNGOOGLED_PLATFORM_FLAG_CHOICES_H_
66+#endif // CHROME_BROWSER_UNGOOGLED_PLATFORM_FLAG_CHOICES_H_ 66+#endif // CHROME_BROWSER_UNGOOGLED_PLATFORM_FLAG_CHOICES_H_
67--- /dev/null 67--- /dev/null
68+++ chrome/browser/ungoogled_platform_flag_entries.h 68+++ b/chrome/browser/ungoogled_platform_flag_entries.h
69@@ -0,0 +1,7 @@ 69@@ -0,0 +1,7 @@
70+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved. 70+// Copyright (c) 2020 The ungoogled-chromium Authors. All rights reserved.
71+// Use of this source code is governed by a BSD-style license that can be 71+// Use of this source code is governed by a BSD-style license that can be
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/disable-dial-repeating-discovery.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/disable-dial-repeating-discovery.patch
index fab5b74..058119f 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/disable-dial-repeating-discovery.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/disable-dial-repeating-discovery.patch
@@ -1,25 +1,25 @@
1# Disables the dial registry's repeating discovery timer 1# Disables the dial registry's repeating discovery timer
2# This caused unnecessary SSDP network spam 2# This caused unnecessary SSDP network spam
3 3
4--- chrome/browser/media/router/discovery/dial/dial_registry.cc.orig 4--- a/chrome/browser/media/router/discovery/dial/dial_registry.cc
5+++ chrome/browser/media/router/discovery/dial/dial_registry.cc 5+++ b/chrome/browser/media/router/discovery/dial/dial_registry.cc
6@@ -190,10 +190,6 @@ void DialRegistry::StartPeriodicDiscover 6@@ -150,10 +150,6 @@ void DialRegistry::StartPeriodicDiscover
7 return;
7 8
8 dial_ = CreateDialService(); 9 dial_ = CreateDialService();
9 dial_->AddObserver(this);
10- DoDiscovery(); 10- DoDiscovery();
11- repeating_timer_ = std::make_unique<base::RepeatingTimer>(); 11- repeating_timer_ = std::make_unique<base::RepeatingTimer>();
12- repeating_timer_->Start(FROM_HERE, refresh_interval_delta_, this, 12- repeating_timer_->Start(FROM_HERE, refresh_interval_delta_, this,
13- &DialRegistry::DoDiscovery); 13- &DialRegistry::DoDiscovery);
14 } 14 // Always send the current device list with the next discovery request. This
15 15 // may not be necessary, but is done to match previous behavior.
16 void DialRegistry::DoDiscovery() { 16 ++registry_generation_;
17@@ -207,8 +203,6 @@ void DialRegistry::StopPeriodicDiscovery 17@@ -170,8 +166,6 @@ void DialRegistry::StopPeriodicDiscovery
18 if (!dial_) 18 if (!dial_)
19 return; 19 return;
20 20
21- repeating_timer_->Stop(); 21- repeating_timer_->Stop();
22- repeating_timer_.reset(); 22- repeating_timer_.reset();
23 dial_->RemoveObserver(this);
24 ClearDialService(); 23 ClearDialService();
25 } 24 }
25
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/disable-download-quarantine.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/disable-download-quarantine.patch
index 2191bbe..44d5aca 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/disable-download-quarantine.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/disable-download-quarantine.patch
@@ -1,18 +1,18 @@
1# Disables file download quarantining 1# Disables file download quarantining
2 2
3--- components/download/internal/common/base_file.cc.orig 3--- a/components/download/internal/common/base_file.cc
4+++ components/download/internal/common/base_file.cc 4+++ b/components/download/internal/common/base_file.cc
5@@ -23,7 +23,6 @@ 5@@ -22,7 +22,6 @@
6 #include "components/download/public/common/download_interrupt_reasons_utils.h" 6 #include "components/download/public/common/download_interrupt_reasons_utils.h"
7 #include "components/download/public/common/download_item.h" 7 #include "components/download/public/common/download_item.h"
8 #include "components/download/public/common/download_stats.h" 8 #include "components/download/public/common/download_stats.h"
9-#include "components/services/quarantine/quarantine.h" 9-#include "components/services/quarantine/quarantine.h"
10 #include "crypto/secure_hash.h" 10 #include "crypto/secure_hash.h"
11 11
12 #if defined(OS_WIN) 12 #if BUILDFLAG(IS_ANDROID)
13@@ -535,105 +534,6 @@ DownloadInterruptReason BaseFile::Publis 13@@ -525,102 +524,6 @@ DownloadInterruptReason BaseFile::Publis
14 } 14 }
15 #endif // defined(OS_ANDROID) 15 #endif // BUILDFLAG(IS_ANDROID)
16 16
17-namespace { 17-namespace {
18- 18-
@@ -102,27 +102,24 @@
102- 102-
103-void BaseFile::OnQuarantineServiceError(const GURL& source_url, 103-void BaseFile::OnQuarantineServiceError(const GURL& source_url,
104- const GURL& referrer_url) { 104- const GURL& referrer_url) {
105-#if defined(OS_WIN) 105-#if BUILDFLAG(IS_WIN)
106- if (base::FeatureList::IsEnabled(quarantine::kOutOfProcessQuarantine)) { 106- OnFileQuarantined(/*connection_error=*/true,
107- OnFileQuarantined(/*connection_error=*/true, 107- quarantine::SetInternetZoneIdentifierDirectly(
108- quarantine::SetInternetZoneIdentifierDirectly( 108- full_path_, source_url, referrer_url));
109- full_path_, source_url, referrer_url)); 109-#else // !BUILDFLAG(IS_WIN)
110- return;
111- }
112-#endif // defined(OS_WIN)
113-
114- CHECK(false) << "In-process quarantine service should not have failed."; 110- CHECK(false) << "In-process quarantine service should not have failed.";
111-#endif // !BUILDFLAG(IS_WIN)
115-} 112-}
116 113
117 void BaseFile::AnnotateWithSourceInformation( 114 void BaseFile::AnnotateWithSourceInformation(
118 const std::string& client_guid, 115 const std::string& client_guid,
119@@ -641,32 +541,8 @@ void BaseFile::AnnotateWithSourceInforma 116@@ -628,32 +531,8 @@ void BaseFile::AnnotateWithSourceInforma
120 const GURL& referrer_url, 117 const GURL& referrer_url,
121 mojo::PendingRemote<quarantine::mojom::Quarantine> remote_quarantine, 118 mojo::PendingRemote<quarantine::mojom::Quarantine> remote_quarantine,
122 OnAnnotationDoneCallback on_annotation_done_callback) { 119 OnAnnotationDoneCallback on_annotation_done_callback) {
123- GURL authority_url = GetEffectiveAuthorityURL(source_url, referrer_url); 120- GURL authority_url = GetEffectiveAuthorityURL(source_url, referrer_url);
124- if (!remote_quarantine) { 121- if (!remote_quarantine) {
125-#if defined(OS_WIN) 122-#if BUILDFLAG(IS_WIN)
126- quarantine::mojom::QuarantineFileResult result = 123- quarantine::mojom::QuarantineFileResult result =
127- quarantine::SetInternetZoneIdentifierDirectly(full_path_, authority_url, 124- quarantine::SetInternetZoneIdentifierDirectly(full_path_, authority_url,
128- referrer_url); 125- referrer_url);
@@ -151,8 +148,8 @@
151 } 148 }
152 149
153 } // namespace download 150 } // namespace download
154--- content/browser/BUILD.gn.orig 151--- a/content/browser/BUILD.gn
155+++ content/browser/BUILD.gn 152+++ b/content/browser/BUILD.gn
156@@ -82,7 +82,6 @@ source_set("browser") { 153@@ -82,7 +82,6 @@ source_set("browser") {
157 "//components/permissions:permissions_common", 154 "//components/permissions:permissions_common",
158 "//components/power_scheduler", 155 "//components/power_scheduler",
@@ -161,17 +158,17 @@
161 "//components/services/storage", 158 "//components/services/storage",
162 "//components/services/storage:filesystem_proxy_factory", 159 "//components/services/storage:filesystem_proxy_factory",
163 "//components/services/storage/dom_storage:local_storage_proto", 160 "//components/services/storage/dom_storage:local_storage_proto",
164--- content/browser/file_system_access/safe_move_helper.cc.orig 161--- a/content/browser/file_system_access/safe_move_helper.cc
165+++ content/browser/file_system_access/safe_move_helper.cc 162+++ b/content/browser/file_system_access/safe_move_helper.cc
166@@ -12,7 +12,6 @@ 163@@ -13,7 +13,6 @@
167 #include "base/task/thread_pool.h"
168 #include "base/threading/sequenced_task_runner_handle.h" 164 #include "base/threading/sequenced_task_runner_handle.h"
169 #include "build/build_config.h" 165 #include "build/build_config.h"
166 #include "build/chromeos_buildflags.h"
170-#include "components/services/quarantine/quarantine.h" 167-#include "components/services/quarantine/quarantine.h"
171 #include "content/browser/file_system_access/file_system_access_error.h" 168 #include "content/browser/file_system_access/file_system_access_error.h"
172 #include "content/public/browser/content_browser_client.h" 169 #include "content/public/browser/content_browser_client.h"
173 #include "content/public/common/content_client.h" 170 #include "content/public/common/content_client.h"
174@@ -193,20 +192,8 @@ void SafeMoveHelper::DidAfterWriteCheck( 171@@ -194,20 +193,8 @@ void SafeMoveHelper::DidAfterWriteCheck(
175 // not exist anymore. In case of error, the source file URL will point to a 172 // not exist anymore. In case of error, the source file URL will point to a
176 // valid filesystem location. 173 // valid filesystem location.
177 base::OnceCallback<void(base::File::Error)> result_callback; 174 base::OnceCallback<void(base::File::Error)> result_callback;
@@ -190,9 +187,9 @@
190 weak_factory_.GetWeakPtr()); 187 weak_factory_.GetWeakPtr());
191- } 188- }
192 manager_->DoFileSystemOperation( 189 manager_->DoFileSystemOperation(
193 FROM_HERE, &storage::FileSystemOperationRunner::MoveFileLocal, 190 FROM_HERE, &storage::FileSystemOperationRunner::Move,
194 std::move(result_callback), source_url(), dest_url(), option_); 191 std::move(result_callback), source_url(), dest_url(), options_,
195@@ -220,7 +207,6 @@ void SafeMoveHelper::DidFileSkipQuaranti 192@@ -223,7 +210,6 @@ void SafeMoveHelper::DidFileSkipQuaranti
196 void SafeMoveHelper::DidFileDoQuarantine( 193 void SafeMoveHelper::DidFileDoQuarantine(
197 const storage::FileSystemURL& target_url, 194 const storage::FileSystemURL& target_url,
198 const GURL& referrer_url, 195 const GURL& referrer_url,
@@ -200,7 +197,7 @@
200 base::File::Error result) { 197 base::File::Error result) {
201 DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); 198 DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
202 199
203@@ -251,37 +237,9 @@ void SafeMoveHelper::DidFileDoQuarantine 200@@ -254,37 +240,9 @@ void SafeMoveHelper::DidFileDoQuarantine
204 referrer_url.is_valid() && referrer_url.SchemeIsHTTPOrHTTPS() 201 referrer_url.is_valid() && referrer_url.SchemeIsHTTPOrHTTPS()
205 ? referrer_url 202 ? referrer_url
206 : GURL(); 203 : GURL();
@@ -218,7 +215,7 @@
218- std::move(quarantine_remote)), 215- std::move(quarantine_remote)),
219- quarantine::mojom::QuarantineFileResult::ANNOTATION_FAILED)); 216- quarantine::mojom::QuarantineFileResult::ANNOTATION_FAILED));
220- } else { 217- } else {
221-#if defined(OS_WIN) 218-#if BUILDFLAG(IS_WIN)
222- base::ThreadPool::PostTaskAndReplyWithResult( 219- base::ThreadPool::PostTaskAndReplyWithResult(
223- FROM_HERE, {base::MayBlock()}, 220- FROM_HERE, {base::MayBlock()},
224- base::BindOnce(&quarantine::SetInternetZoneIdentifierDirectly, 221- base::BindOnce(&quarantine::SetInternetZoneIdentifierDirectly,
@@ -238,8 +235,8 @@
238 quarantine::mojom::QuarantineFileResult result) { 235 quarantine::mojom::QuarantineFileResult result) {
239 DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); 236 DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
240 237
241--- content/browser/file_system_access/safe_move_helper.h.orig 238--- a/content/browser/file_system_access/safe_move_helper.h
242+++ content/browser/file_system_access/safe_move_helper.h 239+++ b/content/browser/file_system_access/safe_move_helper.h
243@@ -58,10 +58,8 @@ class CONTENT_EXPORT SafeMoveHelper { 240@@ -58,10 +58,8 @@ class CONTENT_EXPORT SafeMoveHelper {
244 void DidFileDoQuarantine( 241 void DidFileDoQuarantine(
245 const storage::FileSystemURL& target_url, 242 const storage::FileSystemURL& target_url,
@@ -251,13 +248,13 @@
251 quarantine::mojom::QuarantineFileResult result); 248 quarantine::mojom::QuarantineFileResult result);
252 249
253 void ComputeHashForSourceFile(HashCallback callback); 250 void ComputeHashForSourceFile(HashCallback callback);
254--- content/browser/renderer_host/pepper/pepper_file_io_host.cc.orig 251--- a/content/browser/renderer_host/pepper/pepper_file_io_host.cc
255+++ content/browser/renderer_host/pepper/pepper_file_io_host.cc 252+++ b/content/browser/renderer_host/pepper/pepper_file_io_host.cc
256@@ -456,7 +456,7 @@ void PepperFileIOHost::OnLocalFileOpened 253@@ -456,7 +456,7 @@ void PepperFileIOHost::OnLocalFileOpened
257 ppapi::host::ReplyMessageContext reply_context, 254 ppapi::host::ReplyMessageContext reply_context,
258 const base::FilePath& path, 255 const base::FilePath& path,
259 base::File::Error error_code) { 256 base::File::Error error_code) {
260-#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD) 257-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
261+#if 0 258+#if 0
262 // Quarantining a file before its contents are available is only supported on 259 // Quarantining a file before its contents are available is only supported on
263 // Windows and Linux. 260 // Windows and Linux.
@@ -266,15 +263,15 @@
266 #endif 263 #endif
267 } 264 }
268 265
269-#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD) 266-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
270+#if 0 267+#if 0
271 void PepperFileIOHost::OnLocalFileQuarantined( 268 void PepperFileIOHost::OnLocalFileQuarantined(
272 ppapi::host::ReplyMessageContext reply_context, 269 ppapi::host::ReplyMessageContext reply_context,
273 const base::FilePath& path, 270 const base::FilePath& path,
274--- content/browser/renderer_host/pepper/pepper_file_io_host.h.orig 271--- a/content/browser/renderer_host/pepper/pepper_file_io_host.h
275+++ content/browser/renderer_host/pepper/pepper_file_io_host.h 272+++ b/content/browser/renderer_host/pepper/pepper_file_io_host.h
276@@ -13,7 +13,6 @@ 273@@ -13,7 +13,6 @@
277 #include "base/macros.h" 274 #include "base/memory/raw_ptr.h"
278 #include "base/memory/ref_counted.h" 275 #include "base/memory/ref_counted.h"
279 #include "base/memory/weak_ptr.h" 276 #include "base/memory/weak_ptr.h"
280-#include "components/services/quarantine/public/mojom/quarantine.mojom.h" 277-#include "components/services/quarantine/public/mojom/quarantine.mojom.h"
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/disable-formatting-in-omnibox.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/disable-formatting-in-omnibox.patch
index f9f6449..35e5fd5 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/disable-formatting-in-omnibox.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/disable-formatting-in-omnibox.patch
@@ -1,8 +1,8 @@
1# Disables omission of URL elements in Omnibox 1# Disables omission of URL elements in Omnibox
2 2
3--- components/url_formatter/url_formatter.cc.orig 3--- a/components/url_formatter/url_formatter.cc
4+++ components/url_formatter/url_formatter.cc 4+++ b/components/url_formatter/url_formatter.cc
5@@ -463,14 +463,14 @@ ComponentResult IDNToUnicodeOneComponent 5@@ -492,14 +492,14 @@ bool HasTwoViewSourceSchemes(base::Strin
6 } // namespace 6 } // namespace
7 7
8 const FormatUrlType kFormatUrlOmitNothing = 0; 8 const FormatUrlType kFormatUrlOmitNothing = 0;
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/disable-intranet-redirect-detector.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/disable-intranet-redirect-detector.patch
index f264b5d..bc2945b 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/disable-intranet-redirect-detector.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/disable-intranet-redirect-detector.patch
@@ -1,8 +1,8 @@
1# Disables the intranet redirect detector. It generates extra DNS requests and the functionality using this is disabled 1# Disables the intranet redirect detector. It generates extra DNS requests and the functionality using this is disabled
2# See this page for more information: https://mikewest.org/2012/02/chrome-connects-to-three-random-domains-at-startup 2# See this page for more information: https://mikewest.org/2012/02/chrome-connects-to-three-random-domains-at-startup
3 3
4--- chrome/browser/intranet_redirect_detector.cc.orig 4--- a/chrome/browser/intranet_redirect_detector.cc
5+++ chrome/browser/intranet_redirect_detector.cc 5+++ b/chrome/browser/intranet_redirect_detector.cc
6@@ -119,9 +119,7 @@ void IntranetRedirectDetector::FinishSle 6@@ -119,9 +119,7 @@ void IntranetRedirectDetector::FinishSle
7 simple_loaders_.clear(); 7 simple_loaders_.clear();
8 resulting_origins_.clear(); 8 resulting_origins_.clear();
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/disable-remote-optimization-guide.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/disable-remote-optimization-guide.patch
new file mode 100644
index 0000000..ea7e7a0
--- /dev/null
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/disable-remote-optimization-guide.patch
@@ -0,0 +1,11 @@
1--- a/components/optimization_guide/core/optimization_guide_features.cc
2+++ b/components/optimization_guide/core/optimization_guide_features.cc
3@@ -77,7 +77,7 @@ const base::Feature kOptimizationHintsFi
4
5 // Enables fetching from a remote Optimization Guide Service.
6 const base::Feature kRemoteOptimizationGuideFetching{
7- "OptimizationHintsFetching", base::FEATURE_ENABLED_BY_DEFAULT};
8+ "OptimizationHintsFetching", base::FEATURE_DISABLED_BY_DEFAULT};
9
10 const base::Feature kRemoteOptimizationGuideFetchingAnonymousDataConsent {
11 "OptimizationHintsFetchingAnonymousDataConsent",
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/disable-webgl-renderer-info.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/disable-webgl-renderer-info.patch
index 2896a43..7372bf3 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/disable-webgl-renderer-info.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/disable-webgl-renderer-info.patch
@@ -1,9 +1,9 @@
1# Return blank values for WebGLDebugRendererInfo to remove a potential data 1# Return blank values for WebGLDebugRendererInfo to remove a potential data
2# leak while preventing potential website breakage 2# leak while preventing potential website breakage
3 3
4--- third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc.orig 4--- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc
5+++ third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc 5+++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc
6@@ -3595,8 +3595,7 @@ ScriptValue WebGLRenderingContextBase::g 6@@ -3630,8 +3630,7 @@ ScriptValue WebGLRenderingContextBase::g
7 pname, IdentifiabilityBenignStringToken( 7 pname, IdentifiabilityBenignStringToken(
8 String(ContextGL()->GetString(GL_RENDERER)))); 8 String(ContextGL()->GetString(GL_RENDERER))));
9 } 9 }
@@ -13,7 +13,7 @@
13 } 13 }
14 SynthesizeGLError( 14 SynthesizeGLError(
15 GL_INVALID_ENUM, "getParameter", 15 GL_INVALID_ENUM, "getParameter",
16@@ -3610,8 +3609,7 @@ ScriptValue WebGLRenderingContextBase::g 16@@ -3645,8 +3644,7 @@ ScriptValue WebGLRenderingContextBase::g
17 pname, IdentifiabilityBenignStringToken( 17 pname, IdentifiabilityBenignStringToken(
18 String(ContextGL()->GetString(GL_VENDOR)))); 18 String(ContextGL()->GetString(GL_VENDOR))));
19 } 19 }
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/enable-default-prefetch-privacy-changes.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/enable-default-prefetch-privacy-changes.patch
index 4ea4498..0d2a41f 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/enable-default-prefetch-privacy-changes.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/enable-default-prefetch-privacy-changes.patch
@@ -1,8 +1,8 @@
1# Enable chrome://flags/#prefetch-privacy-changes by default 1# Enable chrome://flags/#prefetch-privacy-changes by default
2 2
3--- third_party/blink/common/features.cc.orig 3--- a/third_party/blink/common/features.cc
4+++ third_party/blink/common/features.cc 4+++ b/third_party/blink/common/features.cc
5@@ -416,7 +416,7 @@ const base::Feature kComputePressure{"Co 5@@ -468,7 +468,7 @@ const base::Feature kComputePressure{"Co
6 // Prefetch request properties are updated to be privacy-preserving. See 6 // Prefetch request properties are updated to be privacy-preserving. See
7 // crbug.com/988956. 7 // crbug.com/988956.
8 const base::Feature kPrefetchPrivacyChanges{"PrefetchPrivacyChanges", 8 const base::Feature kPrefetchPrivacyChanges{"PrefetchPrivacyChanges",
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/enable-menu-on-reload-button.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/enable-menu-on-reload-button.patch
index 5f87fc2..915b3be 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/enable-menu-on-reload-button.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/enable-menu-on-reload-button.patch
@@ -1,8 +1,8 @@
1# Add ability to always open dev context menu on reload button. 1# Add ability to always open dev context menu on reload button.
2 2
3--- chrome/browser/ui/views/toolbar/reload_button.cc.orig 3--- a/chrome/browser/ui/views/toolbar/reload_button.cc
4+++ chrome/browser/ui/views/toolbar/reload_button.cc 4+++ b/chrome/browser/ui/views/toolbar/reload_button.cc
5@@ -84,7 +84,7 @@ bool ReloadButton::GetMenuEnabled() cons 5@@ -83,7 +83,7 @@ bool ReloadButton::GetMenuEnabled() cons
6 } 6 }
7 7
8 void ReloadButton::SetMenuEnabled(bool enable) { 8 void ReloadButton::SetMenuEnabled(bool enable) {
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/enable-page-saving-on-more-pages.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/enable-page-saving-on-more-pages.patch
index a983beb..7d52d55 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/enable-page-saving-on-more-pages.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/enable-page-saving-on-more-pages.patch
@@ -1,8 +1,8 @@
1# Add more URL schemes allowed for saving 1# Add more URL schemes allowed for saving
2 2
3--- chrome/browser/ui/browser_commands.cc.orig 3--- a/chrome/browser/ui/browser_commands.cc
4+++ chrome/browser/ui/browser_commands.cc 4+++ b/chrome/browser/ui/browser_commands.cc
5@@ -440,11 +440,6 @@ int GetContentRestrictions(const Browser 5@@ -443,11 +443,6 @@ int GetContentRestrictions(const Browser
6 CoreTabHelper* core_tab_helper = 6 CoreTabHelper* core_tab_helper =
7 CoreTabHelper::FromWebContents(current_tab); 7 CoreTabHelper::FromWebContents(current_tab);
8 content_restrictions = core_tab_helper->content_restrictions(); 8 content_restrictions = core_tab_helper->content_restrictions();
@@ -14,8 +14,8 @@
14 } 14 }
15 return content_restrictions; 15 return content_restrictions;
16 } 16 }
17@@ -1342,8 +1337,7 @@ bool CanSavePage(const Browser* browser) 17@@ -1371,8 +1366,7 @@ bool CanSavePage(const Browser* browser)
18 prefs::kAllowFileSelectionDialogs)) { 18 DownloadPrefs::DownloadRestriction::ALL_FILES) {
19 return false; 19 return false;
20 } 20 }
21- return !browser->is_type_devtools() && 21- return !browser->is_type_devtools() &&
@@ -24,8 +24,8 @@
24 } 24 }
25 25
26 void Print(Browser* browser) { 26 void Print(Browser* browser) {
27--- components/offline_pages/core/offline_page_model.cc.orig 27--- a/components/offline_pages/core/offline_page_model.cc
28+++ components/offline_pages/core/offline_page_model.cc 28+++ b/components/offline_pages/core/offline_page_model.cc
29@@ -22,7 +22,7 @@ OfflinePageModel::SavePageParams::~SaveP 29@@ -22,7 +22,7 @@ OfflinePageModel::SavePageParams::~SaveP
30 30
31 // static 31 // static
@@ -35,9 +35,9 @@
35 } 35 }
36 36
37 OfflinePageModel::OfflinePageModel() = default; 37 OfflinePageModel::OfflinePageModel() = default;
38--- content/common/url_schemes.cc.orig 38--- a/content/common/url_schemes.cc
39+++ content/common/url_schemes.cc 39+++ b/content/common/url_schemes.cc
40@@ -23,6 +23,9 @@ namespace { 40@@ -23,13 +23,22 @@ namespace {
41 bool g_registered_url_schemes = false; 41 bool g_registered_url_schemes = false;
42 42
43 const char* const kDefaultSavableSchemes[] = { 43 const char* const kDefaultSavableSchemes[] = {
@@ -47,8 +47,7 @@
47 url::kHttpScheme, 47 url::kHttpScheme,
48 url::kHttpsScheme, 48 url::kHttpsScheme,
49 url::kFileScheme, 49 url::kFileScheme,
50@@ -30,7 +33,13 @@ const char* const kDefaultSavableSchemes 50 url::kFileSystemScheme,
51 url::kFtpScheme,
52 kChromeDevToolsScheme, 51 kChromeDevToolsScheme,
53 kChromeUIScheme, 52 kChromeUIScheme,
54- url::kDataScheme 53- url::kDataScheme
@@ -62,9 +61,9 @@
62 }; 61 };
63 62
64 // These lists are lazily initialized below and are leaked on shutdown to 63 // These lists are lazily initialized below and are leaked on shutdown to
65--- content/public/common/url_utils.cc.orig 64--- a/content/public/common/url_utils.cc
66+++ content/public/common/url_utils.cc 65+++ b/content/public/common/url_utils.cc
67@@ -26,11 +26,7 @@ bool HasWebUIScheme(const GURL& url) { 66@@ -27,11 +27,7 @@ bool HasWebUIScheme(const GURL& url) {
68 } 67 }
69 68
70 bool IsSavableURL(const GURL& url) { 69 bool IsSavableURL(const GURL& url) {
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/enable-paste-and-go-new-tab-button.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/enable-paste-and-go-new-tab-button.patch
index 6205679..fa93e8a 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/enable-paste-and-go-new-tab-button.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/enable-paste-and-go-new-tab-button.patch
@@ -1,19 +1,19 @@
1--- chrome/browser/ui/views/tabs/new_tab_button.cc.orig 1--- a/chrome/browser/ui/views/tabs/new_tab_button.cc
2+++ chrome/browser/ui/views/tabs/new_tab_button.cc 2+++ b/chrome/browser/ui/views/tabs/new_tab_button.cc
3@@ -58,10 +58,8 @@ NewTabButton::NewTabButton(TabStrip* tab 3@@ -59,10 +59,8 @@ NewTabButton::NewTabButton(TabStrip* tab
4 SetAnimateOnStateChange(true); 4 SetAnimateOnStateChange(true);
5 // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch 5 // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch
6 // of lacros-chrome is complete. 6 // of lacros-chrome is complete.
7-#if defined(OS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || defined(OS_BSD) 7-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)
8 SetTriggerableEventFlags(GetTriggerableEventFlags() | 8 SetTriggerableEventFlags(GetTriggerableEventFlags() |
9 ui::EF_MIDDLE_MOUSE_BUTTON); 9 ui::EF_MIDDLE_MOUSE_BUTTON);
10-#endif 10-#endif
11 11
12 ink_drop_container_ = 12 ink_drop_container_ =
13 AddChildView(std::make_unique<views::InkDropContainerView>()); 13 AddChildView(std::make_unique<views::InkDropContainerView>());
14--- chrome/browser/ui/views/tabs/tab_strip.cc.orig 14--- a/chrome/browser/ui/views/tabs/tab_strip.cc
15+++ chrome/browser/ui/views/tabs/tab_strip.cc 15+++ b/chrome/browser/ui/views/tabs/tab_strip.cc
16@@ -2680,8 +2680,6 @@ void TabStrip::NewTabButtonPressed(const 16@@ -2315,8 +2315,6 @@ void TabStrip::NewTabButtonPressed(const
17 17
18 const ui::MouseEvent& mouse = static_cast<const ui::MouseEvent&>(event); 18 const ui::MouseEvent& mouse = static_cast<const ui::MouseEvent&>(event);
19 if (mouse.IsOnlyMiddleMouseButton()) { 19 if (mouse.IsOnlyMiddleMouseButton()) {
@@ -22,7 +22,7 @@
22 ui::Clipboard* clipboard = ui::Clipboard::GetForCurrentThread(); 22 ui::Clipboard* clipboard = ui::Clipboard::GetForCurrentThread();
23 CHECK(clipboard); 23 CHECK(clipboard);
24 std::u16string clipboard_text; 24 std::u16string clipboard_text;
25@@ -2689,7 +2687,6 @@ void TabStrip::NewTabButtonPressed(const 25@@ -2324,7 +2322,6 @@ void TabStrip::NewTabButtonPressed(const
26 /* data_dst = */ nullptr, &clipboard_text); 26 /* data_dst = */ nullptr, &clipboard_text);
27 if (!clipboard_text.empty()) 27 if (!clipboard_text.empty())
28 controller_->CreateNewTabWithLocation(clipboard_text); 28 controller_->CreateNewTabWithLocation(clipboard_text);
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/fix-building-without-mdns-and-service-discovery.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/fix-building-without-mdns-and-service-discovery.patch
index 6fb35ec..2b0ee0b 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/fix-building-without-mdns-and-service-discovery.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/fix-building-without-mdns-and-service-discovery.patch
@@ -1,7 +1,7 @@
1# Fix building with enable_service_discovery=false and enable_mds=false 1# Fix building with enable_service_discovery=false and enable_mds=false
2 2
3--- chrome/browser/media/router/discovery/mdns/dns_sd_device_lister.cc.orig 3--- a/chrome/browser/media/router/discovery/mdns/dns_sd_device_lister.cc
4+++ chrome/browser/media/router/discovery/mdns/dns_sd_device_lister.cc 4+++ b/chrome/browser/media/router/discovery/mdns/dns_sd_device_lister.cc
5@@ -40,37 +40,22 @@ DnsSdDeviceLister::DnsSdDeviceLister( 5@@ -40,37 +40,22 @@ DnsSdDeviceLister::DnsSdDeviceLister(
6 DnsSdDeviceLister::~DnsSdDeviceLister() {} 6 DnsSdDeviceLister::~DnsSdDeviceLister() {}
7 7
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/fix-distilled-icons.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/fix-distilled-icons.patch
index 80a9618..3cd56cb 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/fix-distilled-icons.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/fix-distilled-icons.patch
@@ -1,5 +1,5 @@
1--- components/dom_distiller/core/css/distilledpage.css.orig 1--- a/components/dom_distiller/core/css/distilledpage.css
2+++ components/dom_distiller/core/css/distilledpage.css 2+++ b/components/dom_distiller/core/css/distilledpage.css
3@@ -28,6 +28,11 @@ 3@@ -28,6 +28,11 @@
4 box-sizing: border-box; 4 box-sizing: border-box;
5 } 5 }
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/keep-expired-flags.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/keep-expired-flags.patch
index 9f9df17..b6dbaad 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/keep-expired-flags.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/keep-expired-flags.patch
@@ -1,5 +1,5 @@
1--- components/flags_ui/flags_state.cc.orig 1--- a/components/flags_ui/flags_state.cc
2+++ components/flags_ui/flags_state.cc 2+++ b/components/flags_ui/flags_state.cc
3@@ -22,6 +22,7 @@ 3@@ -22,6 +22,7 @@
4 #include "base/values.h" 4 #include "base/values.h"
5 #include "build/build_config.h" 5 #include "build/build_config.h"
@@ -8,7 +8,7 @@
8 #include "components/flags_ui/feature_entry.h" 8 #include "components/flags_ui/feature_entry.h"
9 #include "components/flags_ui/flags_storage.h" 9 #include "components/flags_ui/flags_storage.h"
10 #include "components/flags_ui/flags_ui_switches.h" 10 #include "components/flags_ui/flags_ui_switches.h"
11@@ -577,14 +578,18 @@ void FlagsState::GetFlagFeatureEntries( 11@@ -555,14 +556,18 @@ void FlagsState::GetFlagFeatureEntries(
12 int current_platform = GetCurrentPlatform(); 12 int current_platform = GetCurrentPlatform();
13 13
14 for (const FeatureEntry& entry : feature_entries_) { 14 for (const FeatureEntry& entry : feature_entries_) {
@@ -28,7 +28,7 @@
28 28
29 base::Value supported_platforms(base::Value::Type::LIST); 29 base::Value supported_platforms(base::Value::Type::LIST);
30 AddOsStrings(entry.supported_platforms, &supported_platforms); 30 AddOsStrings(entry.supported_platforms, &supported_platforms);
31@@ -901,6 +906,7 @@ bool FlagsState::IsSupportedFeature(cons 31@@ -881,6 +886,7 @@ bool FlagsState::IsSupportedFeature(cons
32 if (!entry.InternalNameMatches(name)) 32 if (!entry.InternalNameMatches(name))
33 continue; 33 continue;
34 if (delegate_ && delegate_->ShouldExcludeFlag(storage, entry)) 34 if (delegate_ && delegate_->ShouldExcludeFlag(storage, entry))
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/prepopulated-search-engines.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/prepopulated-search-engines.patch
index 58e1587..ef49d8b 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/prepopulated-search-engines.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/prepopulated-search-engines.patch
@@ -6,9 +6,9 @@
6# Only snyc the prepoulated search engines when initializing the database. 6# Only snyc the prepoulated search engines when initializing the database.
7# Prevents search engines from being overridden in future updates. 7# Prevents search engines from being overridden in future updates.
8# 8#
9--- components/search_engines/template_url_prepopulate_data.cc.orig 9--- a/components/search_engines/template_url_prepopulate_data.cc
10+++ components/search_engines/template_url_prepopulate_data.cc 10+++ b/components/search_engines/template_url_prepopulate_data.cc
11@@ -1325,6 +1325,9 @@ std::vector<std::unique_ptr<TemplateURLD 11@@ -1331,6 +1331,9 @@ std::vector<std::unique_ptr<TemplateURLD
12 std::vector<std::unique_ptr<TemplateURLData>> t_urls; 12 std::vector<std::unique_ptr<TemplateURLData>> t_urls;
13 for (size_t i = 0; i < num_engines; ++i) 13 for (size_t i = 0; i < num_engines; ++i)
14 t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(*engines[i])); 14 t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(*engines[i]));
@@ -18,8 +18,8 @@
18 return t_urls; 18 return t_urls;
19 } 19 }
20 20
21--- components/search_engines/util.cc.orig 21--- a/components/search_engines/util.cc
22+++ components/search_engines/util.cc 22+++ b/components/search_engines/util.cc
23@@ -396,7 +396,7 @@ void GetSearchProvidersUsingLoadedEngine 23@@ -396,7 +396,7 @@ void GetSearchProvidersUsingLoadedEngine
24 24
25 const int prepopulate_resource_keyword_version = 25 const int prepopulate_resource_keyword_version =
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/remove-disable-setuid-sandbox-as-bad-flag.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/remove-disable-setuid-sandbox-as-bad-flag.patch
index 55ddd53..4ff54f2 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/remove-disable-setuid-sandbox-as-bad-flag.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/remove-disable-setuid-sandbox-as-bad-flag.patch
@@ -1,12 +1,12 @@
1# Remove the "--disable-setuid-sandbox" command line flag as a bad flag 1# Remove the "--disable-setuid-sandbox" command line flag as a bad flag
2 2
3--- chrome/browser/ui/startup/bad_flags_prompt.cc.orig 3--- a/chrome/browser/ui/startup/bad_flags_prompt.cc
4+++ chrome/browser/ui/startup/bad_flags_prompt.cc 4+++ b/chrome/browser/ui/startup/bad_flags_prompt.cc
5@@ -61,7 +61,6 @@ static const char* kBadFlags[] = { 5@@ -59,7 +59,6 @@ static const char* kBadFlags[] = {
6 // These flags disable sandbox-related security. 6 // These flags disable sandbox-related security.
7 sandbox::policy::switches::kDisableGpuSandbox, 7 sandbox::policy::switches::kDisableGpuSandbox,
8 sandbox::policy::switches::kDisableSeccompFilterSandbox, 8 sandbox::policy::switches::kDisableSeccompFilterSandbox,
9- sandbox::policy::switches::kDisableSetuidSandbox, 9- sandbox::policy::switches::kDisableSetuidSandbox,
10 sandbox::policy::switches::kNoSandbox, 10 sandbox::policy::switches::kNoSandbox,
11 #if defined(OS_WIN) 11 #if BUILDFLAG(IS_WIN)
12 sandbox::policy::switches::kAllowThirdPartyModules, 12 sandbox::policy::switches::kAllowThirdPartyModules,
diff --git a/www/chromium-uc/patches/extra/ungoogled-chromium/remove-uneeded-ui.patch b/www/chromium-uc/patches/extra/ungoogled-chromium/remove-uneeded-ui.patch
index cbb86fd..90b3f4a 100644
--- a/www/chromium-uc/patches/extra/ungoogled-chromium/remove-uneeded-ui.patch
+++ b/www/chromium-uc/patches/extra/ungoogled-chromium/remove-uneeded-ui.patch
@@ -18,8 +18,8 @@
18# unneeded elements from the profile menu 18# unneeded elements from the profile menu
19# the 'Learn more' link on crashed tabs 19# the 'Learn more' link on crashed tabs
20 20
21--- chrome/browser/resources/extensions/item_list.html.orig 21--- a/chrome/browser/resources/extensions/item_list.html
22+++ chrome/browser/resources/extensions/item_list.html 22+++ b/chrome/browser/resources/extensions/item_list.html
23@@ -80,13 +80,6 @@ 23@@ -80,13 +80,6 @@
24 <div id="container"> 24 <div id="container">
25 <managed-footnote hidden="[[filter]]"></managed-footnote> 25 <managed-footnote hidden="[[filter]]"></managed-footnote>
@@ -34,9 +34,9 @@
34 <div id="no-search-results" class="empty-list-message" 34 <div id="no-search-results" class="empty-list-message"
35 hidden$="[[!shouldShowEmptySearchMessage_( 35 hidden$="[[!shouldShowEmptySearchMessage_(
36 shownAppsCount_, shownExtensionsCount_, apps, extensions)]]"> 36 shownAppsCount_, shownExtensionsCount_, apps, extensions)]]">
37--- chrome/browser/resources/extensions/sidebar.html.orig 37--- a/chrome/browser/resources/extensions/sidebar.html
38+++ chrome/browser/resources/extensions/sidebar.html 38+++ b/chrome/browser/resources/extensions/sidebar.html
39@@ -69,12 +69,3 @@ 39@@ -76,12 +76,3 @@
40 <paper-ripple></paper-ripple> 40 <paper-ripple></paper-ripple>
41 </a> 41 </a>
42 </iron-selector> 42 </iron-selector>
@@ -49,9 +49,9 @@
49- <paper-ripple></paper-ripple> 49- <paper-ripple></paper-ripple>
50- </a> 50- </a>
51-</div> 51-</div>
52--- chrome/browser/resources/history/side_bar.html.orig 52--- a/chrome/browser/resources/history/side_bar.html
53+++ chrome/browser/resources/history/side_bar.html 53+++ b/chrome/browser/resources/history/side_bar.html
54@@ -128,13 +128,6 @@ 54@@ -120,13 +120,6 @@
55 $i18n{historyMenuItem} 55 $i18n{historyMenuItem}
56 <paper-ripple></paper-ripple> 56 <paper-ripple></paper-ripple>
57 </a> 57 </a>
@@ -62,11 +62,11 @@
62- $i18n{openTabsMenuItem} 62- $i18n{openTabsMenuItem}
63- <paper-ripple></paper-ripple> 63- <paper-ripple></paper-ripple>
64- </a> 64- </a>
65 <div class="separator"></div>
66 <a role="menuitem" id="clear-browsing-data" 65 <a role="menuitem" id="clear-browsing-data"
67 class="cr-nav-menu-item" 66 class="cr-nav-menu-item"
68--- chrome/browser/resources/ntp4/incognito_tab.html.orig 67 href="chrome://settings/clearBrowserData"
69+++ chrome/browser/resources/ntp4/incognito_tab.html 68--- a/chrome/browser/resources/ntp4/incognito_tab.html
69+++ b/chrome/browser/resources/ntp4/incognito_tab.html
70@@ -24,8 +24,6 @@ document.querySelector('#incognitothemec 70@@ -24,8 +24,6 @@ document.querySelector('#incognitothemec
71 <h1>$i18n{incognitoTabHeading}</h1> 71 <h1>$i18n{incognitoTabHeading}</h1>
72 <p id="subtitle"> 72 <p id="subtitle">
@@ -76,8 +76,8 @@
76 </p> 76 </p>
77 <div id="bulletpoints-wrapper"> 77 <div id="bulletpoints-wrapper">
78 <div class="bulletpoints first">$i18nRaw{incognitoTabFeatures}</div> 78 <div class="bulletpoints first">$i18nRaw{incognitoTabFeatures}</div>
79--- chrome/browser/resources/settings/a11y_page/a11y_page.html.orig 79--- a/chrome/browser/resources/settings/a11y_page/a11y_page.html
80+++ chrome/browser/resources/settings/a11y_page/a11y_page.html 80+++ b/chrome/browser/resources/settings/a11y_page/a11y_page.html
81@@ -21,7 +21,7 @@ 81@@ -21,7 +21,7 @@
82 external$="[[captionSettingsOpensExternally_]]"> 82 external$="[[captionSettingsOpensExternally_]]">
83 </cr-link-row> 83 </cr-link-row>
@@ -88,9 +88,9 @@
88 label="$i18n{captionsTitle}" 88 label="$i18n{captionsTitle}"
89 on-click="onCaptionsClick_" 89 on-click="onCaptionsClick_"
90@@ -51,10 +51,6 @@ 90@@ -51,10 +51,6 @@
91 label="$i18n{accessibleImageLabelsTitle}"
91 sub-label="$i18n{accessibleImageLabelsSubtitle}"> 92 sub-label="$i18n{accessibleImageLabelsSubtitle}">
92 </settings-toggle-button> 93 </settings-toggle-button>
93 </if>
94- <cr-link-row class="hr" label="$i18n{moreFeaturesLink}" 94- <cr-link-row class="hr" label="$i18n{moreFeaturesLink}"
95- on-click="onMoreFeaturesLinkClick_" sub-label="$i18n{a11yWebStore}" 95- on-click="onMoreFeaturesLinkClick_" sub-label="$i18n{a11yWebStore}"
96- external> 96- external>
@@ -98,8 +98,8 @@
98 </div> 98 </div>
99 <if expr="not chromeos"> 99 <if expr="not chromeos">
100 <template is="dom-if" if="[[!captionSettingsOpensExternally_]]"> 100 <template is="dom-if" if="[[!captionSettingsOpensExternally_]]">
101--- chrome/browser/resources/settings/about_page/about_page.html.orig 101--- a/chrome/browser/resources/settings/about_page/about_page.html
102+++ chrome/browser/resources/settings/about_page/about_page.html 102+++ b/chrome/browser/resources/settings/about_page/about_page.html
103@@ -131,8 +131,6 @@ 103@@ -131,8 +131,6 @@
104 </div> 104 </div>
105 </template> 105 </template>
@@ -109,8 +109,8 @@
109 <if expr="_google_chrome"> 109 <if expr="_google_chrome">
110 <cr-link-row class="hr" id="reportIssue" on-click="onReportIssueTap_" 110 <cr-link-row class="hr" id="reportIssue" on-click="onReportIssueTap_"
111 hidden="[[!prefs.feedback_allowed.value]]" 111 hidden="[[!prefs.feedback_allowed.value]]"
112--- chrome/browser/resources/settings/appearance_page/appearance_page.html.orig 112--- a/chrome/browser/resources/settings/appearance_page/appearance_page.html
113+++ chrome/browser/resources/settings/appearance_page/appearance_page.html 113+++ b/chrome/browser/resources/settings/appearance_page/appearance_page.html
114@@ -22,11 +22,11 @@ 114@@ -22,11 +22,11 @@
115 <settings-animated-pages id="pages" section="appearance" 115 <settings-animated-pages id="pages" section="appearance"
116 focus-config="[[focusConfig_]]"> 116 focus-config="[[focusConfig_]]">
@@ -124,20 +124,20 @@
124+ <div class="flex cr-padded-text"> 124+ <div class="flex cr-padded-text">
125+ <div>$i18n{themes}</div><div class="secondary">[[themeSublabel_]]</div> 125+ <div>$i18n{themes}</div><div class="secondary">[[themeSublabel_]]</div>
126+ </div> 126+ </div>
127 <if expr="not is_posix or chromeos or lacros"> 127 <if expr="not is_linux or chromeos_ash or chromeos_lacros">
128 <template is="dom-if" if="[[prefs.extensions.theme.id.value]]"> 128 <template is="dom-if" if="[[prefs.extensions.theme.id.value]]">
129 <div class="separator"></div> 129 <div class="separator"></div>
130--- chrome/browser/resources/settings/autofill_page/passwords_section.html.orig 130--- a/chrome/browser/resources/settings/autofill_page/passwords_section.html
131+++ chrome/browser/resources/settings/autofill_page/passwords_section.html 131+++ b/chrome/browser/resources/settings/autofill_page/passwords_section.html
132@@ -107,6 +107,7 @@ 132@@ -102,6 +102,7 @@
133 label="$i18n{trustedVaultOptInLabel}" 133 label="$i18n{passwordsAutosigninLabel}"
134 sub-label="$i18n{trustedVaultOptInSubLabel}"> 134 sub-label="$i18n{passwordsAutosigninDescription}">
135 </cr-link-row> 135 </settings-toggle-button>
136+<if expr="false"> 136+<if expr="false">
137 <div id="checkPasswordsBannerContainer" class="cr-row" 137 <div id="checkPasswordsBannerContainer" class="cr-row"
138 hidden$="[[!shouldShowBanner_]]"> 138 hidden$="[[!shouldShowBanner_]]">
139 <picture> 139 <picture>
140@@ -155,6 +156,7 @@ 140@@ -156,6 +157,7 @@
141 <!-- This div lays out the link correctly, relative to the text. --> 141 <!-- This div lays out the link correctly, relative to the text. -->
142 <div class="cr-padded-text">$i18nRaw{managePasswordsLabel}</div> 142 <div class="cr-padded-text">$i18nRaw{managePasswordsLabel}</div>
143 </div> 143 </div>
@@ -145,58 +145,60 @@
145 <div class="cr-row first"> 145 <div class="cr-row first">
146 <h2 id="savedPasswordsHeading" class="flex"> 146 <h2 id="savedPasswordsHeading" class="flex">
147 $i18n{savedPasswordsHeading} 147 $i18n{savedPasswordsHeading}
148--- chrome/browser/resources/settings/autofill_page/payments_section.html.orig 148--- a/chrome/browser/resources/settings/autofill_page/payments_section.html
149+++ chrome/browser/resources/settings/autofill_page/payments_section.html 149+++ b/chrome/browser/resources/settings/autofill_page/payments_section.html
150@@ -53,11 +53,6 @@ 150@@ -53,11 +53,6 @@
151 </div> 151 </div>
152 </template> 152 </template>
153 153
154- <div id="manageLink" class="cr-row first"> 154-<div id="manageLink" class="cr-row first">
155- <!-- This span lays out the link correctly, relative to the text. --> 155- <!-- This span lays out the link correctly, relative to the text. -->
156- <div class="cr-padded-text">$i18nRaw{manageCreditCardsLabel}</div> 156- <div class="cr-padded-text">$i18nRaw{manageCreditCardsLabel}</div>
157- </div> 157-</div>
158- 158-
159 <div class="cr-row continuation"> 159 <div class="cr-row continuation">
160 <h2 class="flex">$i18n{creditCards}</h2> 160 <h2 class="flex">$i18n{creditCards}</h2>
161 <cr-button id="addCreditCard" class="header-aligned-button" 161 <cr-button id="addCreditCard" class="header-aligned-button"
162--- chrome/browser/resources/settings/basic_page/basic_page.html.orig 162--- a/chrome/browser/resources/settings/basic_page/basic_page.html
163+++ chrome/browser/resources/settings/basic_page/basic_page.html 163+++ b/chrome/browser/resources/settings/basic_page/basic_page.html
164@@ -102,7 +102,7 @@ 164@@ -59,7 +59,7 @@
165 <settings-privacy-review-promo></settings-privacy-review-promo> 165 prefs="{{prefs}}">
166 </settings-section> 166 </settings-privacy-guide-promo>
167 </template> 167 </settings-section>
168- <template is="dom-if" if="[[showPage_(pageVisibility.safetyCheck)]]" 168- <template is="dom-if" if="[[showPage_(pageVisibility.safetyCheck)]]"
169+ <template is="dom-if" if="[[false]]" 169+ <template is="dom-if" if="[[false]]"
170 restamp> 170 restamp>
171 <settings-section page-title="$i18n{safetyCheckSectionTitle}" 171 <settings-section page-title="$i18n{safetyCheckSectionTitle}"
172 section="safetyCheck" nest-under-section="privacy" 172 section="safetyCheck" nest-under-section="privacy"
173--- chrome/browser/resources/settings/privacy_page/personalization_options.html.orig 173--- a/chrome/browser/resources/settings/privacy_page/personalization_options.html
174+++ chrome/browser/resources/settings/privacy_page/personalization_options.html 174+++ b/chrome/browser/resources/settings/privacy_page/personalization_options.html
175@@ -8,7 +8,7 @@ 175@@ -13,7 +13,7 @@
176 border-top: none; 176 padding-inline-start: 0;
177 } 177 }
178 </style> 178 </style>
179-<if expr="not chromeos"> 179-<if expr="not chromeos and not lacros">
180+<if expr="false"> 180+<if expr="false">
181 <!-- Signout is not supported yet on lacros, https://crbug.com/1217645 -->
181 <settings-toggle-button id="signinAllowedToggle" 182 <settings-toggle-button id="signinAllowedToggle"
182 class="hr" 183 class="hr"
183 hidden="[[!signinAvailable_]]" 184@@ -70,14 +70,6 @@
184@@ -51,12 +51,6 @@
185 </settings-toggle-button> 185 </settings-toggle-button>
186 </if><!-- not chromeos --> 186 </if><!-- not chromeos -->
187 </if><!-- _google_chrome --> 187 </if><!-- _google_chrome -->
188- <settings-toggle-button id="urlCollectionToggle" 188- <template is="dom-if" if="[[showUrlCollectionToggle_()]]" restamp>
189- class="hr" 189- <settings-toggle-button id="urlCollectionToggle"
190- pref="{{prefs.url_keyed_anonymized_data_collection.enabled}}" 190- class="hr"
191- label="$i18n{urlKeyedAnonymizedDataCollection}" 191- pref="{{prefs.url_keyed_anonymized_data_collection.enabled}}"
192- sub-label="$i18n{urlKeyedAnonymizedDataCollectionDesc}"> 192- label="$i18n{urlKeyedAnonymizedDataCollection}"
193- </settings-toggle-button> 193- sub-label="$i18n{urlKeyedAnonymizedDataCollectionDesc}">
194- </settings-toggle-button>
195- </template>
194 <if expr="_google_chrome"> 196 <if expr="_google_chrome">
195 <settings-toggle-button id="spellCheckControl" 197 <settings-toggle-button id="spellCheckControl"
196 class="hr" 198 class="hr"
197--- chrome/browser/resources/settings/privacy_page/security_page.html.orig 199--- a/chrome/browser/resources/settings/privacy_page/security_page.html
198+++ chrome/browser/resources/settings/privacy_page/security_page.html 200+++ b/chrome/browser/resources/settings/privacy_page/security_page.html
199@@ -96,10 +96,3 @@ 201@@ -107,10 +107,3 @@
200 sub-label="$i18n{manageCertificatesDescription}" 202 sub-label="$i18n{manageCertificatesDescription}"
201 on-click="onManageCertificatesClick_"></cr-link-row> 203 on-click="onManageCertificatesClick_"></cr-link-row>
202 </if> 204 </if>
@@ -207,8 +209,8 @@
207- on-click="onAdvancedProtectionProgramLinkClick_" 209- on-click="onAdvancedProtectionProgramLinkClick_"
208- external> 210- external>
209- </cr-link-row> 211- </cr-link-row>
210--- chrome/browser/resources/settings/search_page/search_page.html.orig 212--- a/chrome/browser/resources/settings/search_page/search_page.html
211+++ chrome/browser/resources/settings/search_page/search_page.html 213+++ b/chrome/browser/resources/settings/search_page/search_page.html
212@@ -12,10 +12,6 @@ 214@@ -12,10 +12,6 @@
213 <div class="cr-row first"> 215 <div class="cr-row first">
214 <div id="searchExplanation" class="flex cr-padded-text"> 216 <div id="searchExplanation" class="flex cr-padded-text">
@@ -220,19 +222,8 @@
220 </div> 222 </div>
221 <template is="dom-if" if="[[isDefaultSearchControlledByPolicy_( 223 <template is="dom-if" if="[[isDefaultSearchControlledByPolicy_(
222 prefs.default_search_provider_data.template_url_data)]]"> 224 prefs.default_search_provider_data.template_url_data)]]">
223--- chrome/browser/resources/settings/settings_menu/settings_menu.html.orig 225--- a/chrome/browser/resources/settings/settings_page/settings_subpage.html
224+++ chrome/browser/resources/settings/settings_menu/settings_menu.html 226+++ b/chrome/browser/resources/settings/settings_page/settings_subpage.html
225@@ -111,7 +111,7 @@
226 $i18n{autofillPageTitle}
227 <paper-ripple></paper-ripple>
228 </a>
229- <template is="dom-if" if="[[!enableLandingPageRedesign_]]">
230+ <template is="dom-if" if="[[false]]">
231 <a role="menuitem" href="/safetyCheck"
232 hidden="[[!pageVisibility.safetyCheck]]"
233 id="safetyCheck"
234--- chrome/browser/resources/settings/settings_page/settings_subpage.html.orig
235+++ chrome/browser/resources/settings/settings_page/settings_subpage.html
236@@ -72,7 +72,7 @@ 227@@ -72,7 +72,7 @@
237 </template> 228 </template>
238 <h1 class="cr-title-text">[[pageTitle]]</h1> 229 <h1 class="cr-title-text">[[pageTitle]]</h1>
@@ -242,9 +233,9 @@
242 <cr-icon-button iron-icon="cr:help-outline" dir="ltr" 233 <cr-icon-button iron-icon="cr:help-outline" dir="ltr"
243 aria-label="$i18n{learnMore}" on-click="onHelpClick_"> 234 aria-label="$i18n{learnMore}" on-click="onHelpClick_">
244 </cr-icon-button> 235 </cr-icon-button>
245--- chrome/browser/ui/views/profiles/profile_menu_view.cc.orig 236--- a/chrome/browser/ui/views/profiles/profile_menu_view.cc
246+++ chrome/browser/ui/views/profiles/profile_menu_view.cc 237+++ b/chrome/browser/ui/views/profiles/profile_menu_view.cc
247@@ -176,6 +176,7 @@ void ProfileMenuView::BuildMenu() { 238@@ -175,6 +175,7 @@ void ProfileMenuView::BuildMenu() {
248 } 239 }
249 240
250 gfx::ImageSkia ProfileMenuView::GetSyncIcon() const { 241 gfx::ImageSkia ProfileMenuView::GetSyncIcon() const {
@@ -252,7 +243,7 @@
252 Profile* profile = browser()->profile(); 243 Profile* profile = browser()->profile();
253 if (profile->IsOffTheRecord() || profile->IsGuestSession()) 244 if (profile->IsOffTheRecord() || profile->IsGuestSession())
254 return gfx::ImageSkia(); 245 return gfx::ImageSkia();
255@@ -450,8 +451,7 @@ void ProfileMenuView::BuildIdentity() { 246@@ -456,8 +457,7 @@ void ProfileMenuView::BuildIdentity() {
256 menu_subtitle_); 247 menu_subtitle_);
257 } else { 248 } else {
258 menu_title_ = std::u16string(); 249 menu_title_ = std::u16string();
@@ -262,21 +253,19 @@
262 SetProfileIdentityInfo( 253 SetProfileIdentityInfo(
263 profile_name, background_color, edit_button_params, 254 profile_name, background_color, edit_button_params,
264 ui::ImageModel::FromImage( 255 ui::ImageModel::FromImage(
265--- chrome/browser/ui/views/sad_tab_view.cc.orig 256--- a/chrome/browser/ui/views/sad_tab_view.cc
266+++ chrome/browser/ui/views/sad_tab_view.cc 257+++ b/chrome/browser/ui/views/sad_tab_view.cc
267@@ -556,15 +556,9 @@ SadTabView::SadTabView(content::WebConte 258@@ -549,13 +549,6 @@ SadTabView::SadTabView(content::WebConte
268 CreateErrorCodeLabel(GetErrorCodeFormatString(), GetCrashedErrorCode()), 259 auto* actions_container =
269 2, 1.0, views::GridLayout::LEADING, views::GridLayout::LEADING); 260 container->AddChildView(std::make_unique<views::FlexLayoutView>());
270 261 actions_container->SetCrossAxisAlignment(views::LayoutAlignment::kCenter);
271- auto help_link = std::make_unique<views::Link>( 262- auto* help_link =
272- l10n_util::GetStringUTF16(GetHelpLinkTitle())); 263- actions_container->AddChildView(std::make_unique<views::Link>(
264- l10n_util::GetStringUTF16(GetHelpLinkTitle())));
273- help_link->SetCallback(base::BindRepeating( 265- help_link->SetCallback(base::BindRepeating(
274- &SadTab::PerformAction, base::Unretained(this), Action::HELP_LINK)); 266- &SadTab::PerformAction, base::Unretained(this), Action::HELP_LINK));
275 layout->StartRowWithPadding(views::GridLayout::kFixedSize, column_set_id, 267- help_link->SetProperty(views::kTableVertAlignKey,
276 views::GridLayout::kFixedSize, 268- views::LayoutAlignment::kCenter);
277 unrelated_vertical_spacing_large); 269 action_button_ =
278- layout->AddView(std::move(help_link), 1.0, 1.0, views::GridLayout::LEADING, 270 actions_container->AddChildView(std::make_unique<views::MdTextButton>(
279- views::GridLayout::CENTER); 271 base::BindRepeating(&SadTabView::PerformAction,
280 auto action_button = std::make_unique<views::MdTextButton>(
281 base::BindRepeating(&SadTabView::PerformAction, base::Unretained(this),
282 Action::BUTTON),