diff --git a/src/articleviewer-ng/webengine/articleviewerwebenginepage.h b/src/articleviewer-ng/webengine/articleviewerwebenginepage.h --- a/src/articleviewer-ng/webengine/articleviewerwebenginepage.h +++ b/src/articleviewer-ng/webengine/articleviewerwebenginepage.h @@ -37,7 +37,7 @@ private: void slotFeaturePermissionRequested(const QUrl &url, QWebEnginePage::Feature feature); - void onUrlChanged(); + void onLoadProgress(); }; } #endif // ARTICLEVIEWERWEBENGINEPAGE_H diff --git a/src/articleviewer-ng/webengine/articleviewerwebenginepage.cpp b/src/articleviewer-ng/webengine/articleviewerwebenginepage.cpp --- a/src/articleviewer-ng/webengine/articleviewerwebenginepage.cpp +++ b/src/articleviewer-ng/webengine/articleviewerwebenginepage.cpp @@ -45,8 +45,8 @@ settings()->setAttribute(QWebEngineSettings::WebGLEnabled, false); connect(this, &QWebEnginePage::featurePermissionRequested, this, &ArticleViewerWebEnginePage::slotFeaturePermissionRequested); - connect(this, &QWebEnginePage::urlChanged, - this, &ArticleViewerWebEnginePage::onUrlChanged); + connect(this, &QWebEnginePage::loadProgress, + this, &ArticleViewerWebEnginePage::onLoadProgress); } ArticleViewerWebEnginePage::~ArticleViewerWebEnginePage() @@ -69,7 +69,9 @@ setFeaturePermission(url, feature, QWebEnginePage::PermissionDeniedByUser); } -void ArticleViewerWebEnginePage::onUrlChanged() +void ArticleViewerWebEnginePage::onLoadProgress() { - setZoomFactor((double)Settings::zoom() / 100.0); + double newZoom = static_cast(Settings::zoom() / 100.0); + if(zoomFactor() != newZoom) + setZoomFactor(newZoom); }