- Respect the WS_VISIBLE flag when creating browser windows (issue #201).

- Add a CefBrowser::CloseBrowser() method.
- Add a TEST_REDIRECT_POPUP_URLS test to cefclient.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@200 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt
2011-03-08 01:07:47 +00:00
parent 1f01d6b2a8
commit 7b1166b18a
12 changed files with 115 additions and 14 deletions

View File

@@ -55,10 +55,13 @@ WebWidget* BrowserWebViewDelegate::createPopupMenu(
void BrowserWebViewDelegate::show(WebNavigationPolicy) {
if (this == browser_->UIT_GetWebViewDelegate()) {
// Restore the window and bring it to the top.
// Restore the window and bring it to the top if the window is currently
// visible.
HWND root = GetAncestor(browser_->UIT_GetMainWndHandle(), GA_ROOT);
ShowWindow(root, SW_SHOWNORMAL);
SetWindowPos(root, HWND_TOP, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE);
if(IsWindowVisible(root)) {
ShowWindow(root, SW_SHOWNORMAL);
SetWindowPos(root, HWND_TOP, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE);
}
} else if (this == browser_->UIT_GetPopupDelegate()) {
// Show popup widgets without activation.
ShowWindow(browser_->UIT_GetPopupWndHandle(), SW_SHOWNA);