5#include <QLoggingCategory>
11#ifdef EGLFS_PLATFORM_HOOKS
36 : m_integration(
nullptr)
39 if (!pluginKeys.isEmpty()) {
43 if (pluginKeys.contains(x11key)) {
44 pluginKeys.removeOne(x11key);
45 pluginKeys.prepend(x11key);
49 if (pluginKeys.contains(kmskey)) {
50 pluginKeys.removeOne(kmskey);
51 pluginKeys.prepend(kmskey);
59 requested =
qgetenv(
"QT_QPA_EGLFS_INTEGRATION");
62#ifdef EGLFS_PREFERRED_PLUGIN
63#define DEFAULT_PLUGIN EGLFS_PREFERRED_PLUGIN
66 requested = STRQ(DEFAULT_PLUGIN);
76 pluginKeys.removeOne(reqStr);
77 pluginKeys.prepend(reqStr);
79 qCDebug(qLcEglDevDebug) <<
"EGL device integration plugin keys (sorted):" << pluginKeys;
80 while (!m_integration && !pluginKeys.isEmpty()) {
82 qCDebug(qLcEglDevDebug) <<
"Trying to load device EGL integration" <<
key;
91 qCDebug(qLcEglDevDebug) <<
"Using base device integration";
98 return deviceIntegration()->integration();
bool isEmpty() const noexcept
Returns true if the byte array has size 0; otherwise returns false.
static QEglFSDeviceIntegration * create(const QString &name)
static QStringList keys()
\macro QT_RESTRICTED_CAST_FROM_ASCII
static QString fromLocal8Bit(QByteArrayView ba)
This is an overloaded member function, provided for convenience. It differs from the above function o...
QEglFSDeviceIntegration * integration()
Combined button and popup list for selecting options.
#define QByteArrayLiteral(str)
QEglFSDeviceIntegration * qt_egl_device_integration()
#define Q_GLOBAL_STATIC(TYPE, NAME,...)
#define qCDebug(category,...)
#define Q_DECLARE_LOGGING_CATEGORY(name)
#define QStringLiteral(str)
Q_CORE_EXPORT QByteArray qgetenv(const char *varName)
Q_CORE_EXPORT bool qEnvironmentVariableIsSet(const char *varName) noexcept