27#include <QJsonDocument>
28#include <QNetworkReply>
29#include <QWebEngineSettings>
30#include <QtWebEngineWidgetsVersion>
32QList<QWebEngineView*> WebInspector::s_views;
35 : QWebEngineView(parent)
38 setAttribute(Qt::WA_DeleteOnClose);
39 setObjectName(
QSL(
"web-inspector"));
43 m_windowSize =
Settings().
value(
QSL(
"Web-Inspector/windowSize"), QSize(640, 480)).toSize();
47 connect(page(), &QWebEnginePage::windowCloseRequested,
this, &WebInspector::deleteLater);
48 connect(page(), &QWebEnginePage::loadFinished,
this, &WebInspector::loadFinished);
53 if (m_view && hasFocus()) {
71 page()->setInspectedPage(m_view->
page());
77 m_inspectElement =
true;
82 if (!
mApp->webSettings()->testAttribute(QWebEngineSettings::JavascriptEnabled)) {
90 s_views.removeOne(view);
91 s_views.prepend(view);
96 s_views.prepend(view);
101 s_views.removeOne(view);
104void WebInspector::loadFinished()
107 if (m_inspectElement) {
108 m_view->triggerPageAction(QWebEnginePage::InspectElement);
109 m_inspectElement =
false;
118 QSize s = QWebEngineView::sizeHint();
119 s.setHeight(m_height);
123void WebInspector::keyPressEvent(QKeyEvent *event)
129void WebInspector::keyReleaseEvent(QKeyEvent *event)
QVariant value(const QString &key, const QVariant &defaultValue=QVariant())
void setValue(const QString &key, const QVariant &defaultValue=QVariant())
QSize sizeHint() const override
static void pushView(QWebEngineView *view)
void setView(WebView *view)
static void unregisterView(QWebEngineView *view)
WebInspector(QWidget *parent=nullptr)
static void registerView(QWebEngineView *view)
void pageChanged(WebPage *page)