Details
-
User Story
-
Resolution: Unresolved
-
P2: Important
-
None
-
None
-
None
Description
Based on feedback in https://codereview.qt-project.org/c/qt/qtbase/+/412497 it's clear that we need to investigate how Qt behaves when the application is using full screen windows, and expect either fullscreen exclusive access (for performance), or not (for showing dialogs/popups on top of the fullscreen window).
This applies primarily to Windows OpenGL-accelerated windows (WS_BORDER) but also potentially to macOS (https://developer.apple.com/documentation/appkit/nswindowcollectionbehavior?language=objc)
Existing APIs
Qt 5
- QWindowsWindowFunctions::setHasBorderInFullScreen(QWindow *window, bool border)
- QWindowsWindowFunctions::setHasBorderInFullScreenDefault(bool border)
Qt 6
- QNativeInterface::Private::QWindowsWindow::setHasBorderInFullScreen(bool border)
(no way of setting a default)
Relevant Changes
- "Windows: fix fullscreen OpenGL window issues with an opt-in function" 69839e55c13000ee9bf8d8e9d74b70096a92ae51 https://codereview.qt-project.org/c/qt/qtbase/+/143831 (explanation)
- "Windows: Add a default setting for hasBorderInFullScreen" 7264bf19dbc47b805bb7af5df584ce1aae081962| https://codereview.qt-project.org/c/qt/qtbase/+/246155
Attachments
Issue Links
- is duplicated by
-
QTBUG-53571 Widget can not show correctly if there's a fullscreen QOpenGLWidget
- Closed
- relates to
-
QTBUG-47247 Windows/Desktop GL: Flicker when creating another top level window on a full screen GL window
- Reported
-
QTBUG-41883 Windows: main menu no more active when in fullscreen with qopenglwidget
- Closed
-
QTBUG-41309 QOpenGLWidget and QOpenGLWindow problems under Fullscreen
- Closed
-
QTBUG-42410 QtQuick fullscreen Window buggy alt-tab and screenshot behaviour
- Closed
-
QTBUG-71855 Windows: Fullscreen Desktop GL application is in wrong orientation when a monitor is in portrait orientation
- Closed
Gerrit Reviews
For Gerrit Dashboard: QTBUG-104511 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
595889,3 | Prevent exclusive fullscreen with a mask | dev | qt/qtbase | Status: NEW | 0 | 0 |
412497,6 | Make work-around for fullscreen widget w. openGL (Windows) | dev | qt/qtbase | Status: ABANDONED | 0 | 0 |
418545,4 | Add more details on how to set the WS_BORDER flag | dev | qt/qtdoc | Status: MERGED | +2 | 0 |
419263,2 | Add more details on how to set the WS_BORDER flag | 6.4 | qt/qtdoc | Status: MERGED | +2 | 0 |
419264,2 | Add more details on how to set the WS_BORDER flag | 6.3 | qt/qtdoc | Status: MERGED | +2 | 0 |
429574,6 | Add QWindowsApplication::setHasBorderInFullScreenDefault() native interface | dev | qt/qtbase | Status: MERGED | +2 | 0 |