Windows 10 + QtQuick2, ApplicationWindow draws frame over Window contents.
-
I want to develop QML applications on Windows 10 using the QtQuick.Controls 2.x class ApplicationWindow. The application needs to have a window frame/border for user interactions (move/resize).
When running an application using QtQuick.Controls 2.x and ApplicationWindow, the applications frame is drawn over the window. It looks like compositing is broken.
With Frame
The application looks correct when we set the ApplicationWindow property to frameless, but we no longer have a frame for moving the window.
flags: Qt.FramelessWindowHint
Frameless
This is running Qt 5.13.0 on a Dell XPS laptop running Windows 10 64bit (NVidia/Intel GPU) using the stock QtQuick empty application template with the following QML:
import QtQuick 2.12 import QtQuick.Window 2.12 import QtQuick.Controls 2.12 ApplicationWindow { visible: true width: 640 height: 480 title: qsTr("Hello World") flags: Qt.FramelessWindowHint Action { id: closeAction text: "Close" shortcut: StandardKey.Close onTriggered: { Qt.quit() } } menuBar: MenuBar { Menu { title: "File" MenuItem { action: closeAction } } } }
What is the fix for using ApplicationWindow class inside a framed window?
-
Can't confirm for Qt 5.13.0 MSVC x64. Everything looks fine.
-
This was due to a display driver bug. Updating the driver made the problem go away. This hardware driver bug is noted here: https://bugreports.qt.io/browse/QTBUG-63508.
Intel HD Driver 21.20.16.4664 exhibits the problem as well as the drivers mentioned in the above link.
Intel HD Driver update 26.20.100.6951 for Dell XPS Intel HS display fixes the scaling problem with the window compositor on my Dell XPS 15, 6th generation Intel laptop.