diff options
Diffstat (limited to 'src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.cpp')
-rw-r--r-- | src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.cpp | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.cpp index 28b6b7df63..8d15449679 100644 --- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.cpp +++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.cpp @@ -39,8 +39,8 @@ ** ****************************************************************************/ -#include "qeglfskmsintegration.h" -#include "qeglfskmsscreen.h" +#include "qeglfskmsintegration_p.h" +#include "qeglfskmsscreen_p.h" #include <QtKmsSupport/private/qkmsdevice_p.h> @@ -55,18 +55,19 @@ QT_BEGIN_NAMESPACE Q_LOGGING_CATEGORY(qLcEglfsKmsDebug, "qt.qpa.eglfs.kms") QEglFSKmsIntegration::QEglFSKmsIntegration() - : m_device(nullptr), - m_screenConfig(new QKmsScreenConfig) + : m_device(nullptr) { } QEglFSKmsIntegration::~QEglFSKmsIntegration() { - delete m_screenConfig; } void QEglFSKmsIntegration::platformInit() { + qCDebug(qLcEglfsKmsDebug, "platformInit: Load Screen Config"); + m_screenConfig = createScreenConfig(); + qCDebug(qLcEglfsKmsDebug, "platformInit: Opening DRM device"); m_device = createDevice(); if (Q_UNLIKELY(!m_device->open())) @@ -79,6 +80,8 @@ void QEglFSKmsIntegration::platformDestroy() m_device->close(); delete m_device; m_device = nullptr; + delete m_screenConfig; + m_screenConfig = nullptr; } EGLNativeDisplayType QEglFSKmsIntegration::platformDisplay() const @@ -167,4 +170,12 @@ QKmsScreenConfig *QEglFSKmsIntegration::screenConfig() const return m_screenConfig; } +QKmsScreenConfig *QEglFSKmsIntegration::createScreenConfig() +{ + QKmsScreenConfig *screenConfig = new QKmsScreenConfig; + screenConfig->loadConfig(); + + return screenConfig; +} + QT_END_NAMESPACE |