
* chore: bump chromium to 135.0.7049.7 (main) (#45900) chore: bump chromium in DEPS to 135.0.7049.7 (cherry picked from commitbb1c3dff21
) * chore: bump chromium to 136.0.7053.1 (main) (#45906) * chore: bump chromium in DEPS to 136.0.7052.0 * chore: update mas_avoid_private_macos_api_usage.patch.patch6318359
patch applied manually due to context shear * chore: update preconnect_manager.patch Xref:6318420
patch applied manually due to context shear * chore: e patches all * chore: bump chromium to 136.0.7053.1 * chore: update fix_remove_profiles_from_spellcheck_service.patch Xref:6326575
patch applied manually due to context shear * chore: e patches all * chore: revert removal of v8 API used by Node.js * devtools: Remove DevToolsUIBindings::SendJsonRequest() |6326236
* 6244461: Merge //content/common/user_agent.cc into //components/embedder_support:user_agent |6244461
* 6313744: Migrate views::Background factory methods to ColorVariant |6313744
* 6314545: Remove multiple argument support from base::ToString() |6314545
* 6317362: [Extensions] Inline MessagingDelegate::CreateReceiverForTab() |6317362
* 6308998: Add SettingAccess structured metrics event for DevTools |6308998
* 6295214: Remove redundant state field in per-extension preferences |6295214
NB: this change is copied from the upstream change to extensions/shell/browser/shell_extension_loader.cc * fix: ui/ linter error This is showing up in an eslint build step in Electron: > /__w/electron/electron/src/out/Default/gen/ui/webui/resources/cr_elements/preprocessed/cr_menu_selector/cr_menu_selector.ts > 77:23 error This assertion is unnecessary since the receiver accepts the original type of the expression @typescript-eslint/no-unnecessary-type-assertion > > ✖ 1 problem (1 error, 0 warnings) > 1 error and 0 warnings potentially fixable with the `--fix` option. However, removing the assertion causes a typescript build failure: > gen/ui/webui/resources/cr_elements/preprocessed/cr_menu_selector/cr_menu_selector.ts:77:23 - error TS2345: Argument of type 'HTMLElement | null' is not assignable to parameter of type 'HTMLElement'. > Type 'null' is not assignable to type 'HTMLElement'. > > 77 items.indexOf(this.querySelector<HTMLElement>(':focus')); > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ So I think the two different steps may be picking up typescript definitions. This patch should be removed after the issue is tracked down and fixed in a followup task. * fix: -Wnonnull warning Fixes this warning: > 2025-03-07T01:05:01.8637705Z ../../third_party/electron_node/src/debug_utils.cc(257,12): error: null passed to a callee that requires a non-null argument [-Werror,-Wnonnull] > 2025-03-07T01:05:01.8638267Z 257 | return nullptr; > 2025-03-07T01:05:01.8638481Z | ^~~~~~~ > 2025-03-07T01:05:01.8638700Z 1 error generated. Not sure why this warning was never triggered before; `git blame` indicates this code hasn't changed in ages: > c40a8273ef2 (Michaël Zasso 2024-05-10 09:50:20 +0200 255) #endif // DEBUG > 8e2d33f1562 (Anna Henningsen 2018-06-07 16:54:29 +0200 256) } > 247b5130595 (Refael Ackermann 2018-10-22 15:07:00 -0400 257) return nullptr; > 247b5130595 (Refael Ackermann 2018-10-22 15:07:00 -0400 258) } Presumably this is failing in this Chromium roll due to a clang version bump. We should remove this patch after upstreaming it. * docs: add upstream pr link for Node patch --------- Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: Charles Kerr <charles@charleskerr.com> (cherry picked from commit458b14b8ed
) * chore!: bump chromium to 136.0.7054.0 (main) (#45923) * chore: bump chromium in DEPS to 136.0.7054.0 * chore: update allow_in-process_windows_to_have_different_web_prefs.patch Xref:5906158
patch applied manually due to context shear * chore: e patches all * refactor!: Session.clearStorageData(syncable) Xref:6309405
Remove syncable type from opts.quota in Session.clearStorageData(opts) because it that category has been removed upstream. BREAKING CHANGE: Removed ses.clearDataStorage({ quota: 'syncable' }) * docs: deprecate Session.clearDataStorage({ quota }) --------- Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: Charles Kerr <charles@charleskerr.com> (cherry picked from commit20414f66ca
) * chore: bump chromium to 136.0.7058.1 (main) (#45928) * chore: bump chromium in DEPS to 136.0.7056.0 * chore: update mas_avoid_private_macos_api_usage.patch.patch no manual changes; patch applied with fuzz * chore: update fix_adapt_exclusive_access_for_electron_needs.patch patch applied manually due to context shear 6319958: [FS] Replace GURL with url::Origin for Excluisve Access Bubble |6319958
* chore: update feat_allow_usage_of_sccontentsharingpicker_on_supported_platforms.patch no manual changes; patch applied with fuzz 6311876: Expose captured surface resolution for MacOS |6311876
* chore: e patches all * 6319958: [FS] Replace GURL with url::Origin for Excluisve Access Bubble |6319958
* 6326673: views: Delete the single-parameter Widget::InitParams constructor. |6326673
*6331102
* 6331102: [A11yPerformance] Rename AXMode::kScreenReader to kExtendedProperties |6331102
Sync with shell/browser/ui/webui/accessibility_ui.cc to upstream chrome/browser/accessibility/accessibility_ui.cc changes in 4af8657 * chore: bump Chromium 136.0.7058.1 (#45933) chore: bump chromium in DEPS to 136.0.7058.1 --------- Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: Charles Kerr <charles@charleskerr.com> (cherry picked from commitb0c11371e0
) * chore: bump chromium to 136.0.7062.0 (main) (#45957) * chore: bump chromium in DEPS to 136.0.7059.0 * chore: bump chromium in DEPS to 136.0.7060.0 * chore: bump chromium in DEPS to 136.0.7062.0 --------- Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> (cherry picked from commit2de8fd7d93
) * fixup! chore: bump chromium to 136.0.7053.1 (main) (#45906) chore: fix patch shear * chore: remove cherry-pick-521faebc8a7c.patch fixed upstream @ 521faeb 6334632: Disable setting primtive restart for WebGL in the cmd decoder. |6334632
* chore: remove cherry-pick-9dacf5694dfd.patch fixed upstream @ 9dacf56 6330188: Move WebGL primitive restart state setting to the GPU process. |6330188
* chore: e patches all --------- Co-authored-by: Charles Kerr <charles@charleskerr.com> Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
108 lines
4.5 KiB
Diff
108 lines
4.5 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: deepak1556 <hop2deep@gmail.com>
|
|
Date: Thu, 13 Oct 2022 20:30:12 +0900
|
|
Subject: Preconnect manager
|
|
|
|
* Patch disables the profile related changes added in
|
|
https://chromium-review.googlesource.com/c/chromium/src/+/3928470.
|
|
* Also avoids including chrome/browser/predictors/resource_prefetch_predictor.h
|
|
in favor of defining PreconnectRequest in this file since we don't build
|
|
the header.
|
|
|
|
diff --git a/chrome/browser/predictors/preconnect_manager.cc b/chrome/browser/predictors/preconnect_manager.cc
|
|
index 4c90ccfdc5f1357989f7cd86f572915ea05c80da..cba3346fd84a2f75c40e453aeab1602b7c146dd4 100644
|
|
--- a/chrome/browser/predictors/preconnect_manager.cc
|
|
+++ b/chrome/browser/predictors/preconnect_manager.cc
|
|
@@ -15,9 +15,11 @@
|
|
#include "base/types/optional_util.h"
|
|
#include "chrome/browser/predictors/predictors_features.h"
|
|
#include "chrome/browser/predictors/predictors_traffic_annotations.h"
|
|
+#if 0
|
|
#include "chrome/browser/predictors/resource_prefetch_predictor.h"
|
|
#include "chrome/browser/preloading/preloading_prefs.h"
|
|
#include "chrome/browser/profiles/profile.h"
|
|
+#endif
|
|
#include "content/public/browser/browser_context.h"
|
|
#include "content/public/browser/browser_task_traits.h"
|
|
#include "content/public/browser/browser_thread.h"
|
|
@@ -28,6 +30,20 @@ namespace predictors {
|
|
|
|
const bool kAllowCredentialsOnPreconnectByDefault = true;
|
|
|
|
+// NOTE(nornagon): this is copied from
|
|
+// //chrome/browser/predictors/resource_prefetch_predictor.cc we don't need
|
|
+// anything in that file other than this constructor.
|
|
+PreconnectRequest::PreconnectRequest(
|
|
+ const url::Origin& origin,
|
|
+ int num_sockets,
|
|
+ const net::NetworkAnonymizationKey& network_anonymization_key)
|
|
+ : origin(origin),
|
|
+ num_sockets(num_sockets),
|
|
+ network_anonymization_key(network_anonymization_key) {
|
|
+ DCHECK_GE(num_sockets, 0);
|
|
+ DCHECK(!network_anonymization_key.IsEmpty());
|
|
+}
|
|
+
|
|
PreconnectedRequestStats::PreconnectedRequestStats(const url::Origin& origin,
|
|
bool was_preconnected)
|
|
: origin(origin), was_preconnected(was_preconnected) {}
|
|
@@ -94,12 +110,15 @@ PreconnectManager::PreconnectManager(base::WeakPtr<Delegate> delegate,
|
|
PreconnectManager::~PreconnectManager() = default;
|
|
|
|
bool PreconnectManager::IsEnabled() {
|
|
+#if 0
|
|
Profile* profile = Profile::FromBrowserContext(browser_context_);
|
|
if (!profile) {
|
|
return false;
|
|
}
|
|
return prefetch::IsSomePreloadingEnabled(*profile->GetPrefs()) ==
|
|
content::PreloadingEligibility::kEligible;
|
|
+#endif
|
|
+ return true;
|
|
}
|
|
|
|
void PreconnectManager::Start(const GURL& url,
|
|
diff --git a/chrome/browser/predictors/preconnect_manager.h b/chrome/browser/predictors/preconnect_manager.h
|
|
index 107c0f79ccf10eb5d16181213e12c93f1abc62d6..9babefff03899de91519474956ba1297fbd1c95d 100644
|
|
--- a/chrome/browser/predictors/preconnect_manager.h
|
|
+++ b/chrome/browser/predictors/preconnect_manager.h
|
|
@@ -17,7 +17,9 @@
|
|
#include "base/time/time.h"
|
|
#include "chrome/browser/predictors/proxy_lookup_client_impl.h"
|
|
#include "chrome/browser/predictors/resolve_host_client_impl.h"
|
|
+#if 0
|
|
#include "chrome/browser/predictors/resource_prefetch_predictor.h"
|
|
+#endif
|
|
#include "content/public/browser/storage_partition_config.h"
|
|
#include "net/base/network_anonymization_key.h"
|
|
#include "url/gurl.h"
|
|
@@ -34,7 +36,28 @@ class NetworkContext;
|
|
|
|
namespace predictors {
|
|
|
|
-struct PreconnectRequest;
|
|
+// Stores all values needed to trigger a preconnect/preresolve job to a single
|
|
+// origin.
|
|
+struct PreconnectRequest {
|
|
+ // |network_anonymization_key| specifies the key that network requests for the
|
|
+ // preconnected URL are expected to use. If a request is issued with a
|
|
+ // different key, it may not use the preconnected socket. It has no effect
|
|
+ // when |num_sockets| == 0.
|
|
+ PreconnectRequest(
|
|
+ const url::Origin& origin,
|
|
+ int num_sockets,
|
|
+ const net::NetworkAnonymizationKey& network_anonymization_key);
|
|
+ PreconnectRequest(const PreconnectRequest&) = default;
|
|
+ PreconnectRequest(PreconnectRequest&&) = default;
|
|
+ PreconnectRequest& operator=(const PreconnectRequest&) = default;
|
|
+ PreconnectRequest& operator=(PreconnectRequest&&) = default;
|
|
+
|
|
+ url::Origin origin;
|
|
+ // A zero-value means that we need to preresolve a host only.
|
|
+ int num_sockets = 0;
|
|
+ bool allow_credentials = true;
|
|
+ net::NetworkAnonymizationKey network_anonymization_key;
|
|
+};
|
|
|
|
struct PreconnectedRequestStats {
|
|
PreconnectedRequestStats(const url::Origin& origin, bool was_preconnected);
|