From f7c91a7d6b5edd8a6f4fd67e999ba39109cf5da2 Mon Sep 17 00:00:00 2001 From: Marshall Greenblatt Date: Mon, 25 Jun 2012 18:05:00 +0000 Subject: [PATCH] JavaScript window.close() should close the browser window (issue #614). git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@708 5089003a-bbd8-11dd-ad1f-f1f9622dbc98 --- libcef/browser/browser_host_impl.cc | 4 ++++ libcef/browser/browser_host_impl.h | 1 + 2 files changed, 5 insertions(+) diff --git a/libcef/browser/browser_host_impl.cc b/libcef/browser/browser_host_impl.cc index 35aa9bd72..7ab7702bd 100644 --- a/libcef/browser/browser_host_impl.cc +++ b/libcef/browser/browser_host_impl.cc @@ -883,6 +883,10 @@ void CefBrowserHostImpl::LoadingStateChanged(content::WebContents* source) { } } +void CefBrowserHostImpl::CloseContents(content::WebContents* source) { + PlatformCloseWindow(); +} + bool CefBrowserHostImpl::TakeFocus(bool reverse) { if (client_.get()) { CefRefPtr handler = client_->GetFocusHandler(); diff --git a/libcef/browser/browser_host_impl.h b/libcef/browser/browser_host_impl.h index 7df86346b..3ff0fca52 100644 --- a/libcef/browser/browser_host_impl.h +++ b/libcef/browser/browser_host_impl.h @@ -201,6 +201,7 @@ class CefBrowserHostImpl : public CefBrowserHost, content::WebContents* source, const content::OpenURLParams& params) OVERRIDE; virtual void LoadingStateChanged(content::WebContents* source) OVERRIDE; + virtual void CloseContents(content::WebContents* source) OVERRIDE; virtual bool TakeFocus(bool reverse) OVERRIDE; virtual void WebContentsFocused(content::WebContents* contents) OVERRIDE; virtual bool HandleContextMenu(const content::ContextMenuParams& params)