9#include <QtGui/private/qgenericunixfontdatabase_p.h>
10#include <QtGui/private/qgenericunixeventdispatcher_p.h>
12#include <QtFbSupport/private/qfbvthandler_p.h>
13#include <QtFbSupport/private/qfbbackingstore_p.h>
14#include <QtFbSupport/private/qfbwindow_p.h>
15#include <QtFbSupport/private/qfbcursor_p.h>
17#include <QtGui/private/qguiapplication_p.h>
18#include <qpa/qplatforminputcontext.h>
19#include <qpa/qplatforminputcontextfactory_p.h>
20#include <qpa/qwindowsysteminterface.h>
21#include <qpa/qplatformservices.h>
24#include <QtInputSupport/private/qtslib_p.h>
29using namespace Qt::StringLiterals;
33 m_fontDb.reset(
new QGenericUnixFontDatabase);
34 m_primaryScreen.reset(
new QBsdFbScreen(paramList));
39 QWindowSystemInterface::handleScreenRemoved(m_primaryScreen.take());
44 if (m_primaryScreen->initialize())
45 QWindowSystemInterface::handleScreenAdded(m_primaryScreen.data());
47 qWarning(
"bsdfb: Failed to initialize screen");
49 m_inputContext.reset(QPlatformInputContextFactory::create());
50 m_nativeInterface.reset(
new QPlatformNativeInterface);
51 m_vtHandler.reset(
new QFbVtHandler);
53 if (!qEnvironmentVariableIntValue(
"QT_QPA_FB_DISABLE_INPUT"))
54 createInputHandlers();
62 case WindowManagement:
64 case RhiBasedRendering:
67 return QPlatformIntegration::hasCapability(cap);
73 return new QFbBackingStore(window);
78 return new QFbWindow(window);
83 return createUnixEventDispatcher();
88 QList<QPlatformScreen *> list;
89 list.append(m_primaryScreen.data());
95 return m_fontDb.data();
100 if (m_services.isNull())
101 m_services.reset(
new QPlatformServices);
103 return m_services.data();
109 const bool useTslib = qEnvironmentVariableIntValue(
"QT_QPA_FB_TSLIB");
111 new QTsLibMouseHandler(
"TsLib"_L1, QString());
117 return m_nativeInterface.data();
~QBsdFbIntegration() override
QPlatformBackingStore * createPlatformBackingStore(QWindow *window) const override
Factory function for QPlatformBackingStore.
void initialize() override
Performs initialization steps that depend on having an event dispatcher available.
QPlatformWindow * createPlatformWindow(QWindow *window) const override
Factory function for QPlatformWindow.
QPlatformServices * services() const override
QList< QPlatformScreen * > screens() const
QBsdFbIntegration(const QStringList ¶mList)
QAbstractEventDispatcher * createEventDispatcher() const override
Factory function for the GUI event dispatcher.
bool hasCapability(QPlatformIntegration::Capability cap) const override
QPlatformNativeInterface * nativeInterface() const override
QPlatformFontDatabase * fontDatabase() const override
Accessor for the platform integration's fontdatabase.