1
0
mirror of https://gitlab.com/kelteseth/ScreenPlay.git synced 2024-11-07 03:22:33 +01:00

Add Qt 5.13 support to better investigate the 10 second delay on wallpaper creation

This commit is contained in:
Elias 2019-11-13 21:04:51 +01:00
parent 9e0bece2a7
commit 1369e3fc76
4 changed files with 32 additions and 6 deletions

View File

@ -33,7 +33,7 @@ Everyone can contribute with code, design, documentation or translation. Visit o
# HTTPS # HTTPS
git clone --recursive https://gitlab.com/kelteseth/ScreenPlay.git git clone --recursive https://gitlab.com/kelteseth/ScreenPlay.git
``` ```
3. Download the latest __Qt 5.14__. Earlier versions are not supported! 3. Download the latest __Qt 5.13__. Earlier versions are not supported!
### Windows ### Windows
1. [Download and install MSVC 2019 Community](https://visualstudio.microsoft.com/vs/community/) 1. [Download and install MSVC 2019 Community](https://visualstudio.microsoft.com/vs/community/)
2. [Download and install Win 10 SDK (debugging support. Not included via the MSVC installer)](https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk) 2. [Download and install Win 10 SDK (debugging support. Not included via the MSVC installer)](https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk)
@ -41,7 +41,7 @@ git clone --recursive https://gitlab.com/kelteseth/ScreenPlay.git
3. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer) 3. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer)
- Install the Maintaince tool - Install the Maintaince tool
- Select the following features to install: - Select the following features to install:
- Qt 5.14.0 - Qt 5.13.0
- MSVC 2017 64-bit - MSVC 2017 64-bit
- Qt WebEngine - Qt WebEngine
- Developer and Designer Tools - Developer and Designer Tools
@ -68,7 +68,7 @@ sudo zypper install -t pattern devel_basis
2. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer) 2. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer)
- Install the Maintaince tool - Install the Maintaince tool
- Select the following features to install: - Select the following features to install:
- Qt 5.14.0 - Qt 5.13.0
- GCC - GCC
- Qt WebEngine - Qt WebEngine
- Developer and Designer Tools - Developer and Designer Tools
@ -81,7 +81,7 @@ sudo zypper install -t pattern devel_basis
3. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer) 3. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer)
- Install the Maintaince tool - Install the Maintaince tool
- Select the following features to install: - Select the following features to install:
- Qt 5.14.0 - Qt 5.13.0
- Qt WebEngine - Qt WebEngine
- Developer and Designer Tools - Developer and Designer Tools
- OpenSSL 1.1.1.c Toolkit - OpenSSL 1.1.1.c Toolkit

View File

@ -59,6 +59,7 @@ App::App()
// Init after we have the paths from settings // Init after we have the paths from settings
m_installedListModel->init(); m_installedListModel->init();
#if QT_VERSION > QT_VERSION_CHECK(5, 14, 0)
// Set visible if the -silent parameter was not set // Set visible if the -silent parameter was not set
if (QGuiApplication::instance()->arguments().contains("-silent")) { if (QGuiApplication::instance()->arguments().contains("-silent")) {
settings()->setSilentStart(true); settings()->setSilentStart(true);
@ -67,5 +68,5 @@ App::App()
qmlRegisterSingletonInstance("ScreenPlay", 1, 0, "ScreenPlay", this); qmlRegisterSingletonInstance("ScreenPlay", 1, 0, "ScreenPlay", this);
m_mainWindowEngine = make_unique<QQmlApplicationEngine>(); m_mainWindowEngine = make_unique<QQmlApplicationEngine>();
m_mainWindowEngine->load(QUrl(QStringLiteral("qrc:/main.qml"))); m_mainWindowEngine->load(QUrl(QStringLiteral("qrc:/main.qml")));
#endif
} }

View File

@ -1,7 +1,6 @@
#pragma once #pragma once
#include <QDir> #include <QDir>
#include <QIcon> #include <QIcon>
#include <QObject> #include <QObject>
#include <QQmlApplicationEngine> #include <QQmlApplicationEngine>
@ -10,6 +9,7 @@
#include <QQuickWindow> #include <QQuickWindow>
#include <QStringList> #include <QStringList>
#include <QUrl> #include <QUrl>
#include <QtGlobal>
#include <qqml.h> #include <qqml.h>
#include <QtWebEngine> #include <QtWebEngine>
@ -59,6 +59,13 @@ class App : public QObject {
public: public:
explicit App(); explicit App();
#if QT_VERSION < QT_VERSION_CHECK(5, 14, 0)
static App* instance()
{
static App app;
return &app;
}
#endif
GlobalVariables* globalVariables() const GlobalVariables* globalVariables() const
{ {
return m_globalVariables.get(); return m_globalVariables.get();
@ -211,7 +218,9 @@ public slots:
} }
private: private:
#if QT_VERSION > QT_VERSION_CHECK(5, 14, 0)
unique_ptr<QQmlApplicationEngine> m_mainWindowEngine; unique_ptr<QQmlApplicationEngine> m_mainWindowEngine;
#endif
unique_ptr<Create> m_create; unique_ptr<Create> m_create;
unique_ptr<ScreenPlayManager> m_screenPlayManager; unique_ptr<ScreenPlayManager> m_screenPlayManager;

View File

@ -7,7 +7,23 @@ int main(int argc, char* argv[])
QGuiApplication::setAttribute(Qt::AA_ShareOpenGLContexts); QGuiApplication::setAttribute(Qt::AA_ShareOpenGLContexts);
QGuiApplication qtGuiApp(argc, argv); QGuiApplication qtGuiApp(argc, argv);
#if QT_VERSION < QT_VERSION_CHECK(5, 14, 0)
qmlRegisterSingletonType<App>("ScreenPlay", 1, 0, "ScreenPlay", [](QQmlEngine* engine, QJSEngine*) -> QObject* {
engine->setObjectOwnership(App::instance(), QQmlEngine::ObjectOwnership::CppOwnership);
return App::instance();
});
QQmlApplicationEngine m_mainWindowEngine;
m_mainWindowEngine.load(QUrl(QStringLiteral("qrc:/main.qml")));
// Set visible if the -silent parameter was not set
if (QGuiApplication::instance()->arguments().contains("-silent")) {
App::instance()->settings()->setSilentStart(true);
}
#else
App app; App app;
#endif
return qtGuiApp.exec(); return qtGuiApp.exec();
} }