diff --git a/README.md b/README.md
index 26867ce..9fd742c 100644
--- a/README.md
+++ b/README.md
@@ -34,5 +34,7 @@ Basically it is a combination of screen capture, OCR and translation tools.
## Attributions
-* icons made by [Smashicons](https://www.flaticon.com/authors/smashicons)
+* icons made by
+[Smashicons](https://www.flaticon.com/authors/smashicons),
+[Freepik](https://www.flaticon.com/authors/freepik),
from [Flaticon](https://www.flaticon.com/)
diff --git a/recources.qrc b/recources.qrc
index bed4977..38245c2 100644
--- a/recources.qrc
+++ b/recources.qrc
@@ -6,6 +6,8 @@
share/images/STIconRed.png
share/images/loadImages.png
share/images/loadImages@2x.png
+ share/images/debug.png
+ share/images/debug@2x.png
share/translations/screentranslator_ru.qm
diff --git a/share/images/debug.png b/share/images/debug.png
new file mode 100644
index 0000000..b0b1fd8
Binary files /dev/null and b/share/images/debug.png differ
diff --git a/share/images/debug@2x.png b/share/images/debug@2x.png
new file mode 100644
index 0000000..bef29f7
Binary files /dev/null and b/share/images/debug@2x.png differ
diff --git a/src/translate/translator.cpp b/src/translate/translator.cpp
index 56c2e46..6a7fa97 100644
--- a/src/translate/translator.cpp
+++ b/src/translate/translator.cpp
@@ -41,19 +41,18 @@ Translator::Translator(Manager &manager, const Settings &settings)
, url_(new QLineEdit(this))
, loadImages_(
new QAction(QIcon(":/icons/loadImages.png"), tr("Load images"), this))
+ , showDebugAction_(new QAction(QIcon(":/icons/debug.png"), tr("Debug"), this))
, tabs_(new QTabWidget(this))
{
-#ifdef DEVELOP
{
QTcpSocket socket;
if (socket.bind()) {
- quint16 port = socket.localPort();
- LTRACE() << "debug port" << port;
- qputenv("QTWEBENGINE_REMOTE_DEBUGGING", QString::number(port).toUtf8());
+ debugPort_ = socket.localPort();
+ qputenv("QTWEBENGINE_REMOTE_DEBUGGING",
+ QString::number(debugPort_).toUtf8());
socket.close();
}
}
-#endif
setObjectName("Translator");
@@ -65,6 +64,7 @@ Translator::Translator(Manager &manager, const Settings &settings)
toolBar->addWidget(new QLabel(tr("Url:"), this));
toolBar->addWidget(url_);
toolBar->addAction(loadImages_);
+ toolBar->addAction(showDebugAction_);
auto layout = new QVBoxLayout(detailsFrame);
layout->addWidget(toolBar);
@@ -85,6 +85,8 @@ Translator::Translator(Manager &manager, const Settings &settings)
loadImages_->setCheckable(true);
connect(loadImages_, &QAction::toggled, //
this, &Translator::setPageLoadImages);
+ connect(showDebugAction_, &QAction::triggered, //
+ this, &Translator::showDebugView);
connect(tabs_, &QTabWidget::currentChanged, //
this, &Translator::udpateCurrentPage);
@@ -171,6 +173,16 @@ void Translator::createPage(const QString &scriptName,
log->document()->setMaximumBlockCount(1000);
}
+void Translator::showDebugView()
+{
+ if (!debugView_)
+ debugView_ = std::make_unique();
+ debugView_->load(
+ QUrl::fromUserInput("http://localhost:" + QString::number(debugPort_)));
+ debugView_->show();
+ debugView_->activateWindow();
+}
+
WebPage *Translator::currentPage() const
{
const auto index = tabs_->currentIndex();
diff --git a/src/translate/translator.h b/src/translate/translator.h
index 25a4f8f..1bccd37 100644
--- a/src/translate/translator.h
+++ b/src/translate/translator.h
@@ -35,13 +35,17 @@ private:
void processQueue();
void markTranslated(const TaskPtr &task);
void createPage(const QString &scriptName, const QString &scriptText);
+ void showDebugView();
Manager &manager_;
const Settings &settings_;
QWebEngineView *view_;
+ std::unique_ptr debugView_;
QLineEdit *url_;
QAction *loadImages_;
+ QAction *showDebugAction_;
QTabWidget *tabs_;
std::vector queue_;
std::map> pages_;
+ quint16 debugPort_{0};
};