diff options
Diffstat (limited to 'src/plugins/platforms/directfb')
-rw-r--r-- | src/plugins/platforms/directfb/CMakeLists.txt | 16 | ||||
-rw-r--r-- | src/plugins/platforms/directfb/main.cpp | 2 | ||||
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbbackingstore.h | 8 | ||||
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbblitter.cpp | 4 | ||||
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbblitter.h | 31 | ||||
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbconvenience.h | 2 | ||||
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbcursor.h | 2 | ||||
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbinput.cpp | 13 | ||||
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbinput.h | 2 | ||||
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbintegration.h | 20 | ||||
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbscreen.h | 10 | ||||
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbwindow.h | 20 |
12 files changed, 66 insertions, 64 deletions
diff --git a/src/plugins/platforms/directfb/CMakeLists.txt b/src/plugins/platforms/directfb/CMakeLists.txt index c634afb4f8..7222168a37 100644 --- a/src/plugins/platforms/directfb/CMakeLists.txt +++ b/src/plugins/platforms/directfb/CMakeLists.txt @@ -1,9 +1,8 @@ -# Generated from directfb.pro. +# Copyright (C) 2022 The Qt Company Ltd. +# SPDX-License-Identifier: BSD-3-Clause -# begin special case: qt_find_package(DirectFB) qt_find_package(EGL) -# end special case: ##################################################################### ## QDirectFbIntegrationPlugin Plugin: @@ -25,16 +24,13 @@ qt_internal_add_plugin(QDirectFbIntegrationPlugin qdirectfbwindow.cpp qdirectfbwindow.h LIBRARIES PkgConfig::DirectFB - EGL::EGL # special case + EGL::EGL Qt::Core Qt::CorePrivate Qt::Gui Qt::GuiPrivate ) -#### Keys ignored in scope 1:.:.:directfb.pro:<TRUE>: -# OTHER_FILES = "directfb.json" - ## Scopes: ##################################################################### @@ -50,13 +46,7 @@ qt_internal_extend_target(QDirectFbIntegrationPlugin CONDITION NOT DIRECTFB_PLAT DIRECTFB_PLATFORM_HOOKS ) -#### Keys ignored in scope 3:.:.:directfb.pro:NOT DIRECTFB_PLATFORM_HOOKS_SOURCES_ISEMPTY: -# QMAKE_LIBDIR = "$$DIRECTFB_PLATFORM_HOOKS_LIBDIR" - qt_internal_extend_target(QDirectFbIntegrationPlugin CONDITION DIRECTFB_PLATFORM_HOOKS_SOURCES_ISEMPTY SOURCES qdirectfbeglhooks_stub.cpp ) - -#### Keys ignored in scope 5:.:.:directfb.pro:NOT TARGET___equals____ss_QT_DEFAULT_QPA_PLUGIN: -# PLUGIN_EXTENDS = "-" diff --git a/src/plugins/platforms/directfb/main.cpp b/src/plugins/platforms/directfb/main.cpp index 02cceeb487..4618696154 100644 --- a/src/plugins/platforms/directfb/main.cpp +++ b/src/plugins/platforms/directfb/main.cpp @@ -24,7 +24,7 @@ class QDirectFbIntegrationPlugin : public QPlatformIntegrationPlugin Q_OBJECT Q_PLUGIN_METADATA(IID QPlatformIntegrationFactoryInterface_iid FILE "directfb.json") public: - QPlatformIntegration *create(const QString&, const QStringList&); + QPlatformIntegration *create(const QString&, const QStringList&) override; }; QPlatformIntegration * QDirectFbIntegrationPlugin::create(const QString& system, const QStringList& paramList) diff --git a/src/plugins/platforms/directfb/qdirectfbbackingstore.h b/src/plugins/platforms/directfb/qdirectfbbackingstore.h index c51f29271d..625b672a40 100644 --- a/src/plugins/platforms/directfb/qdirectfbbackingstore.h +++ b/src/plugins/platforms/directfb/qdirectfbbackingstore.h @@ -18,10 +18,10 @@ class QDirectFbBackingStore : public QPlatformBackingStore public: QDirectFbBackingStore(QWindow *window); - QPaintDevice *paintDevice(); - void flush(QWindow *window, const QRegion ®ion, const QPoint &offset); - void resize (const QSize &size, const QRegion &staticContents); - bool scroll(const QRegion &area, int dx, int dy); + QPaintDevice *paintDevice() override; + void flush(QWindow *window, const QRegion ®ion, const QPoint &offset) override; + void resize (const QSize &size, const QRegion &staticContents) override; + bool scroll(const QRegion &area, int dx, int dy) override; QImage toImage() const override; diff --git a/src/plugins/platforms/directfb/qdirectfbblitter.cpp b/src/plugins/platforms/directfb/qdirectfbblitter.cpp index 0a110da798..c93e48ead7 100644 --- a/src/plugins/platforms/directfb/qdirectfbblitter.cpp +++ b/src/plugins/platforms/directfb/qdirectfbblitter.cpp @@ -216,7 +216,7 @@ bool QDirectFbBlitter::drawCachedGlyphs(const QPaintEngineState *state, QFontEng for (int i=0; i<numGlyphs; ++i) { QFixed subPixelPosition = fontEngine->subPixelPositionForX(positions[i].x); - QTextureGlyphCache::GlyphAndSubPixelPosition glyph(glyphs[i], subPixelPosition); + QTextureGlyphCache::GlyphAndSubPixelPosition glyph(glyphs[i], QFixedPoint(subPixelPosition, 0)); const QTextureGlyphCache::Coord &c = cache->coords[glyph]; if (c.isNull()) continue; @@ -424,7 +424,7 @@ void QDirectFbBlitter::drawDebugRect(const QRect &rect, const QColor &color) void QDirectFbTextureGlyphCache::resizeTextureData(int width, int height) { - m_surface.reset();; + m_surface.reset(); QImageTextureGlyphCache::resizeTextureData(width, height); } diff --git a/src/plugins/platforms/directfb/qdirectfbblitter.h b/src/plugins/platforms/directfb/qdirectfbblitter.h index 591021061c..6183859613 100644 --- a/src/plugins/platforms/directfb/qdirectfbblitter.h +++ b/src/plugins/platforms/directfb/qdirectfbblitter.h @@ -19,11 +19,20 @@ public: QDirectFbBlitter(const QSize &size, bool alpha); virtual ~QDirectFbBlitter(); - virtual void fillRect(const QRectF &rect, const QColor &color); - virtual void drawPixmap(const QRectF &rect, const QPixmap &pixmap, const QRectF &subrect); - void alphaFillRect(const QRectF &rect, const QColor &color, QPainter::CompositionMode cmode); - void drawPixmapOpacity(const QRectF &rect, const QPixmap &pixmap, const QRectF &subrect, QPainter::CompositionMode cmode, qreal opacity); - virtual bool drawCachedGlyphs(const QPaintEngineState *state, QFontEngine::GlyphFormat glyphFormat, int numGlyphs, const glyph_t *glyphs, const QFixedPoint *positions, QFontEngine *fontEngine); + void fillRect(const QRectF &rect, const QColor &color) override; + void drawPixmap(const QRectF &rect, const QPixmap &pixmap, const QRectF &subrect) override; + void alphaFillRect(const QRectF &rect, const QColor &color, QPainter::CompositionMode cmode) override; + void drawPixmapOpacity(const QRectF &rect, + const QPixmap &pixmap, + const QRectF &subrect, + QPainter::CompositionMode cmode, + qreal opacity) override; + bool drawCachedGlyphs(const QPaintEngineState *state, + QFontEngine::GlyphFormat glyphFormat, + int numGlyphs, + const glyph_t *glyphs, + const QFixedPoint *positions, + QFontEngine *fontEngine) override; IDirectFBSurface *dfbSurface() const; @@ -32,8 +41,8 @@ public: static DFBSurfacePixelFormat selectPixmapFormat(bool withAlpha); protected: - virtual QImage *doLock(); - virtual void doUnlock(); + QImage *doLock() override; + void doUnlock() override; QDirectFBPointer<IDirectFBSurface> m_surface; QImage m_image; @@ -50,12 +59,12 @@ private: class QDirectFbBlitterPlatformPixmap : public QBlittablePlatformPixmap { public: - QBlittable *createBlittable(const QSize &size, bool alpha) const; + QBlittable *createBlittable(const QSize &size, bool alpha) const override; QDirectFbBlitter *dfbBlitter() const; - virtual bool fromFile(const QString &filename, const char *format, - Qt::ImageConversionFlags flags); + bool fromFile(const QString &filename, const char *format, + Qt::ImageConversionFlags flags) override; private: bool fromDataBufferDescription(const DFBDataBufferDescription &); @@ -83,7 +92,7 @@ public: : QImageTextureGlyphCache(format, matrix) {} - virtual void resizeTextureData(int width, int height); + void resizeTextureData(int width, int height) override; IDirectFBSurface *sourceSurface(); diff --git a/src/plugins/platforms/directfb/qdirectfbconvenience.h b/src/plugins/platforms/directfb/qdirectfbconvenience.h index c013988fe2..dc657f384e 100644 --- a/src/plugins/platforms/directfb/qdirectfbconvenience.h +++ b/src/plugins/platforms/directfb/qdirectfbconvenience.h @@ -62,7 +62,7 @@ template <typename T> class QDirectFBPointer : public QScopedPointer<T, QDirectFBInterfaceCleanupHandler<T> > { public: - QDirectFBPointer(T *t = nullptr) + Q_NODISCARD_CTOR QDirectFBPointer(T *t = nullptr) : QScopedPointer<T, QDirectFBInterfaceCleanupHandler<T> >(t) {} diff --git a/src/plugins/platforms/directfb/qdirectfbcursor.h b/src/plugins/platforms/directfb/qdirectfbcursor.h index 9a480fc8f8..21a8f4353d 100644 --- a/src/plugins/platforms/directfb/qdirectfbcursor.h +++ b/src/plugins/platforms/directfb/qdirectfbcursor.h @@ -19,7 +19,7 @@ class QDirectFBCursor : public QPlatformCursor public: QDirectFBCursor(QPlatformScreen *screen); #ifndef QT_NO_CURSOR - void changeCursor(QCursor *cursor, QWindow *window); + void changeCursor(QCursor *cursor, QWindow *window) override; #endif private: diff --git a/src/plugins/platforms/directfb/qdirectfbinput.cpp b/src/plugins/platforms/directfb/qdirectfbinput.cpp index a62ff9882c..c5aacad6cc 100644 --- a/src/plugins/platforms/directfb/qdirectfbinput.cpp +++ b/src/plugins/platforms/directfb/qdirectfbinput.cpp @@ -126,7 +126,7 @@ void QDirectFbInput::handleMouseEvents(const DFBEvent &event) long timestamp = (event.window.timestamp.tv_sec*1000) + (event.window.timestamp.tv_usec/1000); QWindow *tlw = m_tlwMap.value(event.window.window_id); - QWindowSystemInterface::handleMouseEvent(tlw, timestamp, p, globalPos, buttons); + QWindowSystemInterface::handleMouseEvent(tlw, timestamp, p, globalPos, buttons, Qt::NoButton, QEvent::None); } void QDirectFbInput::handleWheelEvent(const DFBEvent &event) @@ -135,9 +135,12 @@ void QDirectFbInput::handleWheelEvent(const DFBEvent &event) QPoint globalPos(event.window.cx, event.window.cy); long timestamp = (event.window.timestamp.tv_sec*1000) + (event.window.timestamp.tv_usec/1000); QWindow *tlw = m_tlwMap.value(event.window.window_id); - QWindowSystemInterface::handleWheelEvent(tlw, timestamp, p, globalPos, - event.window.step*120, - Qt::Vertical); + QWindowSystemInterface::handleWheelEvent(tlw, + timestamp, + p, + globalPos, + QPoint(), + QPoint(0, event.window.step*120)); } void QDirectFbInput::handleKeyEvents(const DFBEvent &event) @@ -173,7 +176,7 @@ void QDirectFbInput::handleEnterLeaveEvents(const DFBEvent &event) void QDirectFbInput::handleGotFocusEvent(const DFBEvent &event) { QWindow *tlw = m_tlwMap.value(event.window.window_id); - QWindowSystemInterface::handleWindowActivated(tlw, Qt::ActiveWindowFocusReason); + QWindowSystemInterface::handleFocusWindowChanged(tlw, Qt::ActiveWindowFocusReason); } void QDirectFbInput::handleCloseEvent(const DFBEvent &event) diff --git a/src/plugins/platforms/directfb/qdirectfbinput.h b/src/plugins/platforms/directfb/qdirectfbinput.h index 5496f537a2..02175abc7b 100644 --- a/src/plugins/platforms/directfb/qdirectfbinput.h +++ b/src/plugins/platforms/directfb/qdirectfbinput.h @@ -26,7 +26,7 @@ public: void stopInputEventLoop(); protected: - void run(); + void run() override; private: void handleEvents(); diff --git a/src/plugins/platforms/directfb/qdirectfbintegration.h b/src/plugins/platforms/directfb/qdirectfbintegration.h index aa369d7c05..8dd2a4516a 100644 --- a/src/plugins/platforms/directfb/qdirectfbintegration.h +++ b/src/plugins/platforms/directfb/qdirectfbintegration.h @@ -25,16 +25,16 @@ public: void connectToDirectFb(); - bool hasCapability(Capability cap) const; - QPlatformPixmap *createPlatformPixmap(QPlatformPixmap::PixelType type) const; - QPlatformWindow *createPlatformWindow(QWindow *window) const; - QPlatformBackingStore *createPlatformBackingStore(QWindow *window) const; - QAbstractEventDispatcher *createEventDispatcher() const; - - QPlatformFontDatabase *fontDatabase() const; - QPlatformServices *services() const; - QPlatformInputContext *inputContext() const { return m_inputContext; } - QPlatformNativeInterface *nativeInterface() const; + bool hasCapability(Capability cap) const override; + QPlatformPixmap *createPlatformPixmap(QPlatformPixmap::PixelType type) const override; + QPlatformWindow *createPlatformWindow(QWindow *window) const override; + QPlatformBackingStore *createPlatformBackingStore(QWindow *window) const override; + QAbstractEventDispatcher *createEventDispatcher() const override; + + QPlatformFontDatabase *fontDatabase() const override; + QPlatformServices *services() const override; + QPlatformInputContext *inputContext() const override { return m_inputContext; } + QPlatformNativeInterface *nativeInterface() const override; protected: virtual void initializeDirectFB(); diff --git a/src/plugins/platforms/directfb/qdirectfbscreen.h b/src/plugins/platforms/directfb/qdirectfbscreen.h index a4f2e9adb1..cbcb6a55da 100644 --- a/src/plugins/platforms/directfb/qdirectfbscreen.h +++ b/src/plugins/platforms/directfb/qdirectfbscreen.h @@ -19,11 +19,11 @@ class QDirectFbScreen : public QPlatformScreen public: QDirectFbScreen(int display); - QRect geometry() const { return m_geometry; } - int depth() const { return m_depth; } - QImage::Format format() const { return m_format; } - QSizeF physicalSize() const { return m_physicalSize; } - QPlatformCursor *cursor() const { return m_cursor.data(); } + QRect geometry() const override { return m_geometry; } + int depth() const override { return m_depth; } + QImage::Format format() const override { return m_format; } + QSizeF physicalSize() const override { return m_physicalSize; } + QPlatformCursor *cursor() const override { return m_cursor.data(); } // DirectFb helpers IDirectFBDisplayLayer *dfbLayer() const; diff --git a/src/plugins/platforms/directfb/qdirectfbwindow.h b/src/plugins/platforms/directfb/qdirectfbwindow.h index 6413d91860..f05038d8ca 100644 --- a/src/plugins/platforms/directfb/qdirectfbwindow.h +++ b/src/plugins/platforms/directfb/qdirectfbwindow.h @@ -15,19 +15,19 @@ class QDirectFbWindow : public QPlatformWindow { public: QDirectFbWindow(QWindow *tlw, QDirectFbInput *inputhandler); - ~QDirectFbWindow(); + ~QDirectFbWindow() override; - void setGeometry(const QRect &rect); - void setOpacity(qreal level); + void setGeometry(const QRect &rect) override; + void setOpacity(qreal level) override; - void setVisible(bool visible); + void setVisible(bool visible) override; - void setWindowFlags(Qt::WindowFlags flags); - bool setKeyboardGrabEnabled(bool grab); - bool setMouseGrabEnabled(bool grab); - void raise(); - void lower(); - WId winId() const; + void setWindowFlags(Qt::WindowFlags flags) override; + bool setKeyboardGrabEnabled(bool grab) override; + bool setMouseGrabEnabled(bool grab) override; + void raise() override; + void lower() override; + WId winId() const override; virtual void createDirectFBWindow(); IDirectFBWindow *dfbWindow() const; |