Windows: Fix cancellation of drag&drop when using off-screen rendering and multi-threaded message loop and returning false from CefRenderHandler::StartDragging (issue #1364).

git-svn-id: https://chromiumembedded.googlecode.com/svn/branches/2062@1854 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt
2014-09-30 18:53:27 +00:00
parent 4ed71eabbd
commit 67155451ba
4 changed files with 17 additions and 15 deletions

View File

@ -408,16 +408,16 @@ CefRefPtr<CefBrowserHostImpl> CefBrowserHostImpl::CreateInternal(
content::WebContents::CreateParams create_params(
browser_context);
CefWebContentsViewOSR* view_or = NULL;
if (window_info.windowless_rendering_enabled) {
// Use the OSR view instead of the default view.
CefWebContentsViewOSR* view_or = new CefWebContentsViewOSR(
web_contents,
CefContentBrowserClient::Get()->GetWebContentsViewDelegate(
web_contents));
view_or = new CefWebContentsViewOSR();
create_params.view = view_or;
create_params.delegate_view = view_or;
}
web_contents = content::WebContents::Create(create_params);
if (view_or)
view_or->set_web_contents(web_contents);
}
CefRefPtr<CefBrowserHostImpl> browser =
@ -2143,10 +2143,8 @@ bool CefBrowserHostImpl::ShouldCreateWebContents(
DCHECK(pending_popup_info_.get());
if (pending_popup_info_->window_info.windowless_rendering_enabled) {
// Use the OSR view instead of the default view.
CefWebContentsViewOSR* view_or = new CefWebContentsViewOSR(
web_contents,
CefContentBrowserClient::Get()->GetWebContentsViewDelegate(
web_contents));
CefWebContentsViewOSR* view_or = new CefWebContentsViewOSR();
view_or->set_web_contents(web_contents);
*view = view_or;
*delegate_view = view_or;
}