@@ -29,7 +29,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
29
29
chrome/browser/resources/proxy_config.html | 77 ++++
30
30
chrome/browser/resources/proxy_config.js | 278 +++++++++++++
31
31
chrome/browser/ui/BUILD.gn | 2 +
32
- .../webui/chrome_web_ui_controller_factory.cc | 3 +
32
+ .../webui/chrome_web_ui_controller_factory.cc | 5 +-
33
33
chrome/browser/ui/webui/proxy_config_ui.cc | 389 ++++++++++++++++++
34
34
chrome/browser/ui/webui/proxy_config_ui.h | 31 ++
35
35
chrome/common/webui_url_constants.cc | 2 +
@@ -40,7 +40,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
40
40
.../proxy_config/proxy_policy_handler.cc | 2 +-
41
41
net/proxy_resolution/proxy_config.cc | 51 ++-
42
42
net/proxy_resolution/proxy_config.h | 3 +
43
- 25 files changed, 973 insertions(+), 17 deletions(-)
43
+ 25 files changed, 974 insertions(+), 18 deletions(-)
44
44
create mode 100644 chrome/browser/resources/proxy_config.css
45
45
create mode 100644 chrome/browser/resources/proxy_config.html
46
46
create mode 100644 chrome/browser/resources/proxy_config.js
@@ -84,7 +84,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
84
84
+ private static final String PREF_PROXY_OPTIONS = "proxy";
85
85
private static final String PREF_PRIVACY_GUIDE = "privacy_guide";
86
86
private static final String PREF_INCOGNITO_LOCK = "incognito_lock";
87
- private static final String PREF_THIRD_PARTY_COOKIES = "third_party_cookies ";
87
+ @VisibleForTesting static final String PREF_CLEAR_BROWSING_DATA = "clear_browsing_data ";
88
88
diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
89
89
--- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
90
90
+++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
@@ -196,7 +196,7 @@ diff --git a/chrome/browser/net/proxy_service_factory.h b/chrome/browser/net/pro
196
196
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
197
197
--- a/chrome/browser/prefs/browser_prefs.cc
198
198
+++ b/chrome/browser/prefs/browser_prefs.cc
199
- @@ -203 ,6 +203 ,8 @@
199
+ @@ -202 ,6 +202 ,8 @@
200
200
#include "printing/buildflags/buildflags.h"
201
201
#include "rlz/buildflags/buildflags.h"
202
202
@@ -205,7 +205,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
205
205
#if BUILDFLAG(ENABLE_BACKGROUND_MODE)
206
206
#include "chrome/browser/background/background_mode_manager.h"
207
207
#endif
208
- @@ -1577 ,6 +1579 ,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
208
+ @@ -1652 ,6 +1654 ,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
209
209
component_updater::RegisterPrefs(registry);
210
210
domain_reliability::RegisterPrefs(registry);
211
211
embedder_support::OriginTrialPrefs::RegisterPrefs(registry);
@@ -660,7 +660,7 @@ new file mode 100644
660
660
diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
661
661
--- a/chrome/browser/ui/BUILD.gn
662
662
+++ b/chrome/browser/ui/BUILD.gn
663
- @@ -281 ,6 +281 ,8 @@ static_library("ui") {
663
+ @@ -238 ,6 +238 ,8 @@ static_library("ui") {
664
664
"webui/metrics_internals/metrics_internals_ui.h",
665
665
"webui/net_export_ui.cc",
666
666
"webui/net_export_ui.h",
@@ -672,23 +672,25 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
672
672
diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
673
673
--- a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
674
674
+++ b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
675
- @@ -46 ,6 +46 ,7 @@
676
- #include "chrome/browser/ui/webui/media/media_engagement_ui .h"
677
- #include "chrome/browser/ui/webui/media/webrtc_logs_ui .h"
678
- #include "chrome/browser/ui/webui/policy/policy_ui .h"
675
+ @@ -32 ,6 +32 ,7 @@
676
+ #include "chrome/browser/ui/webui/about/about_ui .h"
677
+ #include "chrome/browser/ui/webui/components/components_ui .h"
678
+ #include "chrome/browser/ui/webui/crashes_ui .h"
679
679
+ #include "chrome/browser/ui/webui/proxy_config_ui.h"
680
- #include "chrome/browser/ui/webui/privacy_sandbox/privacy_sandbox_internals_ui .h"
681
- #include "chrome/browser/ui/webui/suggest_internals/suggest_internals_ui .h"
680
+ #include "chrome/browser/ui/webui/download_internals/download_internals_ui .h"
681
+ #include "chrome/browser/ui/webui/flags/flags_ui .h"
682
682
#include "chrome/browser/ui/webui/webui_util.h"
683
- @@ -532,6 +533,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
684
- return &NewWebUI<SyncConfirmationUI>;
683
+ @@ -261,7 +262,9 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
684
+ history_clusters_internals::kChromeUIHistoryClustersInternalsHost) {
685
+ return &NewWebUI<HistoryClustersInternalsUI>;
685
686
}
686
- #endif // BUILDFLAG(IS_ANDROID)
687
- + if (url.host_piece() == chrome::kChromeUIProxyConfigHost)
687
+ -
688
+ + if (url.host_piece() == chrome::kChromeUIProxyConfigHost) {
688
689
+ return &NewWebUI<ProxyConfigUI>;
689
- #if !BUILDFLAG(IS_CHROMEOS_ASH) && !BUILDFLAG(IS_ANDROID)
690
- if (url.host_piece() == chrome::kChromeUIManagedUserProfileNoticeHost) {
691
- return &NewWebUI<ManagedUserProfileNoticeUI>;
690
+ + }
691
+ #if !BUILDFLAG(IS_ANDROID)
692
+ if (url.host_piece() == chrome::kChromeUINewTabHost) {
693
+ // The URL chrome://newtab/ can be either a virtual or a real URL,
692
694
diff --git a/chrome/browser/ui/webui/proxy_config_ui.cc b/chrome/browser/ui/webui/proxy_config_ui.cc
693
695
new file mode 100644
694
696
--- /dev/null
@@ -1141,7 +1143,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons
1141
1143
diff --git a/chrome/common/webui_url_constants.h b/chrome/common/webui_url_constants.h
1142
1144
--- a/chrome/common/webui_url_constants.h
1143
1145
+++ b/chrome/common/webui_url_constants.h
1144
- @@ -176 ,6 +176 ,8 @@ inline constexpr char kChromeUINetExportURL[] = "chrome://net-export";
1146
+ @@ -173 ,6 +173 ,8 @@ inline constexpr char kChromeUINetExportURL[] = "chrome://net-export";
1145
1147
inline constexpr char kChromeUINetInternalsHost[] = "net-internals";
1146
1148
inline constexpr char kChromeUINetInternalsURL[] = "chrome://net-internals/";
1147
1149
inline constexpr char kChromeUINewTabHost[] = "newtab";
@@ -1153,7 +1155,7 @@ diff --git a/chrome/common/webui_url_constants.h b/chrome/common/webui_url_const
1153
1155
diff --git a/components/proxy_config/pref_proxy_config_tracker_impl.cc b/components/proxy_config/pref_proxy_config_tracker_impl.cc
1154
1156
--- a/components/proxy_config/pref_proxy_config_tracker_impl.cc
1155
1157
+++ b/components/proxy_config/pref_proxy_config_tracker_impl.cc
1156
- @@ -244 ,14 +244 ,14 @@ PrefProxyConfigTrackerImpl::GetEffectiveProxyConfig(
1158
+ @@ -253 ,14 +253 ,14 @@ PrefProxyConfigTrackerImpl::GetEffectiveProxyConfig(
1157
1159
// static
1158
1160
void PrefProxyConfigTrackerImpl::RegisterPrefs(PrefRegistrySimple* registry) {
1159
1161
registry->RegisterDictionaryPref(proxy_config::prefs::kProxy,
@@ -1170,7 +1172,7 @@ diff --git a/components/proxy_config/pref_proxy_config_tracker_impl.cc b/compone
1170
1172
registry->RegisterBooleanPref(proxy_config::prefs::kUseSharedProxies, false);
1171
1173
}
1172
1174
1173
- @@ -388 ,6 +388 ,7 @@ bool PrefProxyConfigTrackerImpl::PrefConfigToNetConfig(
1175
+ @@ -412 ,6 +412 ,7 @@ bool PrefProxyConfigTrackerImpl::PrefConfigToNetConfig(
1174
1176
if (proxy_dict.GetBypassList(&proxy_bypass)) {
1175
1177
proxy_config.proxy_rules().bypass_rules.ParseFromString(proxy_bypass);
1176
1178
}
@@ -1319,16 +1321,16 @@ diff --git a/components/proxy_config/proxy_policy_handler.cc b/components/proxy_
1319
1321
diff --git a/net/proxy_resolution/proxy_config.cc b/net/proxy_resolution/proxy_config.cc
1320
1322
--- a/net/proxy_resolution/proxy_config.cc
1321
1323
+++ b/net/proxy_resolution/proxy_config.cc
1322
- @@ -124 ,7 +124 ,7 @@ void ProxyConfig::ProxyRules::ParseFromString(
1323
- ProxyServer::SCHEME_HTTP,
1324
- allow_bracketed_proxy_chains);
1324
+ @@ -131 ,7 +131 ,7 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules,
1325
+ url_scheme, &single_proxies, ProxyServer::SCHEME_HTTP,
1326
+ allow_bracketed_proxy_chains, is_quic_allowed );
1325
1327
type = Type::PROXY_LIST;
1326
1328
- return;
1327
1329
+ continue;
1328
1330
}
1329
1331
1330
1332
// Trim whitespace off the url scheme.
1331
- @@ -155 ,6 +155 ,55 @@ void ProxyConfig::ProxyRules::ParseFromString(
1333
+ @@ -162 ,6 +162 ,55 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules,
1332
1334
}
1333
1335
}
1334
1336
@@ -1387,10 +1389,10 @@ diff --git a/net/proxy_resolution/proxy_config.cc b/net/proxy_resolution/proxy_c
1387
1389
diff --git a/net/proxy_resolution/proxy_config.h b/net/proxy_resolution/proxy_config.h
1388
1390
--- a/net/proxy_resolution/proxy_config.h
1389
1391
+++ b/net/proxy_resolution/proxy_config.h
1390
- @@ -108,6 +108,9 @@ class NET_EXPORT ProxyConfig {
1391
- // URLs.
1392
+ @@ -107,6 +107,9 @@ class NET_EXPORT ProxyConfig {
1392
1393
void ParseFromString(const std::string& proxy_rules,
1393
- bool allow_bracketed_proxy_chains = false);
1394
+ bool allow_bracketed_proxy_chains = false,
1395
+ bool is_quic_allowed = false);
1394
1396
+ // Returns the proxy rules in a format that can be parsed by ParseFromString;
1395
1397
+ // all information except bypass rules is used.
1396
1398
+ std::string ToString() const;
0 commit comments