kms: Adapt to initialize() pattern
Right now socket notifiers are attempted to be created before having the event dispatcher up. This is wrong. Change-Id: Ica3034b9fa790c037f28982db23c71342f6597d7 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
This commit is contained in:
parent
b4fe9ce225
commit
17de86f282
@ -66,9 +66,28 @@ QT_BEGIN_NAMESPACE
|
|||||||
QKmsIntegration::QKmsIntegration()
|
QKmsIntegration::QKmsIntegration()
|
||||||
: QPlatformIntegration(),
|
: QPlatformIntegration(),
|
||||||
m_fontDatabase(new QGenericUnixFontDatabase()),
|
m_fontDatabase(new QGenericUnixFontDatabase()),
|
||||||
m_nativeInterface(new QKmsNativeInterface)
|
m_nativeInterface(new QKmsNativeInterface),
|
||||||
|
m_vtHandler(0),
|
||||||
|
m_deviceDiscovery(0)
|
||||||
{
|
{
|
||||||
setenv("EGL_PLATFORM", "drm",1);
|
}
|
||||||
|
|
||||||
|
QKmsIntegration::~QKmsIntegration()
|
||||||
|
{
|
||||||
|
delete m_deviceDiscovery;
|
||||||
|
foreach (QKmsDevice *device, m_devices) {
|
||||||
|
delete device;
|
||||||
|
}
|
||||||
|
foreach (QPlatformScreen *screen, m_screens) {
|
||||||
|
delete screen;
|
||||||
|
}
|
||||||
|
delete m_fontDatabase;
|
||||||
|
delete m_vtHandler;
|
||||||
|
}
|
||||||
|
|
||||||
|
void QKmsIntegration::initialize()
|
||||||
|
{
|
||||||
|
qputenv("EGL_PLATFORM", "drm");
|
||||||
m_vtHandler = new QFbVtHandler;
|
m_vtHandler = new QFbVtHandler;
|
||||||
|
|
||||||
m_deviceDiscovery = QDeviceDiscovery::create(QDeviceDiscovery::Device_DRM | QDeviceDiscovery::Device_DRM_PrimaryGPU, 0);
|
m_deviceDiscovery = QDeviceDiscovery::create(QDeviceDiscovery::Device_DRM | QDeviceDiscovery::Device_DRM_PrimaryGPU, 0);
|
||||||
@ -88,19 +107,6 @@ QKmsIntegration::QKmsIntegration()
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
QKmsIntegration::~QKmsIntegration()
|
|
||||||
{
|
|
||||||
delete m_deviceDiscovery;
|
|
||||||
foreach (QKmsDevice *device, m_devices) {
|
|
||||||
delete device;
|
|
||||||
}
|
|
||||||
foreach (QPlatformScreen *screen, m_screens) {
|
|
||||||
delete screen;
|
|
||||||
}
|
|
||||||
delete m_fontDatabase;
|
|
||||||
delete m_vtHandler;
|
|
||||||
}
|
|
||||||
|
|
||||||
void QKmsIntegration::addDevice(const QString &deviceNode)
|
void QKmsIntegration::addDevice(const QString &deviceNode)
|
||||||
{
|
{
|
||||||
m_devices.append(new QKmsDevice(deviceNode, this));
|
m_devices.append(new QKmsDevice(deviceNode, this));
|
||||||
|
@ -60,16 +60,17 @@ public:
|
|||||||
QKmsIntegration();
|
QKmsIntegration();
|
||||||
~QKmsIntegration();
|
~QKmsIntegration();
|
||||||
|
|
||||||
bool hasCapability(QPlatformIntegration::Capability cap) const;
|
void initialize() Q_DECL_OVERRIDE;
|
||||||
|
bool hasCapability(QPlatformIntegration::Capability cap) const Q_DECL_OVERRIDE;
|
||||||
|
|
||||||
QPlatformOpenGLContext *createPlatformOpenGLContext(QOpenGLContext *context) const;
|
QPlatformOpenGLContext *createPlatformOpenGLContext(QOpenGLContext *context) const Q_DECL_OVERRIDE;
|
||||||
QPlatformWindow *createPlatformWindow(QWindow *window) const;
|
QPlatformWindow *createPlatformWindow(QWindow *window) const Q_DECL_OVERRIDE;
|
||||||
QPlatformBackingStore *createPlatformBackingStore(QWindow *window) const;
|
QPlatformBackingStore *createPlatformBackingStore(QWindow *window) const Q_DECL_OVERRIDE;
|
||||||
|
|
||||||
QPlatformFontDatabase *fontDatabase() const;
|
QPlatformFontDatabase *fontDatabase() const Q_DECL_OVERRIDE;
|
||||||
QAbstractEventDispatcher *createEventDispatcher() const;
|
QAbstractEventDispatcher *createEventDispatcher() const Q_DECL_OVERRIDE;
|
||||||
|
|
||||||
QPlatformNativeInterface *nativeInterface() const;
|
QPlatformNativeInterface *nativeInterface() const Q_DECL_OVERRIDE;
|
||||||
|
|
||||||
void addScreen(QKmsScreen *screen);
|
void addScreen(QKmsScreen *screen);
|
||||||
QObject *createDevice(const char *);
|
QObject *createDevice(const char *);
|
||||||
|
Loading…
Reference in New Issue
Block a user