aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/imports/controls/DialogButtonBox.qml2
-rw-r--r--src/imports/controls/controls.pro2
-rw-r--r--src/imports/controls/dependencies.json4
-rw-r--r--src/imports/controls/doc/src/qtquickcontrols2-imagine.qdoc2
-rw-r--r--src/imports/controls/doc/src/qtquickcontrols2-index.qdoc2
-rw-r--r--src/imports/controls/doc/src/qtquickcontrols2-material.qdoc2
-rw-r--r--src/imports/controls/doc/src/qtquickcontrols2-qmltypes.qdoc4
-rw-r--r--src/imports/controls/doc/src/qtquickcontrols2-universal.qdoc2
-rw-r--r--src/imports/controls/fusion/fusion.pro2
-rw-r--r--src/imports/controls/fusion/qmldir2
-rw-r--r--src/imports/controls/imagine/DialogButtonBox.qml2
-rw-r--r--src/imports/controls/imagine/imagine.pro2
-rw-r--r--src/imports/controls/imagine/qmldir2
-rw-r--r--src/imports/controls/material/material.pro2
-rw-r--r--src/imports/controls/material/qmldir2
-rw-r--r--src/imports/controls/plugins.qmltypes143
-rw-r--r--src/imports/controls/qmldir2
-rw-r--r--src/imports/controls/universal/DialogButtonBox.qml2
-rw-r--r--src/imports/controls/universal/qmldir2
-rw-r--r--src/imports/controls/universal/universal.pro2
-rw-r--r--src/imports/templates/doc/src/qtquicktemplates2-qmltypes.qdoc4
-rw-r--r--src/imports/templates/plugins.qmltypes120
-rw-r--r--src/imports/templates/templates.pro2
-rw-r--r--src/quicktemplates2/qquickdeferredexecute.cpp9
-rw-r--r--src/quicktemplates2/qquickdialogbuttonbox.cpp4
-rw-r--r--tests/auto/controls/data/tst_dialogbuttonbox.qml28
26 files changed, 244 insertions, 108 deletions
diff --git a/src/imports/controls/DialogButtonBox.qml b/src/imports/controls/DialogButtonBox.qml
index 15619288..943e8b15 100644
--- a/src/imports/controls/DialogButtonBox.qml
+++ b/src/imports/controls/DialogButtonBox.qml
@@ -54,7 +54,7 @@ T.DialogButtonBox {
}
contentItem: ListView {
- implicitWidth: contentWidth
+ implicitWidth: control.count === 1 ? 200 : contentWidth
implicitHeight: 40
model: control.contentModel
diff --git a/src/imports/controls/controls.pro b/src/imports/controls/controls.pro
index b75e4f56..6bbbe0d4 100644
--- a/src/imports/controls/controls.pro
+++ b/src/imports/controls/controls.pro
@@ -1,6 +1,6 @@
TARGET = qtquickcontrols2plugin
TARGETPATH = QtQuick/Controls.2
-IMPORT_VERSION = 2.3
+IMPORT_VERSION = 2.4
QT += qml quick
QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private
diff --git a/src/imports/controls/dependencies.json b/src/imports/controls/dependencies.json
index 8cec519e..485db225 100644
--- a/src/imports/controls/dependencies.json
+++ b/src/imports/controls/dependencies.json
@@ -2,7 +2,7 @@
{
"name": "QtQuick",
"type": "module",
- "version": "2.9"
+ "version": "2.11"
},
{
"name": "QtQuick.Window",
@@ -12,6 +12,6 @@
{
"name": "QtQuick.Templates",
"type": "module",
- "version": "2.3"
+ "version": "2.4"
}
]
diff --git a/src/imports/controls/doc/src/qtquickcontrols2-imagine.qdoc b/src/imports/controls/doc/src/qtquickcontrols2-imagine.qdoc
index cabd66da..9061097b 100644
--- a/src/imports/controls/doc/src/qtquickcontrols2-imagine.qdoc
+++ b/src/imports/controls/doc/src/qtquickcontrols2-imagine.qdoc
@@ -31,7 +31,7 @@
The Imagine Style is based on configurable image assets. \l{detailed-desc-imagine}{More...}
- \styleimport {QtQuick.Controls.Imagine 2.3} {Qt 5.10}
+ \styleimport {QtQuick.Controls.Imagine 2.4} {Qt 5.10}
\section1 Attached Properties
diff --git a/src/imports/controls/doc/src/qtquickcontrols2-index.qdoc b/src/imports/controls/doc/src/qtquickcontrols2-index.qdoc
index cbe21282..9b737939 100644
--- a/src/imports/controls/doc/src/qtquickcontrols2-index.qdoc
+++ b/src/imports/controls/doc/src/qtquickcontrols2-index.qdoc
@@ -46,7 +46,7 @@
application using the following import statement in your \c {.qml} file:
\code
- import QtQuick.Controls 2.3
+ import QtQuick.Controls 2.4
\endcode
The \l{Qt Quick Controls 2 C++ Classes}{C++ classes} can be included into
diff --git a/src/imports/controls/doc/src/qtquickcontrols2-material.qdoc b/src/imports/controls/doc/src/qtquickcontrols2-material.qdoc
index 0720a19a..86a37551 100644
--- a/src/imports/controls/doc/src/qtquickcontrols2-material.qdoc
+++ b/src/imports/controls/doc/src/qtquickcontrols2-material.qdoc
@@ -32,7 +32,7 @@
The Material Style is based on the Google Material Design Guidelines.
\l{detailed-desc-material}{More...}
- \styleimport {QtQuick.Controls.Material 2.3} {Qt 5.7}
+ \styleimport {QtQuick.Controls.Material 2.4} {Qt 5.7}
\section1 Attached Properties
diff --git a/src/imports/controls/doc/src/qtquickcontrols2-qmltypes.qdoc b/src/imports/controls/doc/src/qtquickcontrols2-qmltypes.qdoc
index 4bdccecc..d4576617 100644
--- a/src/imports/controls/doc/src/qtquickcontrols2-qmltypes.qdoc
+++ b/src/imports/controls/doc/src/qtquickcontrols2-qmltypes.qdoc
@@ -26,7 +26,7 @@
****************************************************************************/
/*!
- \qmlmodule QtQuick.Controls 2.3
+ \qmlmodule QtQuick.Controls 2.4
\title Qt Quick Controls 2 QML Types
\ingroup qmlmodules
\brief Provides QML types for user interfaces (Qt Quick Controls 2).
@@ -39,7 +39,7 @@
using the following import statement in your .qml file:
\badcode
- import QtQuick.Controls 2.3
+ import QtQuick.Controls 2.4
\endcode
\section1 QML Types
diff --git a/src/imports/controls/doc/src/qtquickcontrols2-universal.qdoc b/src/imports/controls/doc/src/qtquickcontrols2-universal.qdoc
index 8e88f345..abd027e4 100644
--- a/src/imports/controls/doc/src/qtquickcontrols2-universal.qdoc
+++ b/src/imports/controls/doc/src/qtquickcontrols2-universal.qdoc
@@ -32,7 +32,7 @@
The Universal Style is based on the Microsoft Universal Design Guidelines.
\l {detailed-desc-universal}{More...}
- \styleimport {QtQuick.Controls.Universal 2.3} {Qt 5.7}
+ \styleimport {QtQuick.Controls.Universal 2.4} {Qt 5.7}
\section1 Attached Properties
diff --git a/src/imports/controls/fusion/fusion.pro b/src/imports/controls/fusion/fusion.pro
index c2b649cf..2934778b 100644
--- a/src/imports/controls/fusion/fusion.pro
+++ b/src/imports/controls/fusion/fusion.pro
@@ -1,6 +1,6 @@
TARGET = qtquickcontrols2fusionstyleplugin
TARGETPATH = QtQuick/Controls.2/Fusion
-IMPORT_VERSION = 2.3
+IMPORT_VERSION = 2.4
QT += qml quick
QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private
diff --git a/src/imports/controls/fusion/qmldir b/src/imports/controls/fusion/qmldir
index c37b9f9f..6857b398 100644
--- a/src/imports/controls/fusion/qmldir
+++ b/src/imports/controls/fusion/qmldir
@@ -1,4 +1,4 @@
module QtQuick.Controls.Fusion
plugin qtquickcontrols2fusionstyleplugin
classname QtQuickControls2FusionStylePlugin
-depends QtQuick.Controls 2.3
+depends QtQuick.Controls 2.4
diff --git a/src/imports/controls/imagine/DialogButtonBox.qml b/src/imports/controls/imagine/DialogButtonBox.qml
index e550c16b..2d07638e 100644
--- a/src/imports/controls/imagine/DialogButtonBox.qml
+++ b/src/imports/controls/imagine/DialogButtonBox.qml
@@ -60,7 +60,7 @@ T.DialogButtonBox {
}
contentItem: ListView {
- implicitWidth: contentWidth
+ implicitWidth: control.count === 1 ? 200 : contentWidth
implicitHeight: 32
model: control.contentModel
diff --git a/src/imports/controls/imagine/imagine.pro b/src/imports/controls/imagine/imagine.pro
index 19e86028..8e84c115 100644
--- a/src/imports/controls/imagine/imagine.pro
+++ b/src/imports/controls/imagine/imagine.pro
@@ -1,6 +1,6 @@
TARGET = qtquickcontrols2imaginestyleplugin
TARGETPATH = QtQuick/Controls.2/Imagine
-IMPORT_VERSION = 2.3
+IMPORT_VERSION = 2.4
QT += qml quick
QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private
diff --git a/src/imports/controls/imagine/qmldir b/src/imports/controls/imagine/qmldir
index 04c5d2ce..48fd3bdb 100644
--- a/src/imports/controls/imagine/qmldir
+++ b/src/imports/controls/imagine/qmldir
@@ -1,5 +1,5 @@
module QtQuick.Controls.Imagine
plugin qtquickcontrols2imaginestyleplugin
classname QtQuickControls2ImagineStylePlugin
-depends QtQuick.Controls 2.3
+depends QtQuick.Controls 2.4
depends QtGraphicalEffects 1.0
diff --git a/src/imports/controls/material/material.pro b/src/imports/controls/material/material.pro
index 5d036b61..9e04a23d 100644
--- a/src/imports/controls/material/material.pro
+++ b/src/imports/controls/material/material.pro
@@ -1,6 +1,6 @@
TARGET = qtquickcontrols2materialstyleplugin
TARGETPATH = QtQuick/Controls.2/Material
-IMPORT_VERSION = 2.3
+IMPORT_VERSION = 2.4
QT += qml quick
QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private
diff --git a/src/imports/controls/material/qmldir b/src/imports/controls/material/qmldir
index a5bae170..d6ab0177 100644
--- a/src/imports/controls/material/qmldir
+++ b/src/imports/controls/material/qmldir
@@ -1,4 +1,4 @@
module QtQuick.Controls.Material
plugin qtquickcontrols2materialstyleplugin
classname QtQuickControls2MaterialStylePlugin
-depends QtQuick.Controls 2.3
+depends QtQuick.Controls 2.4
diff --git a/src/imports/controls/plugins.qmltypes b/src/imports/controls/plugins.qmltypes
index d5593246..8b2be4a1 100644
--- a/src/imports/controls/plugins.qmltypes
+++ b/src/imports/controls/plugins.qmltypes
@@ -4,12 +4,12 @@ import QtQuick.tooling 1.2
// It is used for QML tooling purposes only.
//
// This file was auto-generated by:
-// 'qmlplugindump -nonrelocatable QtQuick.Controls 2.3 -merge ../templates/plugins.qmltypes -dependencies dependencies.json'
+// 'qmlplugindump -nonrelocatable QtQuick.Controls 2.4 -merge ../templates/plugins.qmltypes -dependencies dependencies.json'
Module {
dependencies: [
- "QtQuick 2.9",
- "QtQuick.Templates 2.3",
+ "QtQuick 2.11",
+ "QtQuick.Templates 2.4",
"QtQuick.Window 2.2"
]
Component {
@@ -20,6 +20,17 @@ Module {
exportMetaObjectRevisions: [0]
}
Component {
+ name: "QQuickClippedText"
+ defaultProperty: "data"
+ prototype: "QQuickText"
+ exports: ["QtQuick.Controls.impl/ClippedText 2.2"]
+ exportMetaObjectRevisions: [0]
+ Property { name: "clipX"; type: "double" }
+ Property { name: "clipY"; type: "double" }
+ Property { name: "clipWidth"; type: "double" }
+ Property { name: "clipHeight"; type: "double" }
+ }
+ Component {
name: "QQuickColor"
prototype: "QObject"
exports: ["QtQuick.Controls.impl/Color 2.3"]
@@ -57,6 +68,7 @@ Module {
exportMetaObjectRevisions: [0]
Property { name: "pen"; type: "QColor" }
Property { name: "fill"; type: "QColor" }
+ Property { name: "running"; type: "bool" }
}
Component {
name: "QQuickDefaultDial"
@@ -163,6 +175,13 @@ Module {
Property { name: "bottomPadding"; type: "double" }
}
Component {
+ name: "QQuickItemGroup"
+ defaultProperty: "data"
+ prototype: "QQuickImplicitSizeItem"
+ exports: ["QtQuick.Controls.impl/ItemGroup 2.2"]
+ exportMetaObjectRevisions: [0]
+ }
+ Component {
name: "QQuickMnemonicLabel"
defaultProperty: "data"
prototype: "QQuickText"
@@ -638,9 +657,10 @@ Module {
exports: [
"QtQuick.Templates/AbstractButton 2.0",
"QtQuick.Templates/AbstractButton 2.2",
- "QtQuick.Templates/AbstractButton 2.3"
+ "QtQuick.Templates/AbstractButton 2.3",
+ "QtQuick.Templates/AbstractButton 2.4"
]
- exportMetaObjectRevisions: [0, 2, 3]
+ exportMetaObjectRevisions: [0, 2, 3, 4]
Enum {
name: "Display"
values: {
@@ -656,10 +676,15 @@ Module {
Property { name: "checked"; type: "bool" }
Property { name: "checkable"; type: "bool" }
Property { name: "autoExclusive"; type: "bool" }
+ Property { name: "autoRepeat"; type: "bool" }
Property { name: "indicator"; type: "QQuickItem"; isPointer: true }
Property { name: "icon"; revision: 3; type: "QQuickIcon" }
Property { name: "display"; revision: 3; type: "Display" }
Property { name: "action"; revision: 3; type: "QQuickAction"; isPointer: true }
+ Property { name: "autoRepeatDelay"; revision: 4; type: "int" }
+ Property { name: "autoRepeatInterval"; revision: 4; type: "int" }
+ Property { name: "pressX"; revision: 4; type: "double"; isReadonly: true }
+ Property { name: "pressY"; revision: 4; type: "double"; isReadonly: true }
Signal { name: "pressed" }
Signal { name: "released" }
Signal { name: "canceled" }
@@ -670,6 +695,10 @@ Module {
Signal { name: "iconChanged"; revision: 3 }
Signal { name: "displayChanged"; revision: 3 }
Signal { name: "actionChanged"; revision: 3 }
+ Signal { name: "autoRepeatDelayChanged"; revision: 4 }
+ Signal { name: "autoRepeatIntervalChanged"; revision: 4 }
+ Signal { name: "pressXChanged"; revision: 4 }
+ Signal { name: "pressYChanged"; revision: 4 }
Method { name: "toggle" }
}
Component {
@@ -806,7 +835,6 @@ Module {
prototype: "QQuickAbstractButton"
exports: ["QtQuick.Templates/Button 2.0"]
exportMetaObjectRevisions: [0]
- Property { name: "autoRepeat"; type: "bool" }
Property { name: "highlighted"; type: "bool" }
Property { name: "flat"; type: "bool" }
}
@@ -816,19 +844,22 @@ Module {
exports: [
"QtQuick.Templates/ButtonGroup 2.0",
"QtQuick.Templates/ButtonGroup 2.1",
- "QtQuick.Templates/ButtonGroup 2.3"
+ "QtQuick.Templates/ButtonGroup 2.3",
+ "QtQuick.Templates/ButtonGroup 2.4"
]
- exportMetaObjectRevisions: [0, 1, 3]
+ exportMetaObjectRevisions: [0, 1, 3, 4]
attachedType: "QQuickButtonGroupAttached"
Property { name: "checkedButton"; type: "QQuickAbstractButton"; isPointer: true }
Property { name: "buttons"; type: "QQuickAbstractButton"; isList: true; isReadonly: true }
Property { name: "exclusive"; revision: 3; type: "bool" }
+ Property { name: "checkState"; revision: 4; type: "Qt::CheckState" }
Signal {
name: "clicked"
revision: 1
Parameter { name: "button"; type: "QQuickAbstractButton"; isPointer: true }
}
Signal { name: "exclusiveChanged"; revision: 3 }
+ Signal { name: "checkStateChanged"; revision: 4 }
Method {
name: "addButton"
Parameter { name: "button"; type: "QQuickAbstractButton"; isPointer: true }
@@ -847,19 +878,29 @@ Module {
name: "QQuickCheckBox"
defaultProperty: "data"
prototype: "QQuickAbstractButton"
- exports: ["QtQuick.Templates/CheckBox 2.0"]
- exportMetaObjectRevisions: [0]
+ exports: [
+ "QtQuick.Templates/CheckBox 2.0",
+ "QtQuick.Templates/CheckBox 2.4"
+ ]
+ exportMetaObjectRevisions: [0, 4]
Property { name: "tristate"; type: "bool" }
Property { name: "checkState"; type: "Qt::CheckState" }
+ Property { name: "nextCheckState"; revision: 4; type: "QJSValue" }
+ Signal { name: "nextCheckStateChanged"; revision: 4 }
}
Component {
name: "QQuickCheckDelegate"
defaultProperty: "data"
prototype: "QQuickItemDelegate"
- exports: ["QtQuick.Templates/CheckDelegate 2.0"]
- exportMetaObjectRevisions: [0]
+ exports: [
+ "QtQuick.Templates/CheckDelegate 2.0",
+ "QtQuick.Templates/CheckDelegate 2.4"
+ ]
+ exportMetaObjectRevisions: [0, 4]
Property { name: "tristate"; type: "bool" }
Property { name: "checkState"; type: "Qt::CheckState" }
+ Property { name: "nextCheckState"; revision: 4; type: "QJSValue" }
+ Signal { name: "nextCheckStateChanged"; revision: 4 }
}
Component {
name: "QQuickComboBox"
@@ -1117,13 +1158,13 @@ Module {
Signal { name: "accepted" }
Signal { name: "rejected" }
Signal { name: "helpRequested" }
- Signal { name: "applied"; revision: 3 }
- Signal { name: "reset"; revision: 3 }
- Signal { name: "discarded"; revision: 3 }
Signal {
name: "clicked"
Parameter { name: "button"; type: "QQuickAbstractButton"; isPointer: true }
}
+ Signal { name: "applied"; revision: 3 }
+ Signal { name: "reset"; revision: 3 }
+ Signal { name: "discarded"; revision: 3 }
Method {
name: "standardButton"
type: "QQuickAbstractButton*"
@@ -1179,8 +1220,11 @@ Module {
name: "QQuickLabel"
defaultProperty: "data"
prototype: "QQuickText"
- exports: ["QtQuick.Templates/Label 2.0"]
- exportMetaObjectRevisions: [0]
+ exports: [
+ "QtQuick.Templates/Label 2.0",
+ "QtQuick.Templates/Label 2.3"
+ ]
+ exportMetaObjectRevisions: [0, 3]
Property { name: "font"; type: "QFont" }
Property { name: "background"; type: "QQuickItem"; isPointer: true }
Property { name: "palette"; revision: 3; type: "QPalette" }
@@ -1192,19 +1236,19 @@ Module {
prototype: "QQuickPopup"
exports: ["QtQuick.Templates/Menu 2.0", "QtQuick.Templates/Menu 2.3"]
exportMetaObjectRevisions: [0, 3]
- Property { name: "count"; revision: 3; type: "int"; isReadonly: true }
Property { name: "contentModel"; type: "QVariant"; isReadonly: true }
Property { name: "contentData"; type: "QObject"; isList: true; isReadonly: true }
Property { name: "title"; type: "string" }
+ Property { name: "count"; revision: 3; type: "int"; isReadonly: true }
Property { name: "cascade"; revision: 3; type: "bool" }
Property { name: "overlap"; revision: 3; type: "double" }
Property { name: "delegate"; revision: 3; type: "QQmlComponent"; isPointer: true }
Property { name: "currentIndex"; revision: 3; type: "int" }
- Signal { name: "countChanged"; revision: 3 }
Signal {
name: "titleChanged"
Parameter { name: "title"; type: "string" }
}
+ Signal { name: "countChanged"; revision: 3 }
Signal {
name: "cascadeChanged"
revision: 3
@@ -1493,9 +1537,7 @@ Module {
Property { name: "rightPadding"; type: "double" }
Property { name: "bottomPadding"; type: "double" }
Property { name: "locale"; type: "QLocale" }
- Property { name: "mirrored"; revision: 3; type: "bool"; isReadonly: true }
Property { name: "font"; type: "QFont" }
- Property { name: "palette"; revision: 3; type: "QPalette" }
Property { name: "parent"; type: "QQuickItem"; isPointer: true }
Property { name: "background"; type: "QQuickItem"; isPointer: true }
Property { name: "contentItem"; type: "QQuickItem"; isPointer: true }
@@ -1507,8 +1549,6 @@ Module {
Property { name: "modal"; type: "bool" }
Property { name: "dim"; type: "bool" }
Property { name: "visible"; type: "bool" }
- Property { name: "enabled"; revision: 3; type: "bool" }
- Property { name: "opened"; revision: 3; type: "bool"; isReadonly: true }
Property { name: "opacity"; type: "double" }
Property { name: "scale"; type: "double" }
Property { name: "closePolicy"; type: "ClosePolicy" }
@@ -1516,19 +1556,23 @@ Module {
Property { name: "enter"; type: "QQuickTransition"; isPointer: true }
Property { name: "exit"; type: "QQuickTransition"; isPointer: true }
Property { name: "spacing"; revision: 1; type: "double" }
+ Property { name: "opened"; revision: 3; type: "bool"; isReadonly: true }
+ Property { name: "mirrored"; revision: 3; type: "bool"; isReadonly: true }
+ Property { name: "enabled"; revision: 3; type: "bool" }
+ Property { name: "palette"; revision: 3; type: "QPalette" }
Signal { name: "opened" }
Signal { name: "closed" }
Signal { name: "aboutToShow" }
Signal { name: "aboutToHide" }
- Signal { name: "mirroredChanged"; revision: 3 }
- Signal { name: "paletteChanged"; revision: 3 }
- Signal { name: "enabledChanged"; revision: 3 }
- Signal { name: "openedChanged"; revision: 3 }
Signal {
name: "windowChanged"
Parameter { name: "window"; type: "QQuickWindow"; isPointer: true }
}
Signal { name: "spacingChanged"; revision: 1 }
+ Signal { name: "openedChanged"; revision: 3 }
+ Signal { name: "mirroredChanged"; revision: 3 }
+ Signal { name: "enabledChanged"; revision: 3 }
+ Signal { name: "paletteChanged"; revision: 3 }
Method { name: "open" }
Method { name: "close" }
Method {
@@ -1618,7 +1662,7 @@ Module {
defaultProperty: "data"
prototype: "QQuickButton"
exports: ["QtQuick.Templates/RoundButton 2.1"]
- exportMetaObjectRevisions: [1]
+ exportMetaObjectRevisions: [0]
Property { name: "radius"; type: "double" }
}
Component {
@@ -1628,9 +1672,10 @@ Module {
exports: [
"QtQuick.Templates/ScrollBar 2.0",
"QtQuick.Templates/ScrollBar 2.2",
- "QtQuick.Templates/ScrollBar 2.3"
+ "QtQuick.Templates/ScrollBar 2.3",
+ "QtQuick.Templates/ScrollBar 2.4"
]
- exportMetaObjectRevisions: [0, 2, 3]
+ exportMetaObjectRevisions: [0, 2, 3, 4]
attachedType: "QQuickScrollBarAttached"
Enum {
name: "SnapMode"
@@ -1659,9 +1704,15 @@ Module {
Property { name: "policy"; revision: 2; type: "Policy" }
Property { name: "horizontal"; revision: 3; type: "bool"; isReadonly: true }
Property { name: "vertical"; revision: 3; type: "bool"; isReadonly: true }
+ Property { name: "minimumSize"; revision: 4; type: "double" }
+ Property { name: "visualSize"; revision: 4; type: "double"; isReadonly: true }
+ Property { name: "visualPosition"; revision: 4; type: "double"; isReadonly: true }
Signal { name: "snapModeChanged"; revision: 2 }
Signal { name: "interactiveChanged"; revision: 2 }
Signal { name: "policyChanged"; revision: 2 }
+ Signal { name: "minimumSizeChanged"; revision: 4 }
+ Signal { name: "visualSizeChanged"; revision: 4 }
+ Signal { name: "visualPositionChanged"; revision: 4 }
Method { name: "increase" }
Method { name: "decrease" }
Method {
@@ -1685,9 +1736,10 @@ Module {
prototype: "QQuickControl"
exports: [
"QtQuick.Templates/ScrollIndicator 2.0",
- "QtQuick.Templates/ScrollIndicator 2.3"
+ "QtQuick.Templates/ScrollIndicator 2.3",
+ "QtQuick.Templates/ScrollIndicator 2.4"
]
- exportMetaObjectRevisions: [0, 3]
+ exportMetaObjectRevisions: [0, 3, 4]
attachedType: "QQuickScrollIndicatorAttached"
Property { name: "size"; type: "double" }
Property { name: "position"; type: "double" }
@@ -1695,6 +1747,12 @@ Module {
Property { name: "orientation"; type: "Qt::Orientation" }
Property { name: "horizontal"; revision: 3; type: "bool"; isReadonly: true }
Property { name: "vertical"; revision: 3; type: "bool"; isReadonly: true }
+ Property { name: "minimumSize"; revision: 4; type: "double" }
+ Property { name: "visualSize"; revision: 4; type: "double"; isReadonly: true }
+ Property { name: "visualPosition"; revision: 4; type: "double"; isReadonly: true }
+ Signal { name: "minimumSizeChanged"; revision: 4 }
+ Signal { name: "visualSizeChanged"; revision: 4 }
+ Signal { name: "visualPositionChanged"; revision: 4 }
Method {
name: "setSize"
Parameter { name: "size"; type: "double" }
@@ -1748,11 +1806,11 @@ Module {
Property { name: "stepSize"; type: "double" }
Property { name: "snapMode"; type: "SnapMode" }
Property { name: "pressed"; type: "bool" }
- Property { name: "horizontal"; revision: 3; type: "bool"; isReadonly: true }
- Property { name: "vertical"; revision: 3; type: "bool"; isReadonly: true }
Property { name: "orientation"; type: "Qt::Orientation" }
Property { name: "handle"; type: "QQuickItem"; isPointer: true }
Property { name: "live"; revision: 2; type: "bool" }
+ Property { name: "horizontal"; revision: 3; type: "bool"; isReadonly: true }
+ Property { name: "vertical"; revision: 3; type: "bool"; isReadonly: true }
Signal { name: "moved"; revision: 2 }
Signal { name: "liveChanged"; revision: 2 }
Method { name: "increase" }
@@ -1772,9 +1830,10 @@ Module {
"QtQuick.Templates/SpinBox 2.0",
"QtQuick.Templates/SpinBox 2.1",
"QtQuick.Templates/SpinBox 2.2",
- "QtQuick.Templates/SpinBox 2.3"
+ "QtQuick.Templates/SpinBox 2.3",
+ "QtQuick.Templates/SpinBox 2.4"
]
- exportMetaObjectRevisions: [0, 1, 2, 3]
+ exportMetaObjectRevisions: [0, 1, 2, 3, 4]
Property { name: "from"; type: "int" }
Property { name: "to"; type: "int" }
Property { name: "value"; type: "int" }
@@ -1788,10 +1847,12 @@ Module {
Property { name: "inputMethodHints"; revision: 2; type: "Qt::InputMethodHints" }
Property { name: "inputMethodComposing"; revision: 2; type: "bool"; isReadonly: true }
Property { name: "wrap"; revision: 3; type: "bool" }
+ Property { name: "displayText"; revision: 4; type: "string"; isReadonly: true }
Signal { name: "valueModified"; revision: 2 }
Signal { name: "inputMethodHintsChanged"; revision: 2 }
Signal { name: "inputMethodComposingChanged"; revision: 2 }
Signal { name: "wrapChanged"; revision: 3 }
+ Signal { name: "displayTextChanged"; revision: 4 }
Method { name: "increase" }
Method { name: "decrease" }
}
@@ -2041,9 +2102,10 @@ Module {
prototype: "QQuickTextEdit"
exports: [
"QtQuick.Templates/TextArea 2.0",
- "QtQuick.Templates/TextArea 2.1"
+ "QtQuick.Templates/TextArea 2.1",
+ "QtQuick.Templates/TextArea 2.3"
]
- exportMetaObjectRevisions: [0, 1]
+ exportMetaObjectRevisions: [0, 1, 3]
attachedType: "QQuickTextAreaAttached"
Property { name: "font"; type: "QFont" }
Property { name: "implicitWidth"; type: "double" }
@@ -2085,9 +2147,10 @@ Module {
prototype: "QQuickTextInput"
exports: [
"QtQuick.Templates/TextField 2.0",
- "QtQuick.Templates/TextField 2.1"
+ "QtQuick.Templates/TextField 2.1",
+ "QtQuick.Templates/TextField 2.3"
]
- exportMetaObjectRevisions: [0, 1]
+ exportMetaObjectRevisions: [0, 1, 3]
Property { name: "font"; type: "QFont" }
Property { name: "implicitWidth"; type: "double" }
Property { name: "implicitHeight"; type: "double" }
diff --git a/src/imports/controls/qmldir b/src/imports/controls/qmldir
index 9930b8d8..de40013f 100644
--- a/src/imports/controls/qmldir
+++ b/src/imports/controls/qmldir
@@ -1,5 +1,5 @@
module QtQuick.Controls
plugin qtquickcontrols2plugin
classname QtQuickControls2Plugin
-depends QtQuick.Templates 2.3
+depends QtQuick.Templates 2.4
designersupported
diff --git a/src/imports/controls/universal/DialogButtonBox.qml b/src/imports/controls/universal/DialogButtonBox.qml
index fc63f8f1..87e31f66 100644
--- a/src/imports/controls/universal/DialogButtonBox.qml
+++ b/src/imports/controls/universal/DialogButtonBox.qml
@@ -58,7 +58,7 @@ T.DialogButtonBox {
}
contentItem: ListView {
- implicitWidth: contentWidth
+ implicitWidth: control.count === 1 ? 200 : contentWidth
implicitHeight: 32
model: control.contentModel
diff --git a/src/imports/controls/universal/qmldir b/src/imports/controls/universal/qmldir
index 271eafa9..6555626f 100644
--- a/src/imports/controls/universal/qmldir
+++ b/src/imports/controls/universal/qmldir
@@ -1,4 +1,4 @@
module QtQuick.Controls.Universal
plugin qtquickcontrols2universalstyleplugin
classname QtQuickControls2UniversalStylePlugin
-depends QtQuick.Controls 2.3
+depends QtQuick.Controls 2.4
diff --git a/src/imports/controls/universal/universal.pro b/src/imports/controls/universal/universal.pro
index 016fa085..c437328c 100644
--- a/src/imports/controls/universal/universal.pro
+++ b/src/imports/controls/universal/universal.pro
@@ -1,6 +1,6 @@
TARGET = qtquickcontrols2universalstyleplugin
TARGETPATH = QtQuick/Controls.2/Universal
-IMPORT_VERSION = 2.3
+IMPORT_VERSION = 2.4
QT += qml quick
QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private
diff --git a/src/imports/templates/doc/src/qtquicktemplates2-qmltypes.qdoc b/src/imports/templates/doc/src/qtquicktemplates2-qmltypes.qdoc
index 52796425..695156b4 100644
--- a/src/imports/templates/doc/src/qtquicktemplates2-qmltypes.qdoc
+++ b/src/imports/templates/doc/src/qtquicktemplates2-qmltypes.qdoc
@@ -26,7 +26,7 @@
****************************************************************************/
/*!
- \qmlmodule QtQuick.Templates 2.3
+ \qmlmodule QtQuick.Templates 2.4
\title Qt Quick Templates 2 QML Types
\ingroup qmlmodules
\brief Provides QML types for templates (Qt Quick Templates).
@@ -38,7 +38,7 @@
\c .qml file:
\badcode
- import QtQuick.Templates 2.3 as T
+ import QtQuick.Templates 2.4 as T
\endcode
For the sake of clarity, there is a one-to-one mapping between the types
diff --git a/src/imports/templates/plugins.qmltypes b/src/imports/templates/plugins.qmltypes
index b951182f..ed609c1f 100644
--- a/src/imports/templates/plugins.qmltypes
+++ b/src/imports/templates/plugins.qmltypes
@@ -4,7 +4,7 @@ import QtQuick.tooling 1.2
// It is used for QML tooling purposes only.
//
// This file was auto-generated by:
-// 'qmlplugindump -nonrelocatable -dependencies dependencies.json QtQuick.Templates 2.3'
+// 'qmlplugindump -nonrelocatable -dependencies dependencies.json QtQuick.Templates 2.4'
Module {
dependencies: ["QtQuick 2.9", "QtQuick.Window 2.2"]
@@ -15,9 +15,10 @@ Module {
exports: [
"QtQuick.Templates/AbstractButton 2.0",
"QtQuick.Templates/AbstractButton 2.2",
- "QtQuick.Templates/AbstractButton 2.3"
+ "QtQuick.Templates/AbstractButton 2.3",
+ "QtQuick.Templates/AbstractButton 2.4"
]
- exportMetaObjectRevisions: [0, 2, 3]
+ exportMetaObjectRevisions: [0, 2, 3, 4]
Enum {
name: "Display"
values: {
@@ -33,10 +34,15 @@ Module {
Property { name: "checked"; type: "bool" }
Property { name: "checkable"; type: "bool" }
Property { name: "autoExclusive"; type: "bool" }
+ Property { name: "autoRepeat"; type: "bool" }
Property { name: "indicator"; type: "QQuickItem"; isPointer: true }
Property { name: "icon"; revision: 3; type: "QQuickIcon" }
Property { name: "display"; revision: 3; type: "Display" }
Property { name: "action"; revision: 3; type: "QQuickAction"; isPointer: true }
+ Property { name: "autoRepeatDelay"; revision: 4; type: "int" }
+ Property { name: "autoRepeatInterval"; revision: 4; type: "int" }
+ Property { name: "pressX"; revision: 4; type: "double"; isReadonly: true }
+ Property { name: "pressY"; revision: 4; type: "double"; isReadonly: true }
Signal { name: "pressed" }
Signal { name: "released" }
Signal { name: "canceled" }
@@ -47,6 +53,10 @@ Module {
Signal { name: "iconChanged"; revision: 3 }
Signal { name: "displayChanged"; revision: 3 }
Signal { name: "actionChanged"; revision: 3 }
+ Signal { name: "autoRepeatDelayChanged"; revision: 4 }
+ Signal { name: "autoRepeatIntervalChanged"; revision: 4 }
+ Signal { name: "pressXChanged"; revision: 4 }
+ Signal { name: "pressYChanged"; revision: 4 }
Method { name: "toggle" }
}
Component {
@@ -183,7 +193,6 @@ Module {
prototype: "QQuickAbstractButton"
exports: ["QtQuick.Templates/Button 2.0"]
exportMetaObjectRevisions: [0]
- Property { name: "autoRepeat"; type: "bool" }
Property { name: "highlighted"; type: "bool" }
Property { name: "flat"; type: "bool" }
}
@@ -193,19 +202,22 @@ Module {
exports: [
"QtQuick.Templates/ButtonGroup 2.0",
"QtQuick.Templates/ButtonGroup 2.1",
- "QtQuick.Templates/ButtonGroup 2.3"
+ "QtQuick.Templates/ButtonGroup 2.3",
+ "QtQuick.Templates/ButtonGroup 2.4"
]
- exportMetaObjectRevisions: [0, 1, 3]
+ exportMetaObjectRevisions: [0, 1, 3, 4]
attachedType: "QQuickButtonGroupAttached"
Property { name: "checkedButton"; type: "QQuickAbstractButton"; isPointer: true }
Property { name: "buttons"; type: "QQuickAbstractButton"; isList: true; isReadonly: true }
Property { name: "exclusive"; revision: 3; type: "bool" }
+ Property { name: "checkState"; revision: 4; type: "Qt::CheckState" }
Signal {
name: "clicked"
revision: 1
Parameter { name: "button"; type: "QQuickAbstractButton"; isPointer: true }
}
Signal { name: "exclusiveChanged"; revision: 3 }
+ Signal { name: "checkStateChanged"; revision: 4 }
Method {
name: "addButton"
Parameter { name: "button"; type: "QQuickAbstractButton"; isPointer: true }
@@ -224,19 +236,29 @@ Module {
name: "QQuickCheckBox"
defaultProperty: "data"
prototype: "QQuickAbstractButton"
- exports: ["QtQuick.Templates/CheckBox 2.0"]
- exportMetaObjectRevisions: [0]
+ exports: [
+ "QtQuick.Templates/CheckBox 2.0",
+ "QtQuick.Templates/CheckBox 2.4"
+ ]
+ exportMetaObjectRevisions: [0, 4]
Property { name: "tristate"; type: "bool" }
Property { name: "checkState"; type: "Qt::CheckState" }
+ Property { name: "nextCheckState"; revision: 4; type: "QJSValue" }
+ Signal { name: "nextCheckStateChanged"; revision: 4 }
}
Component {
name: "QQuickCheckDelegate"
defaultProperty: "data"
prototype: "QQuickItemDelegate"
- exports: ["QtQuick.Templates/CheckDelegate 2.0"]
- exportMetaObjectRevisions: [0]
+ exports: [
+ "QtQuick.Templates/CheckDelegate 2.0",
+ "QtQuick.Templates/CheckDelegate 2.4"
+ ]
+ exportMetaObjectRevisions: [0, 4]
Property { name: "tristate"; type: "bool" }
Property { name: "checkState"; type: "Qt::CheckState" }
+ Property { name: "nextCheckState"; revision: 4; type: "QJSValue" }
+ Signal { name: "nextCheckStateChanged"; revision: 4 }
}
Component {
name: "QQuickComboBox"
@@ -494,13 +516,13 @@ Module {
Signal { name: "accepted" }
Signal { name: "rejected" }
Signal { name: "helpRequested" }
- Signal { name: "applied"; revision: 3 }
- Signal { name: "reset"; revision: 3 }
- Signal { name: "discarded"; revision: 3 }
Signal {
name: "clicked"
Parameter { name: "button"; type: "QQuickAbstractButton"; isPointer: true }
}
+ Signal { name: "applied"; revision: 3 }
+ Signal { name: "reset"; revision: 3 }
+ Signal { name: "discarded"; revision: 3 }
Method {
name: "standardButton"
type: "QQuickAbstractButton*"
@@ -556,8 +578,11 @@ Module {
name: "QQuickLabel"
defaultProperty: "data"
prototype: "QQuickText"
- exports: ["QtQuick.Templates/Label 2.0"]
- exportMetaObjectRevisions: [0]
+ exports: [
+ "QtQuick.Templates/Label 2.0",
+ "QtQuick.Templates/Label 2.3"
+ ]
+ exportMetaObjectRevisions: [0, 3]
Property { name: "font"; type: "QFont" }
Property { name: "background"; type: "QQuickItem"; isPointer: true }
Property { name: "palette"; revision: 3; type: "QPalette" }
@@ -569,19 +594,19 @@ Module {
prototype: "QQuickPopup"
exports: ["QtQuick.Templates/Menu 2.0", "QtQuick.Templates/Menu 2.3"]
exportMetaObjectRevisions: [0, 3]
- Property { name: "count"; revision: 3; type: "int"; isReadonly: true }
Property { name: "contentModel"; type: "QVariant"; isReadonly: true }
Property { name: "contentData"; type: "QObject"; isList: true; isReadonly: true }
Property { name: "title"; type: "string" }
+ Property { name: "count"; revision: 3; type: "int"; isReadonly: true }
Property { name: "cascade"; revision: 3; type: "bool" }
Property { name: "overlap"; revision: 3; type: "double" }
Property { name: "delegate"; revision: 3; type: "QQmlComponent"; isPointer: true }
Property { name: "currentIndex"; revision: 3; type: "int" }
- Signal { name: "countChanged"; revision: 3 }
Signal {
name: "titleChanged"
Parameter { name: "title"; type: "string" }
}
+ Signal { name: "countChanged"; revision: 3 }
Signal {
name: "cascadeChanged"
revision: 3
@@ -870,9 +895,7 @@ Module {
Property { name: "rightPadding"; type: "double" }
Property { name: "bottomPadding"; type: "double" }
Property { name: "locale"; type: "QLocale" }
- Property { name: "mirrored"; revision: 3; type: "bool"; isReadonly: true }
Property { name: "font"; type: "QFont" }
- Property { name: "palette"; revision: 3; type: "QPalette" }
Property { name: "parent"; type: "QQuickItem"; isPointer: true }
Property { name: "background"; type: "QQuickItem"; isPointer: true }
Property { name: "contentItem"; type: "QQuickItem"; isPointer: true }
@@ -884,8 +907,6 @@ Module {
Property { name: "modal"; type: "bool" }
Property { name: "dim"; type: "bool" }
Property { name: "visible"; type: "bool" }
- Property { name: "enabled"; revision: 3; type: "bool" }
- Property { name: "opened"; revision: 3; type: "bool"; isReadonly: true }
Property { name: "opacity"; type: "double" }
Property { name: "scale"; type: "double" }
Property { name: "closePolicy"; type: "ClosePolicy" }
@@ -893,19 +914,23 @@ Module {
Property { name: "enter"; type: "QQuickTransition"; isPointer: true }
Property { name: "exit"; type: "QQuickTransition"; isPointer: true }
Property { name: "spacing"; revision: 1; type: "double" }
+ Property { name: "opened"; revision: 3; type: "bool"; isReadonly: true }
+ Property { name: "mirrored"; revision: 3; type: "bool"; isReadonly: true }
+ Property { name: "enabled"; revision: 3; type: "bool" }
+ Property { name: "palette"; revision: 3; type: "QPalette" }
Signal { name: "opened" }
Signal { name: "closed" }
Signal { name: "aboutToShow" }
Signal { name: "aboutToHide" }
- Signal { name: "mirroredChanged"; revision: 3 }
- Signal { name: "paletteChanged"; revision: 3 }
- Signal { name: "enabledChanged"; revision: 3 }
- Signal { name: "openedChanged"; revision: 3 }
Signal {
name: "windowChanged"
Parameter { name: "window"; type: "QQuickWindow"; isPointer: true }
}
Signal { name: "spacingChanged"; revision: 1 }
+ Signal { name: "openedChanged"; revision: 3 }
+ Signal { name: "mirroredChanged"; revision: 3 }
+ Signal { name: "enabledChanged"; revision: 3 }
+ Signal { name: "paletteChanged"; revision: 3 }
Method { name: "open" }
Method { name: "close" }
Method {
@@ -995,7 +1020,7 @@ Module {
defaultProperty: "data"
prototype: "QQuickButton"
exports: ["QtQuick.Templates/RoundButton 2.1"]
- exportMetaObjectRevisions: [1]
+ exportMetaObjectRevisions: [0]
Property { name: "radius"; type: "double" }
}
Component {
@@ -1005,9 +1030,10 @@ Module {
exports: [
"QtQuick.Templates/ScrollBar 2.0",
"QtQuick.Templates/ScrollBar 2.2",
- "QtQuick.Templates/ScrollBar 2.3"
+ "QtQuick.Templates/ScrollBar 2.3",
+ "QtQuick.Templates/ScrollBar 2.4"
]
- exportMetaObjectRevisions: [0, 2, 3]
+ exportMetaObjectRevisions: [0, 2, 3, 4]
attachedType: "QQuickScrollBarAttached"
Enum {
name: "SnapMode"
@@ -1036,9 +1062,15 @@ Module {
Property { name: "policy"; revision: 2; type: "Policy" }
Property { name: "horizontal"; revision: 3; type: "bool"; isReadonly: true }
Property { name: "vertical"; revision: 3; type: "bool"; isReadonly: true }
+ Property { name: "minimumSize"; revision: 4; type: "double" }
+ Property { name: "visualSize"; revision: 4; type: "double"; isReadonly: true }
+ Property { name: "visualPosition"; revision: 4; type: "double"; isReadonly: true }
Signal { name: "snapModeChanged"; revision: 2 }
Signal { name: "interactiveChanged"; revision: 2 }
Signal { name: "policyChanged"; revision: 2 }
+ Signal { name: "minimumSizeChanged"; revision: 4 }
+ Signal { name: "visualSizeChanged"; revision: 4 }
+ Signal { name: "visualPositionChanged"; revision: 4 }
Method { name: "increase" }
Method { name: "decrease" }
Method {
@@ -1062,9 +1094,10 @@ Module {
prototype: "QQuickControl"
exports: [
"QtQuick.Templates/ScrollIndicator 2.0",
- "QtQuick.Templates/ScrollIndicator 2.3"
+ "QtQuick.Templates/ScrollIndicator 2.3",
+ "QtQuick.Templates/ScrollIndicator 2.4"
]
- exportMetaObjectRevisions: [0, 3]
+ exportMetaObjectRevisions: [0, 3, 4]
attachedType: "QQuickScrollIndicatorAttached"
Property { name: "size"; type: "double" }
Property { name: "position"; type: "double" }
@@ -1072,6 +1105,12 @@ Module {
Property { name: "orientation"; type: "Qt::Orientation" }
Property { name: "horizontal"; revision: 3; type: "bool"; isReadonly: true }
Property { name: "vertical"; revision: 3; type: "bool"; isReadonly: true }
+ Property { name: "minimumSize"; revision: 4; type: "double" }
+ Property { name: "visualSize"; revision: 4; type: "double"; isReadonly: true }
+ Property { name: "visualPosition"; revision: 4; type: "double"; isReadonly: true }
+ Signal { name: "minimumSizeChanged"; revision: 4 }
+ Signal { name: "visualSizeChanged"; revision: 4 }
+ Signal { name: "visualPositionChanged"; revision: 4 }
Method {
name: "setSize"
Parameter { name: "size"; type: "double" }
@@ -1125,11 +1164,11 @@ Module {
Property { name: "stepSize"; type: "double" }
Property { name: "snapMode"; type: "SnapMode" }
Property { name: "pressed"; type: "bool" }
- Property { name: "horizontal"; revision: 3; type: "bool"; isReadonly: true }
- Property { name: "vertical"; revision: 3; type: "bool"; isReadonly: true }
Property { name: "orientation"; type: "Qt::Orientation" }
Property { name: "handle"; type: "QQuickItem"; isPointer: true }
Property { name: "live"; revision: 2; type: "bool" }
+ Property { name: "horizontal"; revision: 3; type: "bool"; isReadonly: true }
+ Property { name: "vertical"; revision: 3; type: "bool"; isReadonly: true }
Signal { name: "moved"; revision: 2 }
Signal { name: "liveChanged"; revision: 2 }
Method { name: "increase" }
@@ -1149,9 +1188,10 @@ Module {
"QtQuick.Templates/SpinBox 2.0",
"QtQuick.Templates/SpinBox 2.1",
"QtQuick.Templates/SpinBox 2.2",
- "QtQuick.Templates/SpinBox 2.3"
+ "QtQuick.Templates/SpinBox 2.3",
+ "QtQuick.Templates/SpinBox 2.4"
]
- exportMetaObjectRevisions: [0, 1, 2, 3]
+ exportMetaObjectRevisions: [0, 1, 2, 3, 4]
Property { name: "from"; type: "int" }
Property { name: "to"; type: "int" }
Property { name: "value"; type: "int" }
@@ -1165,10 +1205,12 @@ Module {
Property { name: "inputMethodHints"; revision: 2; type: "Qt::InputMethodHints" }
Property { name: "inputMethodComposing"; revision: 2; type: "bool"; isReadonly: true }
Property { name: "wrap"; revision: 3; type: "bool" }
+ Property { name: "displayText"; revision: 4; type: "string"; isReadonly: true }
Signal { name: "valueModified"; revision: 2 }
Signal { name: "inputMethodHintsChanged"; revision: 2 }
Signal { name: "inputMethodComposingChanged"; revision: 2 }
Signal { name: "wrapChanged"; revision: 3 }
+ Signal { name: "displayTextChanged"; revision: 4 }
Method { name: "increase" }
Method { name: "decrease" }
}
@@ -1418,9 +1460,10 @@ Module {
prototype: "QQuickTextEdit"
exports: [
"QtQuick.Templates/TextArea 2.0",
- "QtQuick.Templates/TextArea 2.1"
+ "QtQuick.Templates/TextArea 2.1",
+ "QtQuick.Templates/TextArea 2.3"
]
- exportMetaObjectRevisions: [0, 1]
+ exportMetaObjectRevisions: [0, 1, 3]
attachedType: "QQuickTextAreaAttached"
Property { name: "font"; type: "QFont" }
Property { name: "implicitWidth"; type: "double" }
@@ -1462,9 +1505,10 @@ Module {
prototype: "QQuickTextInput"
exports: [
"QtQuick.Templates/TextField 2.0",
- "QtQuick.Templates/TextField 2.1"
+ "QtQuick.Templates/TextField 2.1",
+ "QtQuick.Templates/TextField 2.3"
]
- exportMetaObjectRevisions: [0, 1]
+ exportMetaObjectRevisions: [0, 1, 3]
Property { name: "font"; type: "QFont" }
Property { name: "implicitWidth"; type: "double" }
Property { name: "implicitHeight"; type: "double" }
diff --git a/src/imports/templates/templates.pro b/src/imports/templates/templates.pro
index 9a95812b..b505dceb 100644
--- a/src/imports/templates/templates.pro
+++ b/src/imports/templates/templates.pro
@@ -1,6 +1,6 @@
TARGET = qtquicktemplates2plugin
TARGETPATH = QtQuick/Templates.2
-IMPORT_VERSION = 2.3
+IMPORT_VERSION = 2.4
QT += qml quick
QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private
diff --git a/src/quicktemplates2/qquickdeferredexecute.cpp b/src/quicktemplates2/qquickdeferredexecute.cpp
index ca6953bc..b298a81d 100644
--- a/src/quicktemplates2/qquickdeferredexecute.cpp
+++ b/src/quicktemplates2/qquickdeferredexecute.cpp
@@ -55,9 +55,8 @@ static inline uint qHash(QObject *object, const QString &propertyName)
Q_GLOBAL_STATIC(DeferredStates, deferredStates)
-static void cancelDeferred(QObject *object, int propertyIndex)
+static void cancelDeferred(QQmlData *ddata, int propertyIndex)
{
- QQmlData *ddata = QQmlData::get(object);
auto dit = ddata->deferredData.rbegin();
while (dit != ddata->deferredData.rend()) {
(*dit)->bindings.remove(propertyIndex);
@@ -102,7 +101,7 @@ static bool beginDeferred(QQmlEnginePrivate *enginePriv, const QQmlProperty &pro
// Cleanup any remaining deferred bindings for this property, also in inner contexts,
// to avoid executing them later and overriding the property that was just populated.
- cancelDeferred(object, propertyIndex);
+ cancelDeferred(ddata, propertyIndex);
break;
}
@@ -128,7 +127,9 @@ void beginDeferred(QObject *object, const QString &property)
void cancelDeferred(QObject *object, const QString &property)
{
- cancelDeferred(object, QQmlProperty(object, property).index());
+ QQmlData *data = QQmlData::get(object);
+ if (data)
+ cancelDeferred(data, QQmlProperty(object, property).index());
}
void completeDeferred(QObject *object, const QString &property)
diff --git a/src/quicktemplates2/qquickdialogbuttonbox.cpp b/src/quicktemplates2/qquickdialogbuttonbox.cpp
index 70425c40..a69b006f 100644
--- a/src/quicktemplates2/qquickdialogbuttonbox.cpp
+++ b/src/quicktemplates2/qquickdialogbuttonbox.cpp
@@ -221,8 +221,8 @@ void QQuickDialogButtonBoxPrivate::resizeContent()
QRectF geometry = q->boundingRect().adjusted(q->leftPadding(), q->topPadding(), -q->rightPadding(), -q->bottomPadding());
if (alignment != 0) {
- qreal cw = (alignment & Qt::AlignHorizontal_Mask) == 0 ? q->availableWidth() : contentItem->implicitWidth();
- qreal ch = (alignment & Qt::AlignVertical_Mask) == 0 ? q->availableHeight() : contentItem->implicitHeight();
+ qreal cw = (alignment & Qt::AlignHorizontal_Mask) == 0 ? q->availableWidth() : contentItem->property("contentWidth").toReal();
+ qreal ch = (alignment & Qt::AlignVertical_Mask) == 0 ? q->availableHeight() : contentItem->property("contentHeight").toReal();
geometry = alignedRect(q->isMirrored() ? Qt::RightToLeft : Qt::LeftToRight, alignment, QSizeF(cw, ch), geometry);
}
diff --git a/tests/auto/controls/data/tst_dialogbuttonbox.qml b/tests/auto/controls/data/tst_dialogbuttonbox.qml
index 7d343cc6..27989703 100644
--- a/tests/auto/controls/data/tst_dialogbuttonbox.qml
+++ b/tests/auto/controls/data/tst_dialogbuttonbox.qml
@@ -220,4 +220,32 @@ TestCase {
verify(button2)
compare(button2.DialogButtonBox.buttonRole, data.button2Role)
}
+
+ function test_implicitSize_data() {
+ return [
+ { tag: "Ok", standardButtons: DialogButtonBox.Ok },
+ { tag: "Yes|No", standardButtons: DialogButtonBox.Yes | DialogButtonBox.No }
+ ]
+ }
+
+ // QTBUG-59719
+ function test_implicitSize(data) {
+ var control = createTemporaryObject(buttonBox, testCase, {standardButtons: data.standardButtons})
+ verify(control)
+
+ var listView = control.contentItem
+ verify(listView && listView.hasOwnProperty("contentWidth"))
+ waitForRendering(listView)
+
+ var implicitContentWidth = control.leftPadding + control.rightPadding
+ for (var i = 0; i < listView.contentItem.children.length; ++i) {
+ var button = listView.contentItem.children[i]
+ if (!button.hasOwnProperty("text"))
+ continue
+ implicitContentWidth += button.implicitWidth
+ }
+
+ verify(implicitContentWidth > control.leftPadding + control.rightPadding)
+ verify(control.implicitWidth >= implicitContentWidth, qsTr("implicit width (%1) is less than content width (%2)").arg(control.implicitWidth).arg(implicitContentWidth))
+ }
}