qt6-bb10/src/plugins/platforms
Jan Niklas Hasse 92cf38018a Quit application when QWindowsSystemTrayIcon receives WM_CLOSE
When an application only has a trayicon and is killed by `taskkill /IM
binary.exe` the trayicon's HWND will receive a WM_CLOSE message. If we
don't handle this, the tray icon will close anyway, but the app still
runs in the task manager.

Fixes: QTBUG-43855
Change-Id: I5f82a068df9c40360bd565a2681e1b37ff114e44
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2019-12-05 08:57:43 +01:00
..
android Merge remote-tracking branch 'origin/5.13' into 5.14 2019-10-24 10:23:44 +02:00
bsdfb
cocoa macOS: Don't tweak NSApp presentationOptions on startup 2019-12-03 01:14:50 +01:00
direct2d QPainter: don't print deprecated warnings for HighQualityAntialiasing 2019-10-03 13:15:47 +02:00
directfb
eglfs Eliminate the last QList<QPoint> in QtBase production code 2019-09-13 10:47:24 +02:00
haiku Propagate application termination requests through QPA 2019-10-19 11:58:35 +02:00
integrity
ios iOS: Guard against request for textInputView without focus window 2019-12-03 01:14:58 +01:00
linuxfb Introduce QImage::Format_BGR888 2019-08-23 11:54:09 +02:00
minimal
minimalegl
offscreen Update QPA mouse event handling in offscreen and VNC plugins 2019-08-30 12:40:31 +02:00
openwfd qopenwfdscreen.h: remove unused #include 2019-05-14 05:25:54 +00:00
qnx Rename QWidgetBackingStore to QWidgetRepaintManager 2019-08-20 11:33:47 +02:00
vnc Update QPA mouse event handling in offscreen and VNC plugins 2019-08-30 12:40:31 +02:00
wasm Prevent emscripten_webgl_destroy_context from removing event handlers 2019-12-03 14:54:15 +00:00
windows Quit application when QWindowsSystemTrayIcon receives WM_CLOSE 2019-12-05 08:57:43 +01:00
winrt QWinRTUiaValueProvider: optimize SetValue() 2019-09-13 10:47:27 +02:00
xcb xcb: Simplify code by using helper QXcbIntegration::defaultConnection() 2019-11-20 14:37:49 +03:00
README
platforms.pro

README

The Qt Platform Abstraction - QPA

QPA is the platform abstraction layer for Qt 5 and replaces QWS and the
platform ports from Qt 4.

There is currently little documentation for QPA. The best approach for
developing a new platform plugin is to look at the other plugins and
see how they implement the APIs in question. The "minimal" plugin
is a good starting point. The xcb, windows, cocoa, and qnx plugins
are also actively developed and up to date.

QPA plugins are implemented by subclassing various QPlatform*
classes. There are two "root" classes: QPlatformIntegration for
window system integration and QPlatformTheme for deeper platform
theming and integration. QStyle is not a part of QPA.

There are no source or binary compatibility guarantees for the QPA
classes, meaning that a platform plugin is only guaranteed to work
with the Qt version it was developed against. API changes will
however only be made in minor releases. (5.1, 5.2, and so on.)

Class Overview:

QPlatformIntegration
    QPlatformWindow
    QPlatformBackingStore
    QPlatformOpenGLContext
    QPlatformSharedGraphicsCache
    QPlatformFontDatabase
    QPlatformClipboard
    QPlatformDrag
    QAbstractEventDispatcher
    QPlatformInputContext
    QPlatformAccessibility
    QPlatformNativeInterface
    QPlatformServices

QPlatformTheme
    QPlatformMenu
    QPlatformMenuBar
    QPlatformDialogHelper
    platform palettes
    platform fonts
    theme hints

src/platformsupport contains several helper classes for implementing
platform plugins on unix-like systems.