2023-04-17 20:12:27 +00:00
|
|
|
#include "article_inspect.hh"
|
2022-03-04 15:25:11 +00:00
|
|
|
#include <QCloseEvent>
|
2022-03-26 13:31:04 +00:00
|
|
|
#if ( QT_VERSION > QT_VERSION_CHECK( 6, 0, 0 ) )
|
2022-03-25 15:35:39 +00:00
|
|
|
#include <QWebEngineContextMenuRequest>
|
2022-03-26 13:31:04 +00:00
|
|
|
#endif
|
2022-06-23 12:05:59 +00:00
|
|
|
ArticleInspector::ArticleInspector( QWidget * parent ):
|
|
|
|
QWidget( parent, Qt::WindowType::Window )
|
2022-03-04 15:25:11 +00:00
|
|
|
{
|
2022-05-20 09:18:38 +00:00
|
|
|
setWindowTitle( tr( "Inspect" ) );
|
2022-03-04 15:25:11 +00:00
|
|
|
setAttribute( Qt::WidgetAttribute::WA_DeleteOnClose, false );
|
|
|
|
QVBoxLayout * v = new QVBoxLayout( this );
|
|
|
|
v->setSpacing( 0 );
|
|
|
|
v->setContentsMargins( 0, 0, 0, 0 );
|
2022-05-28 05:11:08 +00:00
|
|
|
viewContainer = new QWebEngineView( this );
|
|
|
|
v->addWidget( viewContainer );
|
2022-05-20 09:18:38 +00:00
|
|
|
|
2022-08-21 05:59:30 +00:00
|
|
|
setInspectPage( nullptr );
|
2022-05-20 09:18:38 +00:00
|
|
|
resize( 800, 600 );
|
2022-03-04 15:25:11 +00:00
|
|
|
}
|
|
|
|
|
2022-08-08 12:48:46 +00:00
|
|
|
void ArticleInspector::setInspectPage( QWebEnginePage * page )
|
2022-03-04 15:25:11 +00:00
|
|
|
{
|
2022-08-04 13:11:13 +00:00
|
|
|
viewContainer->page()->setInspectedPage( page );
|
2022-08-21 05:59:30 +00:00
|
|
|
|
2023-05-12 00:04:21 +00:00
|
|
|
if ( !page ) {
|
|
|
|
qDebug() << "reset inspector";
|
2022-08-21 05:59:30 +00:00
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2022-10-13 12:31:37 +00:00
|
|
|
raise();
|
|
|
|
show();
|
|
|
|
}
|
|
|
|
|
|
|
|
void ArticleInspector::triggerAction( QWebEnginePage * page )
|
|
|
|
{
|
2023-05-12 00:04:21 +00:00
|
|
|
setInspectPage( page );
|
|
|
|
|
|
|
|
if ( !page ) {
|
2022-10-13 12:31:37 +00:00
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2022-08-22 13:28:07 +00:00
|
|
|
#if ( QT_VERSION < QT_VERSION_CHECK( 6, 0, 0 ) || QT_VERSION > QT_VERSION_CHECK( 6, 3, 0 ) )
|
2022-08-04 13:11:13 +00:00
|
|
|
page->triggerAction( QWebEnginePage::InspectElement );
|
2022-06-15 00:12:27 +00:00
|
|
|
#endif
|
2022-03-04 15:25:11 +00:00
|
|
|
}
|
|
|
|
|
2022-03-25 15:35:39 +00:00
|
|
|
void ArticleInspector::closeEvent( QCloseEvent * )
|
2022-03-04 15:25:11 +00:00
|
|
|
{
|
2022-05-28 05:11:08 +00:00
|
|
|
viewContainer->page()->setInspectedPage( nullptr );
|
2022-03-04 15:25:11 +00:00
|
|
|
}
|