From 53f6ef91acdb7d397e68bb9384b572dddb045579 Mon Sep 17 00:00:00 2001 From: David Rosca Date: Sat, 30 Dec 2017 12:07:43 +0100 Subject: [PATCH] Temporarily enable JavaScript when loading qupzilla:restore page --- src/lib/app/browserwindow.cpp | 3 +++ src/lib/app/mainapplication.cpp | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/src/lib/app/browserwindow.cpp b/src/lib/app/browserwindow.cpp index 4fbd663a8..9cae7ec81 100644 --- a/src/lib/app/browserwindow.cpp +++ b/src/lib/app/browserwindow.cpp @@ -178,6 +178,9 @@ void BrowserWindow::postLaunch() if (mApp->isStartingAfterCrash()) { addTab = false; startUrl.clear(); + // qupzilla:restore needs JavaScript enabled + // correct value is then restored in MainApplication::destroyRestoreManager + QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::JavascriptEnabled, true); m_tabWidget->addView(QUrl("falkon:restore"), Qz::NT_CleanSelectedTabAtTheEnd); } else if ((mApp->afterLaunch() == MainApplication::SelectSession || mApp->afterLaunch() == MainApplication::RestoreSession) && mApp->restoreManager()) { diff --git a/src/lib/app/mainapplication.cpp b/src/lib/app/mainapplication.cpp index 36eced360..da3dca9a6 100644 --- a/src/lib/app/mainapplication.cpp +++ b/src/lib/app/mainapplication.cpp @@ -472,6 +472,10 @@ bool MainApplication::restoreSession(BrowserWindow* window, RestoreData restoreD void MainApplication::destroyRestoreManager() { + // Restore JavaScript settings + const bool jsEnabled = Settings().value(QSL("Web-Browser-Settings/allowJavaScript"), true).toBool(); + QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::JavascriptEnabled, jsEnabled); + delete m_restoreManager; m_restoreManager = 0; }