From 07a8a50861278b5a71bf55a0d79b627f52b1d1bc Mon Sep 17 00:00:00 2001 From: Cheng Zhao Date: Fri, 24 Oct 2014 20:49:51 +0800 Subject: [PATCH] Bind WebContents APIs to --- atom/renderer/lib/web-view.coffee | 35 +++++++++++++++++++++++++++++++ docs/api/browser-window.md | 2 +- 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/atom/renderer/lib/web-view.coffee b/atom/renderer/lib/web-view.coffee index aeb7f1ee5a69..1a09aed3c084 100644 --- a/atom/renderer/lib/web-view.coffee +++ b/atom/renderer/lib/web-view.coffee @@ -494,6 +494,41 @@ registerWebViewElement = -> internal.elementAttached = true internal.parseAttributes() + # Public-facing API methods. + methods = [ + "getUrl" + "getTitle" + "isLoading" + "isWaitingForResponse" + "stop" + "reload" + "reloadIngoringCache" + "canGoBack" + "canGoForward" + "canGoToOffset" + "goBack" + "goForward" + "goToIndex" + "goToOffset" + "isCrashed" + "executeJavaScript" + "send" + # "getUserAgent" + # "getZoom" + # "insertCSS" + # "print" + # "setUserAgentOverride" + # "setZoom" + # "terminate" + ] + + # Forward proto.foo* method calls to WebView.foo*. + createHandler = (m) -> + (args...) -> + internal = v8Util.getHiddenValue this, 'internal' + remote.getGuestWebContents(internal.guestInstanceId)[m] args... + proto[m] = createHandler m for m in methods + window.WebView = webFrame.registerEmbedderCustomElement 'webview', prototype: proto diff --git a/docs/api/browser-window.md b/docs/api/browser-window.md index 6d50ef1b4691..1cead5071682 100644 --- a/docs/api/browser-window.md +++ b/docs/api/browser-window.md @@ -602,7 +602,7 @@ Navigates to the specified absolute index. Navigates to the specified offset from the "current entry". -### WebContents.IsCrashed() +### WebContents.isCrashed() Whether the renderer process has crashed.