Fix tst_QGuiApplication for embedded platforms using eglfs QPA
Disable input and cursor for QGuiApplication instances used in autotest to initialize it properly. Change-Id: I78dc9b776269c082c20f244a51f858289129275d Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
This commit is contained in:
parent
c258422cf9
commit
4b2db07b42
@ -41,12 +41,7 @@
|
|||||||
#include <private/qeventloop_p.h>
|
#include <private/qeventloop_p.h>
|
||||||
#include <private/qthread_p.h>
|
#include <private/qthread_p.h>
|
||||||
|
|
||||||
#ifdef QT_GUI_LIB
|
|
||||||
#include <QtGui/QGuiApplication>
|
|
||||||
typedef QGuiApplication TestApplication;
|
|
||||||
#else
|
|
||||||
typedef QCoreApplication TestApplication;
|
typedef QCoreApplication TestApplication;
|
||||||
#endif
|
|
||||||
|
|
||||||
class EventSpy : public QObject
|
class EventSpy : public QObject
|
||||||
{
|
{
|
||||||
|
@ -60,6 +60,7 @@ class tst_QGuiApplication: public tst_QCoreApplication
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
|
void initTestCase();
|
||||||
void cleanup();
|
void cleanup();
|
||||||
void displayName();
|
void displayName();
|
||||||
void firstWindowTitle();
|
void firstWindowTitle();
|
||||||
@ -84,6 +85,21 @@ private slots:
|
|||||||
void settableStyleHints(); // Needs to run last as it changes style hints.
|
void settableStyleHints(); // Needs to run last as it changes style hints.
|
||||||
};
|
};
|
||||||
|
|
||||||
|
void tst_QGuiApplication::initTestCase()
|
||||||
|
{
|
||||||
|
#ifdef QT_QPA_DEFAULT_PLATFORM_NAME
|
||||||
|
if ((QString::compare(QStringLiteral(QT_QPA_DEFAULT_PLATFORM_NAME),
|
||||||
|
QStringLiteral("eglfs"), Qt::CaseInsensitive) == 0) ||
|
||||||
|
(QString::compare(QString::fromLatin1(qgetenv("QT_QPA_PLATFORM")),
|
||||||
|
QStringLiteral("eglfs"), Qt::CaseInsensitive) == 0)) {
|
||||||
|
// Set env variables to disable input and cursor because eglfs is single fullscreen window
|
||||||
|
// and trying to initialize input and cursor will crash test.
|
||||||
|
qputenv("QT_QPA_EGLFS_DISABLE_INPUT", "1");
|
||||||
|
qputenv("QT_QPA_EGLFS_HIDECURSOR", "1");
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
void tst_QGuiApplication::cleanup()
|
void tst_QGuiApplication::cleanup()
|
||||||
{
|
{
|
||||||
QVERIFY(QGuiApplication::allWindows().isEmpty());
|
QVERIFY(QGuiApplication::allWindows().isEmpty());
|
||||||
|
Loading…
x
Reference in New Issue
Block a user