Details
-
Bug
-
Resolution: Won't Do
-
P4: Low
-
None
-
5.5.0 Alpha, 5.5.0 Beta, 5.5.0 RC, 5.5.0, 5.5.1
-
None
-
embedded linux (webOS)
Description
In platforms that do not support multiple windows, current implementation of
dynamically created dialogs is incorrect.
Consider following situation.
We have simple code like below. When we run it on embedded linux,
the parent window is resized to MessageBox size
import QtQuick 2.2 Rectangle { id: mainWindow width: 360 height: 360 Text { text: qsTr("Dialog Test") anchors.centerIn: parent } MouseArea { anchors.fill: parent onClicked: { var dialog = Qt.createQmlObject('\ import QtQuick 2.0 import QtQuick.Controls 1.1 import QtQuick.Dialogs 1.1 import QtQuick.Window 2.1 MessageDialog { id: rootDialog width: 200 height: 100 Rectangle { id: mainRect focus: rootDialog.visible Text { text: "Dialog" anchors.centerIn: parent } } }', mainWindow, "rootDialog"); dialog.open(); } } }
Attachments
For Gerrit Dashboard: QTBUG-46770 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
114828,1 | For platforms that do not support multiple windows, in order to show dialog, we only need decorate parent window with contentItem. In current implementation we request parent window and resize it to the MessageBox size, which is incorrect behaviour, we are not allowed to change it. This patch allows to resize parent window only if platform supports multiple windows and in case if we created this parent window. | dev | qt/qtquickcontrols | Status: ABANDONED | 0 | 0 |
114830,3 | Correct dialog creation for multi-window platforms | dev | qt/qtquickcontrols | Status: ABANDONED | +1 | 0 |