mirror of
https://github.com/electron/electron.git
synced 2026-01-06 22:24:03 -05:00
* chore: bump chromium in DEPS to 145.0.7588.0 * fix(patch-conflict): update scroll_bounce_flag for split overscroll methods Chromium split IsElasticOverscrollEnabled() into two methods: IsElasticOverscrollEnabledOnRoot() and IsElasticOverscrollSupported(). Updated patch to apply the scroll-bounce command-line switch to both methods. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7233733 * fix(patch-conflict): update exclusive_access patch context Upstream refactored the profile variable declaration. Updated patch to match new surrounding context with brace-style if statement. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7239252 * fix(patch-conflict): update screen capture kit non-shareable filter Upstream refactored PiP window exclusion to use GetWindowsToExclude() helper function. Updated patch to combine non-shareable window filtering with the new helper's output. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7274596 * fix(patch-conflict): update corner smoothing CSS property id position Upstream added new internal overscroll CSS properties. Updated patch to add kElectronCornerSmoothing after the new entries. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7234051 * fix(patch-conflict): update permission patches for new permission types Upstream added new permission types: LOCAL_NETWORK, LOOPBACK_NETWORK, and GEOLOCATION_APPROXIMATE. Updated Electron permission patches to include these new types and renumber Electron-specific permissions. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7231952 * fix(patch-conflict): update memory query fallback for new function signature Upstream added AmountOfTotalPhysicalMemory() with PCHECK. Updated patch to maintain fallback logic with correct ByteSize return type. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7254886 * chore: update patch hunk headers * fix(patch): update reclient-configs patch to use new file mode The fix_add_python_remote_wrapper patch was using 'copy from' mode which caused inconsistent behavior between local and CI git versions. Changed to 'new file' mode for consistent patch application. * fix(patch-conflict): remove duplicate GEOLOCATION_APPROXIMATE case Upstream moved GEOLOCATION_APPROXIMATE earlier in the switch statement in GetPermissionString(). The 3-way merge kept both the old and new positions, causing a duplicate case error. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/6397637 * chore: update libcxx filenames for new headers * chore: bump chromium in DEPS to 145.0.7590.0 * chore: update patch hunk headers * fix(patch): update memory fallback return type to ByteSize Upstream changed the return type from ByteCount to ByteSize. * fix: suppress nodiscard warning in node_file.cc libc++ added [[nodiscard]] to std::filesystem::copy_options operator|= which causes build failures with -Werror. * 7229082: update CopyFromSurface to use CopyFromSurfaceResult Upstream changed CopyFromSurface callback to return base::expected<viz::CopyOutputBitmapWithMetadata, std::string> instead of SkBitmap, enabling better error handling. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7229082 * 7254070: add ip_address_space param to OnLocalNetworkAccessPermissionRequired Upstream added IPAddressSpace parameter to check address space for proper permission handling in Local Network Access. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7254070 * 7136679: add spelling_markers param to RequestCheckingOfText Upstream added spelling_markers parameter to report misspelling ranges from Blink to Spellcheck to IME. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7136679 * 7240487: remove second param from RegisterWebSafeIsolatedScheme Upstream removed the schemes_okay_to_appear_as_origin_headers_ parameter. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7240487 * 7254577: use explicit WebElement constructor WebElement default constructor now requires explicit construction rather than brace initialization. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7254577 * 7256335: remove override from CreateGlobalFeaturesForTesting Upstream removed BrowserProcess::CreateGlobalFeaturesForTesting virtual method so the override specifier is no longer valid. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7256335 * chore: add missing SingleThreadTaskRunner include A transitive include of SingleThreadTaskRunner was removed upstream, requiring an explicit include. Ref: Unable to locate specific CL (transitive include change) * 7260483: add LOCAL_NETWORK, LOOPBACK_NETWORK permission type cases Upstream added new permission types for Local Network Access split permissions. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7260483 * chore: update patch hunk headers * 7264893: update postMessage tests for file: origin serialization change Chromium now serializes file: origins as 'null' in MessageEvent per spec. This is a security improvement aligning with the HTML spec behavior. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7264893 * fix: add paths to custom scheme URLs in protocol tests Custom scheme URLs without paths (e.g. test-scheme://foo) cause a DCHECK crash in ASAN builds when CorsURLLoader tries to log the request via GenerateRequestLine -> PathForRequest, which asserts that the path is non-empty. Adding trailing slashes ensures URLs have valid paths. * chore: bump chromium in DEPS to 145.0.7592.0 * chore: update patches (trivial only) * chore: bump chromium in DEPS to 145.0.7594.0 * chore: bump chromium in DEPS to 145.0.7596.0 * chore: update accelerator.patch no manual changes; patch applied with fuzz 2 (offset 1 line) * chore: update patches (trivial only) * chore: node ./script/gen-libc++-filenames.js --------- Co-authored-by: Alice Zhao <alicelovescake@anthropic.com> Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: Charles Kerr <charles@charleskerr.com>
120 lines
6.2 KiB
Diff
120 lines
6.2 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: deepak1556 <hop2deep@gmail.com>
|
|
Date: Mon, 1 Sep 2025 23:31:49 +0900
|
|
Subject: Revert: partial "Remove unused PreHandleMouseEvent"
|
|
|
|
Refs https://chromium-review.googlesource.com/c/chromium/src/+/6880411
|
|
|
|
diff --git a/content/browser/renderer_host/render_widget_host_delegate.cc b/content/browser/renderer_host/render_widget_host_delegate.cc
|
|
index 74fea36ea7f9a345b3474ea18be00704831a685e..c75785d5a26fa52a39d1a3552da9a7621e4c8430 100644
|
|
--- a/content/browser/renderer_host/render_widget_host_delegate.cc
|
|
+++ b/content/browser/renderer_host/render_widget_host_delegate.cc
|
|
@@ -13,6 +13,11 @@
|
|
|
|
namespace content {
|
|
|
|
+bool RenderWidgetHostDelegate::PreHandleMouseEvent(
|
|
+ const blink::WebMouseEvent& event) {
|
|
+ return false;
|
|
+}
|
|
+
|
|
KeyboardEventProcessingResult RenderWidgetHostDelegate::PreHandleKeyboardEvent(
|
|
const input::NativeWebKeyboardEvent& event) {
|
|
return KeyboardEventProcessingResult::NOT_HANDLED;
|
|
diff --git a/content/browser/renderer_host/render_widget_host_delegate.h b/content/browser/renderer_host/render_widget_host_delegate.h
|
|
index bc1bfa1ac381ec94121a264d9dcbae9e02ab5a81..c6fc03ae158b3ce87fd684d765a3f1b0e9f79212 100644
|
|
--- a/content/browser/renderer_host/render_widget_host_delegate.h
|
|
+++ b/content/browser/renderer_host/render_widget_host_delegate.h
|
|
@@ -103,6 +103,12 @@ class CONTENT_EXPORT RenderWidgetHostDelegate {
|
|
virtual void ResizeDueToAutoResize(RenderWidgetHostImpl* render_widget_host,
|
|
const gfx::Size& new_size) {}
|
|
|
|
+ // Callback to give the browser a chance to handle the specified mouse
|
|
+ // event before sending it to the renderer. Returns true if the event was
|
|
+ // handled, false otherwise. A true value means no more processing should
|
|
+ // happen on the event. The default return value is false.
|
|
+ virtual bool PreHandleMouseEvent(const blink::WebMouseEvent& event);
|
|
+
|
|
// Callback to give the browser a chance to handle the specified keyboard
|
|
// event before sending it to the renderer. See enum for details on return
|
|
// value.
|
|
diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
|
|
index fa909df2ac167b8d2553ff56e5a3305027b520e6..39af86f78724d648667d8d1abc4e8cd385422f54 100644
|
|
--- a/content/browser/renderer_host/render_widget_host_impl.cc
|
|
+++ b/content/browser/renderer_host/render_widget_host_impl.cc
|
|
@@ -1589,6 +1589,10 @@ void RenderWidgetHostImpl::ForwardMouseEventWithLatencyInfo(
|
|
CHECK_GE(mouse_event.GetType(), WebInputEvent::Type::kMouseTypeFirst);
|
|
CHECK_LE(mouse_event.GetType(), WebInputEvent::Type::kMouseTypeLast);
|
|
|
|
+ if (delegate_ && delegate_->PreHandleMouseEvent(mouse_event)) {
|
|
+ return;
|
|
+ }
|
|
+
|
|
for (auto& mouse_event_callback : mouse_event_callbacks_) {
|
|
if (mouse_event_callback.Run(mouse_event)) {
|
|
return;
|
|
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
|
index 30f6ecdeb1c85ea9f7e5345a52fe9fe89ea9d03e..f9dd6aa73ab4a36cecbb4fc374b9471af3fa822f 100644
|
|
--- a/content/browser/web_contents/web_contents_impl.cc
|
|
+++ b/content/browser/web_contents/web_contents_impl.cc
|
|
@@ -4476,6 +4476,12 @@ void WebContentsImpl::RenderWidgetWasResized(
|
|
width_changed);
|
|
}
|
|
|
|
+bool WebContentsImpl::PreHandleMouseEvent(const blink::WebMouseEvent& event) {
|
|
+ OPTIONAL_TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("content.verbose"),
|
|
+ "WebContentsImpl::PreHandleMouseEvent");
|
|
+ return delegate_ ? delegate_->PreHandleMouseEvent(this, event) : false;
|
|
+}
|
|
+
|
|
void WebContentsImpl::PreHandleDragUpdate(const DropData& drop_data,
|
|
const gfx::PointF& client_pt) {
|
|
if (delegate_) {
|
|
diff --git a/content/browser/web_contents/web_contents_impl.h b/content/browser/web_contents/web_contents_impl.h
|
|
index 5d32d4af9d1d4f3af4c8a6a8c562e86197acc5aa..42698a8717f6e3cad52b2deeca373658889de712 100644
|
|
--- a/content/browser/web_contents/web_contents_impl.h
|
|
+++ b/content/browser/web_contents/web_contents_impl.h
|
|
@@ -1122,6 +1122,7 @@ class CONTENT_EXPORT WebContentsImpl
|
|
|
|
double GetPendingZoomLevel(RenderWidgetHostImpl* rwh) override;
|
|
|
|
+ bool PreHandleMouseEvent(const blink::WebMouseEvent& event) override;
|
|
void PreHandleDragUpdate(const DropData& drop_data,
|
|
const gfx::PointF& client_pt);
|
|
void PreHandleDragExit();
|
|
diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc
|
|
index 4083a3de23b451fa41cf20d8ebd5f7e9e2b5327a..52c09b87d6f844e2bd617301162b2cd3f738dc62 100644
|
|
--- a/content/public/browser/web_contents_delegate.cc
|
|
+++ b/content/public/browser/web_contents_delegate.cc
|
|
@@ -127,6 +127,12 @@ bool WebContentsDelegate::HandleContextMenu(RenderFrameHost& render_frame_host,
|
|
return false;
|
|
}
|
|
|
|
+bool WebContentsDelegate::PreHandleMouseEvent(
|
|
+ WebContents* source,
|
|
+ const blink::WebMouseEvent& event) {
|
|
+ return false;
|
|
+}
|
|
+
|
|
KeyboardEventProcessingResult WebContentsDelegate::PreHandleKeyboardEvent(
|
|
WebContents* source,
|
|
const input::NativeWebKeyboardEvent& event) {
|
|
diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h
|
|
index 58f34bc33426136d2040f241f2cb5928dc19fb2d..951ef162e4783979857d1d1d2eb15695618a2021 100644
|
|
--- a/content/public/browser/web_contents_delegate.h
|
|
+++ b/content/public/browser/web_contents_delegate.h
|
|
@@ -326,6 +326,13 @@ class CONTENT_EXPORT WebContentsDelegate {
|
|
virtual bool HandleContextMenu(RenderFrameHost& render_frame_host,
|
|
const ContextMenuParams& params);
|
|
|
|
+ // Allows delegates to handle mouse events before sending to the renderer.
|
|
+ // Returns true if the event was handled, false otherwise. A true value means
|
|
+ // no more processing should happen on the event. The default return value is
|
|
+ // false.
|
|
+ virtual bool PreHandleMouseEvent(WebContents* source,
|
|
+ const blink::WebMouseEvent& event);
|
|
+
|
|
// Allows delegates to handle mouse drag events before sending to the
|
|
// renderer. Returns true if the event was handled, false otherwise. A true
|
|
// value means no more processing should happen on the event. The default
|