Files
electron/patches/chromium/revert_partial_remove_unused_prehandlemouseevent.patch
electron-roller[bot] ba135e2f7f chore: bump chromium to 144.0.7506.0 (main) (#48744)
* chore: bump chromium in DEPS to 144.0.7504.0

* chore: bump chromium in DEPS to 144.0.7506.0

* chore: update patches

* Revert "build: explicitly disable reclient"

This reverts commit e08c6adb08.

No longer needed after https://crrev.com/c/7099239

* 7097498: Remove MSG_ROUTING_* constants from ipc_message.h

https://chromium-review.googlesource.com/c/chromium/src/+/7097498

* 7090671: [//gpu] Remove unneeded GpuInfo methods

https://chromium-review.googlesource.com/c/chromium/src/+/7090671

* 7103701: Remove IPC::PlatformFileForTransit.

https://chromium-review.googlesource.com/c/chromium/src/+/7103701

(This should have been removed with https://github.com/electron/electron/pull/17406).

* chore: update filenames.libcxx.gni

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2025-11-03 21:26:16 -08:00

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 2fa9876286ecda6a60a2c1970896cb275bbd7ab9..3f14e59de0e296b17f574aa40b879d2f373bb93e 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 36d0de8de7871204162d775930960ae0434528a1..3662d82708f63f9c3d85e230d7e286693512e785 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4484,6 +4484,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 9b065992fc577084ef16aaef1436fd0855e32981..0f230a7ecaa04e8050899525d606541432dada1e 100644
--- a/content/browser/web_contents/web_contents_impl.h
+++ b/content/browser/web_contents/web_contents_impl.h
@@ -1114,6 +1114,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 a92305042eef86fbabeae6fe02b48668a349be99..5a50203f2df5724fe7bae5dc9ea211fd2cfe6171 100644
--- a/content/public/browser/web_contents_delegate.cc
+++ b/content/public/browser/web_contents_delegate.cc
@@ -126,6 +126,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 88b4810d3b91df0dd6b932412edd4ff249bedde0..492efdb688af5af6691f3ef50de48103de29b138 100644
--- a/content/public/browser/web_contents_delegate.h
+++ b/content/public/browser/web_contents_delegate.h
@@ -311,6 +311,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