cefsimple: Fix sizing of popup windows with --use-views (see issue #2854)
This commit is contained in:
parent
9df4a54308
commit
c3d4f24720
|
@ -54,6 +54,27 @@ class SimpleWindowDelegate : public CefWindowDelegate {
|
||||||
DISALLOW_COPY_AND_ASSIGN(SimpleWindowDelegate);
|
DISALLOW_COPY_AND_ASSIGN(SimpleWindowDelegate);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
class SimpleBrowserViewDelegate : public CefBrowserViewDelegate {
|
||||||
|
public:
|
||||||
|
SimpleBrowserViewDelegate() {}
|
||||||
|
|
||||||
|
bool OnPopupBrowserViewCreated(CefRefPtr<CefBrowserView> browser_view,
|
||||||
|
CefRefPtr<CefBrowserView> popup_browser_view,
|
||||||
|
bool is_devtools) OVERRIDE {
|
||||||
|
// Create a new top-level Window for the popup. It will show itself after
|
||||||
|
// creation.
|
||||||
|
CefWindow::CreateTopLevelWindow(
|
||||||
|
new SimpleWindowDelegate(popup_browser_view));
|
||||||
|
|
||||||
|
// We created the Window.
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
IMPLEMENT_REFCOUNTING(SimpleBrowserViewDelegate);
|
||||||
|
DISALLOW_COPY_AND_ASSIGN(SimpleBrowserViewDelegate);
|
||||||
|
};
|
||||||
|
|
||||||
} // namespace
|
} // namespace
|
||||||
|
|
||||||
SimpleApp::SimpleApp() {}
|
SimpleApp::SimpleApp() {}
|
||||||
|
@ -91,7 +112,8 @@ void SimpleApp::OnContextInitialized() {
|
||||||
if (use_views) {
|
if (use_views) {
|
||||||
// Create the BrowserView.
|
// Create the BrowserView.
|
||||||
CefRefPtr<CefBrowserView> browser_view = CefBrowserView::CreateBrowserView(
|
CefRefPtr<CefBrowserView> browser_view = CefBrowserView::CreateBrowserView(
|
||||||
handler, url, browser_settings, nullptr, nullptr, nullptr);
|
handler, url, browser_settings, nullptr, nullptr,
|
||||||
|
new SimpleBrowserViewDelegate());
|
||||||
|
|
||||||
// Create the Window. It will show itself after creation.
|
// Create the Window. It will show itself after creation.
|
||||||
CefWindow::CreateTopLevelWindow(new SimpleWindowDelegate(browser_view));
|
CefWindow::CreateTopLevelWindow(new SimpleWindowDelegate(browser_view));
|
||||||
|
|
Loading…
Reference in New Issue