MCPcopy Create free account
hub / github.com/OpenBoard-org/OpenBoard / createWindow

Method createWindow

src/web/simplebrowser/webview.cpp:195–223  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

193}
194
195QWebEngineView *WebView::createWindow(QWebEnginePage::WebWindowType type)
196{
197 BrowserWindow* browser = browserWindow();
198
199 if (!browser)
200 return nullptr;
201
202 switch (type) {
203 case QWebEnginePage::WebBrowserWindow: {
204 // create a hidden, temporary view to catch the urlChanged signal
205 WebPopupWindow *popup = new WebPopupWindow(page()->profile());
206 popup->hide();
207 connect(popup->view(), &QWebEngineView::urlChanged, popup->view(), &WebView::openExternalBrowser);
208 return popup->view();
209 }
210 case QWebEnginePage::WebBrowserTab: {
211 return browser->tabWidget()->createTab();
212 }
213 case QWebEnginePage::WebBrowserBackgroundTab: {
214 return browser->tabWidget()->createBackgroundTab();
215 }
216 case QWebEnginePage::WebDialog: {
217 WebPopupWindow *popup = new WebPopupWindow(page()->profile());
218 connect(popup->view(), &WebView::devToolsRequested, this, &WebView::devToolsRequested);
219 return popup->view();
220 }
221 }
222 return nullptr;
223}
224
225void WebView::contextMenuEvent(QContextMenuEvent *event)
226{

Callers

nothing calls this directly

Calls 5

viewMethod · 0.80
createTabMethod · 0.80
tabWidgetMethod · 0.80
createBackgroundTabMethod · 0.80
hideMethod · 0.45

Tested by

no test coverage detected