From bb0c1a9b4940f3f6b52c0df535289ec8a3bc9e03 Mon Sep 17 00:00:00 2001 From: Dmitri Ovodok Date: Mon, 4 Feb 2019 21:35:25 +0300 Subject: [PATCH] Fix build without USE_WEBENGINE and SCRIPT_INTERFACE Old-style login dialog is used if USE_WEBENGINE is turned off --- mscore/logindialog.h | 2 ++ mscore/musescore.cpp | 4 +++- mscore/network/loginmanager.cpp | 13 +++++++++++-- mscore/network/loginmanager.h | 4 ++++ mscore/network/loginmanager_p.h | 4 ++++ 5 files changed, 24 insertions(+), 3 deletions(-) diff --git a/mscore/logindialog.h b/mscore/logindialog.h index 4e86ae7985..f44511d8c0 100644 --- a/mscore/logindialog.h +++ b/mscore/logindialog.h @@ -21,6 +21,8 @@ class LoginManager; //--------------------------------------------------------- // LoginDialog +// Old-style login dialog in case QtWebEngine is +// unavailable. //--------------------------------------------------------- class LoginDialog : public QDialog, public Ui::LoginDialog diff --git a/mscore/musescore.cpp b/mscore/musescore.cpp index 80c712aea9..5bb8354992 100644 --- a/mscore/musescore.cpp +++ b/mscore/musescore.cpp @@ -7572,12 +7572,14 @@ bool MuseScore::exportPartsPdfsToJSON(const QString& inFilePath, const QString& } //--------------------------------------------------------- -// getQmlEngine +// getPluginEngine //--------------------------------------------------------- +#ifdef SCRIPT_INTERFACE QmlPluginEngine* MuseScore::getPluginEngine() { if (!_qmlEngine) _qmlEngine = new QmlPluginEngine(this); return _qmlEngine; } +#endif diff --git a/mscore/network/loginmanager.cpp b/mscore/network/loginmanager.cpp index a53d7fe811..664786ccc8 100644 --- a/mscore/network/loginmanager.cpp +++ b/mscore/network/loginmanager.cpp @@ -18,7 +18,9 @@ #include "kQOAuth/kqoauthrequest.h" #include "kQOAuth/kqoauthrequest_xauth.h" +#ifdef USE_WEBENGINE #include +#endif namespace Ms { @@ -286,8 +288,11 @@ void LoginManager::onTryLoginError(const QString& error) disconnect(this, SIGNAL(getUserError(QString)), this, SLOT(onTryLoginError(QString))); connect(this, SIGNAL(loginSuccess()), this, SLOT(tryLogin())); logout(); +#ifdef USE_WEBENGINE loginInteractive(); -// mscore->showLoginDialog(); // TODO: switch depending on USE_WEBENGINE +#else + mscore->showLoginDialog(); +#endif } /*------- END - TRY LOGIN ROUTINES ----------------------------*/ @@ -295,6 +300,7 @@ void LoginManager::onTryLoginError(const QString& error) // loginInteractive //--------------------------------------------------------- +#ifdef USE_WEBENGINE void LoginManager::loginInteractive() { QWebEngineView* webView = new QWebEngineView; @@ -326,6 +332,7 @@ void LoginManager::loginInteractive() webView->load(ApiInfo::loginUrl); webView->show(); } +#endif //--------------------------------------------------------- // login @@ -346,7 +353,7 @@ void LoginManager::login(QString login, QString password) connect(reply, &QNetworkReply::finished, this, [this, reply] { onReplyFinished(reply, RequestType::LOGIN); }); - } + } //--------------------------------------------------------- // onLoginSuccessReply @@ -874,6 +881,7 @@ ApiRequest ApiRequestBuilder::build() const // musescore.com //--------------------------------------------------------- +#ifdef USE_WEBENGINE void ApiWebEngineRequestInterceptor::interceptRequest(QWebEngineUrlRequestInfo& request) { const ApiInfo& apiInfo = ApiInfo::instance(); @@ -881,4 +889,5 @@ void ApiWebEngineRequestInterceptor::interceptRequest(QWebEngineUrlRequestInfo& request.setHttpHeader(apiInfo.clientIdHeader, apiInfo.clientId); request.setHttpHeader(apiInfo.apiKeyHeader, apiInfo.apiKey); } +#endif } diff --git a/mscore/network/loginmanager.h b/mscore/network/loginmanager.h index 584eeea30d..327d9fc966 100644 --- a/mscore/network/loginmanager.h +++ b/mscore/network/loginmanager.h @@ -13,6 +13,8 @@ #ifndef __LOGINMANAGER_H__ #define __LOGINMANAGER_H__ +#include "config.h" + namespace Ms { //--------------------------------------------------------- @@ -83,7 +85,9 @@ class LoginManager : public QObject public: LoginManager(QAction* uploadAudioMenuAction, QObject* parent = 0); void login(QString login, QString password); +#ifdef USE_WEBENGINE void loginInteractive(); +#endif void upload(const QString& path, int nid, const QString& title, const QString& description, const QString& priv, const QString& license, const QString& tags, const QString& changes); bool hasAccessToken(); void getUser(); diff --git a/mscore/network/loginmanager_p.h b/mscore/network/loginmanager_p.h index 88228a3958..2848dde35a 100644 --- a/mscore/network/loginmanager_p.h +++ b/mscore/network/loginmanager_p.h @@ -20,6 +20,8 @@ #ifndef __LOGINMANAGER_P_H__ #define __LOGINMANAGER_P_H__ +#include "config.h" + namespace Ms { //--------------------------------------------------------- @@ -102,6 +104,7 @@ class ApiRequestBuilder // ApiWebEngineRequestInterceptor //--------------------------------------------------------- +#ifdef USE_WEBENGINE class ApiWebEngineRequestInterceptor : public QWebEngineUrlRequestInterceptor { Q_OBJECT @@ -109,6 +112,7 @@ class ApiWebEngineRequestInterceptor : public QWebEngineUrlRequestInterceptor ApiWebEngineRequestInterceptor(QObject* parent) : QWebEngineUrlRequestInterceptor(parent) {} void interceptRequest(QWebEngineUrlRequestInfo& info) override; }; +#endif //--------------------------------------------------------- // HttpStatus