QPlatformCursor *QEglFSKmsEglDeviceIntegration::createCursor(QPlatformScreen *screen) const { #if QT_CONFIG(opengl) if (screenConfig()->separateScreens()) return new QEglFSCursor(screen); #endif return nullptr; }
QPlatformScreen *QEglFSKmsEglDevice::createScreen(const QKmsOutput &output) { QEglFSKmsScreen *screen = new QEglFSKmsEglDeviceScreen(this, output); #if QT_CONFIG(opengl) if (!m_globalCursor && !screenConfig()->separateScreens()) { qCDebug(qLcEglfsKmsDebug, "Creating new global mouse cursor"); m_globalCursor = new QEglFSCursor(screen); } #endif return screen; }
QKmsDevice *QEglFSKmsEglDeviceIntegration::createDevice() { if (Q_UNLIKELY(!query_egl_device())) qFatal("Could not set up EGL device!"); const char *deviceName = m_funcs->query_device_string(m_egl_device, EGL_DRM_DEVICE_FILE_EXT); if (Q_UNLIKELY(!deviceName)) qFatal("Failed to query device name from EGLDevice"); return new QEglFSKmsEglDevice(this, screenConfig(), deviceName); }