From e9f279afd12d81d86ad0fa2e9abf080147d6ff1a Mon Sep 17 00:00:00 2001 From: Charles Kerr Date: Wed, 23 Apr 2025 20:33:50 -0500 Subject: [PATCH] chore: remove `WebContents.getNativeView()` (#46734) chore: remove never-used WebContents.getNativeView(). This was added in https://github.com/electron/electron/pull/10308 but was never used and never documented, not even as experimental API. --- .../browser/api/electron_api_web_contents.cc | 13 ------------- shell/browser/api/electron_api_web_contents.h | 1 - .../api/electron_api_web_contents_mac.mm | 19 ------------------- 3 files changed, 33 deletions(-) diff --git a/shell/browser/api/electron_api_web_contents.cc b/shell/browser/api/electron_api_web_contents.cc index bf5f6ec4b44b..578aa0e5d22f 100644 --- a/shell/browser/api/electron_api_web_contents.cc +++ b/shell/browser/api/electron_api_web_contents.cc @@ -3743,18 +3743,6 @@ void WebContents::SetDevToolsWebContents(const WebContents* devtools) { inspectable_web_contents_->SetDevToolsWebContents(devtools->web_contents()); } -#if !BUILDFLAG(IS_MAC) -v8::Local WebContents::GetNativeView(v8::Isolate* isolate) const { - gfx::NativeView ptr = web_contents()->GetNativeView(); - auto buffer = - node::Buffer::Copy(isolate, reinterpret_cast(&ptr), sizeof(ptr)); - if (buffer.IsEmpty()) - return v8::Null(isolate); - else - return buffer.ToLocalChecked(); -} -#endif - v8::Local WebContents::DevToolsWebContents(v8::Isolate* isolate) { if (devtools_web_contents_.IsEmpty()) return v8::Null(isolate); @@ -4466,7 +4454,6 @@ void WebContents::FillObjectTemplate(v8::Isolate* isolate, .SetMethod("capturePage", &WebContents::CapturePage) .SetMethod("setEmbedder", &WebContents::SetEmbedder) .SetMethod("setDevToolsWebContents", &WebContents::SetDevToolsWebContents) - .SetMethod("getNativeView", &WebContents::GetNativeView) .SetMethod("isBeingCaptured", &WebContents::IsBeingCaptured) .SetMethod("setWebRTCIPHandlingPolicy", &WebContents::SetWebRTCIPHandlingPolicy) diff --git a/shell/browser/api/electron_api_web_contents.h b/shell/browser/api/electron_api_web_contents.h index 30a2365bc0a9..9ae4a7c878ce 100644 --- a/shell/browser/api/electron_api_web_contents.h +++ b/shell/browser/api/electron_api_web_contents.h @@ -250,7 +250,6 @@ class WebContents final : public ExclusiveAccessContext, bool IsCurrentlyAudible(); void SetEmbedder(const WebContents* embedder); void SetDevToolsWebContents(const WebContents* devtools); - v8::Local GetNativeView(v8::Isolate* isolate) const; bool IsBeingCaptured(); void HandleNewRenderFrame(content::RenderFrameHost* render_frame_host); diff --git a/shell/browser/api/electron_api_web_contents_mac.mm b/shell/browser/api/electron_api_web_contents_mac.mm index 1358b3dde95d..52c436283961 100644 --- a/shell/browser/api/electron_api_web_contents_mac.mm +++ b/shell/browser/api/electron_api_web_contents_mac.mm @@ -6,7 +6,6 @@ #include "shell/browser/api/electron_api_web_contents.h" #include "shell/browser/ui/cocoa/event_dispatching_window.h" #include "shell/browser/web_contents_preferences.h" -#include "shell/common/node_includes.h" #include "ui/base/cocoa/command_dispatcher.h" #include "ui/base/cocoa/nsmenu_additions.h" #include "ui/base/cocoa/nsmenuitem_additions.h" @@ -93,22 +92,4 @@ bool WebContents::PlatformHandleKeyboardEvent( return false; } -namespace { - -// Converts binary data to Buffer. -v8::Local ToBuffer(v8::Isolate* isolate, void* val, int size) { - auto buffer = node::Buffer::Copy(isolate, static_cast(val), size); - if (buffer.IsEmpty()) - return v8::Null(isolate); - else - return buffer.ToLocalChecked(); -} - -} // namespace - -v8::Local WebContents::GetNativeView(v8::Isolate* isolate) const { - NSView* handle = web_contents()->GetNativeView().GetNativeNSView(); - return ToBuffer(isolate, &handle, sizeof(handle)); -} - } // namespace electron::api