Windows/Linux: Fix positioning of select popups and dismissal on window move/resize by calling new CefBrowserHost::NotifyMoveOrResizeStarted() method from client applications (issue #1208).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1901 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt
2014-10-29 18:14:47 +00:00
parent 0cbadc6e07
commit 470518a52e
15 changed files with 181 additions and 29 deletions

View File

@@ -1164,6 +1164,24 @@ void CefBrowserHostImpl::SendCaptureLostEvent() {
widget->LostCapture();
}
void CefBrowserHostImpl::NotifyMoveOrResizeStarted() {
if (!CEF_CURRENTLY_ON_UIT()) {
CEF_POST_TASK(CEF_UIT,
base::Bind(&CefBrowserHostImpl::NotifyMoveOrResizeStarted, this));
return;
}
if (!web_contents())
return;
// Dismiss any existing popups.
content::RenderViewHost* rvh = web_contents()->GetRenderViewHost();
if (rvh)
rvh->NotifyMoveOrResizeStarted();
PlatformNotifyMoveOrResizeStarted();
}
// CefBrowser methods.
// -----------------------------------------------------------------------------