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

Method handleDevToolsRequested

src/web/simplebrowser/browserwindow.cpp:284–318  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

282}
283
284void BrowserWindow::handleDevToolsRequested(QWebEnginePage *source)
285{
286 // use same mechanism as for the widget apps
287 if (m_inspectorWindow)
288 {
289 QWebEngineView *inspector = qobject_cast<QWebEngineView*>(m_inspectorWindow->centralWidget());
290
291 if (inspector && inspector->page()->inspectedPage() != source) {
292 source->setDevToolsPage(inspector->page());
293 }
294
295 m_inspectorWindow->activateWindow();
296 }
297 else
298 {
299 QRect controlGeometry = UBApplication::displayManager->screenGeometry(ScreenRole::Control);
300 QRect inspectorGeometry(controlGeometry.left() + 50, controlGeometry.top() + 50, controlGeometry.width() / 2, controlGeometry.height() / 2);
301
302 m_inspectorWindow = new QMainWindow();
303 m_inspectorWindow->setAttribute(Qt::WA_DeleteOnClose, true);
304 m_inspectorWindow->setFocusPolicy(Qt::ClickFocus);
305
306 QWebEngineView *inspector = new QWebEngineView();
307 m_inspectorWindow->setCentralWidget(inspector);
308 m_inspectorWindow->setGeometry(inspectorGeometry);
309 m_inspectorWindow->show();
310
311 source->setDevToolsPage(inspector->page());
312 source->triggerAction(QWebEnginePage::InspectElement);
313
314 connect(m_inspectorWindow, &QObject::destroyed, this, [this](){
315 m_inspectorWindow = nullptr;
316 });
317 }
318}
319
320void BrowserWindow::handleTabClosing(WebView* webView)
321{

Callers

nothing calls this directly

Calls 5

pageMethod · 0.80
screenGeometryMethod · 0.80
widthMethod · 0.45
heightMethod · 0.45
showMethod · 0.45

Tested by

no test coverage detected