aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/imports/controls/Button.qml8
-rw-r--r--src/imports/controls/CheckBox.qml2
-rw-r--r--src/imports/controls/CheckDelegate.qml4
-rw-r--r--src/imports/controls/CheckIndicator.qml4
-rw-r--r--src/imports/controls/ComboBox.qml4
-rw-r--r--src/imports/controls/ItemDelegate.qml4
-rw-r--r--src/imports/controls/MenuItem.qml2
-rw-r--r--src/imports/controls/RadioButton.qml2
-rw-r--r--src/imports/controls/RadioDelegate.qml4
-rw-r--r--src/imports/controls/RadioIndicator.qml4
-rw-r--r--src/imports/controls/SwipeDelegate.qml6
-rw-r--r--src/imports/controls/TabButton.qml4
-rw-r--r--src/imports/controls/ToolButton.qml4
-rw-r--r--src/imports/controls/doc/snippets/qtquickcontrols2-button-pressed.qml2
-rw-r--r--src/imports/controls/doc/snippets/qtquickcontrols2-tooltip.qml2
-rw-r--r--src/imports/controls/material/Button.qml4
-rw-r--r--src/imports/controls/material/CheckDelegate.qml4
-rw-r--r--src/imports/controls/material/CheckIndicator.qml2
-rw-r--r--src/imports/controls/material/ComboBox.qml4
-rw-r--r--src/imports/controls/material/ItemDelegate.qml4
-rw-r--r--src/imports/controls/material/MenuItem.qml4
-rw-r--r--src/imports/controls/material/RadioDelegate.qml4
-rw-r--r--src/imports/controls/material/RadioIndicator.qml6
-rw-r--r--src/imports/controls/material/SwipeDelegate.qml6
-rw-r--r--src/imports/controls/material/TabButton.qml2
-rw-r--r--src/imports/controls/material/ToolButton.qml4
-rw-r--r--src/imports/controls/universal/Button.qml2
-rw-r--r--src/imports/controls/universal/CheckDelegate.qml4
-rw-r--r--src/imports/controls/universal/CheckIndicator.qml6
-rw-r--r--src/imports/controls/universal/ComboBox.qml6
-rw-r--r--src/imports/controls/universal/Dial.qml2
-rw-r--r--src/imports/controls/universal/ItemDelegate.qml4
-rw-r--r--src/imports/controls/universal/MenuItem.qml4
-rw-r--r--src/imports/controls/universal/RadioDelegate.qml4
-rw-r--r--src/imports/controls/universal/RadioIndicator.qml6
-rw-r--r--src/imports/controls/universal/SwipeDelegate.qml6
-rw-r--r--src/imports/controls/universal/TabButton.qml2
-rw-r--r--src/imports/controls/universal/ToolButton.qml2
-rw-r--r--src/quicktemplates2/qquickabstractbutton.cpp52
-rw-r--r--src/quicktemplates2/qquickabstractbutton_p.h8
-rw-r--r--src/quicktemplates2/qquickabstractbutton_p_p.h2
-rw-r--r--src/quicktemplates2/qquickcombobox.cpp2
42 files changed, 134 insertions, 78 deletions
diff --git a/src/imports/controls/Button.qml b/src/imports/controls/Button.qml
index 82ff0914..406ae931 100644
--- a/src/imports/controls/Button.qml
+++ b/src/imports/controls/Button.qml
@@ -55,7 +55,7 @@ T.Button {
text: control.text
font: control.font
opacity: enabled || highlighted ? 1 : 0.3
- color: control.checked || control.highlighted ? "#ffffff" : (control.activeKeyFocus ? "#0066ff" : (control.pressed ? "#26282a" : "#353637"))
+ color: control.checked || control.highlighted ? "#ffffff" : (control.activeKeyFocus ? "#0066ff" : (control.down ? "#26282a" : "#353637"))
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
elide: Text.ElideRight
@@ -68,9 +68,9 @@ T.Button {
implicitHeight: 40
opacity: enabled ? 1 : (control.checked ? 0.2 : 0.3)
color: control.checked || control.highlighted ?
- (control.activeKeyFocus ? (control.pressed ? "#599bff" : "#0066ff") : (control.pressed ? "#585a5c" : "#353637")) :
- (control.activeKeyFocus ? (control.pressed ? "#cce0ff" : "#f0f6ff") : (control.pressed ? "#d6d6d6" : "#f6f6f6"))
- border.color: control.activeKeyFocus ? "#0066ff" : (control.pressed ? "#26282a" : "#353637")
+ (control.activeKeyFocus ? (control.down ? "#599bff" : "#0066ff") : (control.down ? "#585a5c" : "#353637")) :
+ (control.activeKeyFocus ? (control.down ? "#cce0ff" : "#f0f6ff") : (control.down ? "#d6d6d6" : "#f6f6f6"))
+ border.color: control.activeKeyFocus ? "#0066ff" : (control.down ? "#26282a" : "#353637")
border.width: control.checked || control.highlighted ? 0 : (control.activeKeyFocus ? 2 : 1)
}
//! [background]
diff --git a/src/imports/controls/CheckBox.qml b/src/imports/controls/CheckBox.qml
index 720bd428..f46b46f2 100644
--- a/src/imports/controls/CheckBox.qml
+++ b/src/imports/controls/CheckBox.qml
@@ -67,7 +67,7 @@ T.CheckBox {
text: control.text
font: control.font
- color: control.pressed ? "#26282a" : "#353637"
+ color: control.down ? "#26282a" : "#353637"
elide: Text.ElideRight
visible: control.text
horizontalAlignment: Text.AlignLeft
diff --git a/src/imports/controls/CheckDelegate.qml b/src/imports/controls/CheckDelegate.qml
index f09dfd15..c56ef221 100644
--- a/src/imports/controls/CheckDelegate.qml
+++ b/src/imports/controls/CheckDelegate.qml
@@ -79,8 +79,8 @@ T.CheckDelegate {
background: Rectangle {
implicitWidth: 100
implicitHeight: 40
- visible: control.pressed || control.highlighted
- color: control.pressed ? "#bdbebf" : "#eeeeee"
+ visible: control.down || control.highlighted
+ color: control.down ? "#bdbebf" : "#eeeeee"
}
//! [background]
}
diff --git a/src/imports/controls/CheckIndicator.qml b/src/imports/controls/CheckIndicator.qml
index 260a0d28..68ff134e 100644
--- a/src/imports/controls/CheckIndicator.qml
+++ b/src/imports/controls/CheckIndicator.qml
@@ -44,9 +44,9 @@ Rectangle {
implicitWidth: 28
implicitHeight: 28
- color: control.enabled ? (control.pressed ? (control.activeFocus ? "#cce0ff" : "#e4e4e4") : "#f6f6f6") : "#353637"
+ color: control.enabled ? (control.down ? (control.activeFocus ? "#cce0ff" : "#e4e4e4") : "#f6f6f6") : "#353637"
border.width: control.activeFocus ? 2 : 1
- border.color: control.enabled ? (control.activeFocus ? "#0066ff" : (control.pressed ? "#26282a" : "#353637")) : "transparent"
+ border.color: control.enabled ? (control.activeFocus ? "#0066ff" : (control.down ? "#26282a" : "#353637")) : "transparent"
Image {
x: (parent.width - width) / 2
diff --git a/src/imports/controls/ComboBox.qml b/src/imports/controls/ComboBox.qml
index 08ce97c8..5ecd638c 100644
--- a/src/imports/controls/ComboBox.qml
+++ b/src/imports/controls/ComboBox.qml
@@ -60,7 +60,7 @@ T.ComboBox {
autoExclusive: true
checked: control.currentIndex === index
highlighted: control.highlightedIndex === index
- pressed: highlighted && control.pressed
+ down: highlighted && control.down
}
//! [delegate]
@@ -85,7 +85,7 @@ T.ComboBox {
width: parent.width
height: parent.height
opacity: control.enabled ? 1.0 : 0.2
- color: control.pressed || popup.visible ? "#585A5C" : "#353637"
+ color: control.down || popup.visible ? "#585A5C" : "#353637"
}
Image {
diff --git a/src/imports/controls/ItemDelegate.qml b/src/imports/controls/ItemDelegate.qml
index 4339df86..7bd4fd58 100644
--- a/src/imports/controls/ItemDelegate.qml
+++ b/src/imports/controls/ItemDelegate.qml
@@ -69,8 +69,8 @@ T.ItemDelegate {
background: Rectangle {
implicitWidth: 100
implicitHeight: 40
- visible: control.pressed || control.highlighted
- color: control.pressed ? "#bdbebf" : "#eeeeee"
+ visible: control.down || control.highlighted
+ color: control.down ? "#bdbebf" : "#eeeeee"
}
//! [background]
}
diff --git a/src/imports/controls/MenuItem.qml b/src/imports/controls/MenuItem.qml
index eb3135ce..1ad513e5 100644
--- a/src/imports/controls/MenuItem.qml
+++ b/src/imports/controls/MenuItem.qml
@@ -84,7 +84,7 @@ T.MenuItem {
y: 1
width: parent.width - 2
height: parent.height - 2
- color: control.activeKeyFocus || control.pressed ? "#eeeeee" : "transparent"
+ color: control.activeKeyFocus || control.down ? "#eeeeee" : "transparent"
}
}
//! [background]
diff --git a/src/imports/controls/RadioButton.qml b/src/imports/controls/RadioButton.qml
index e114ad89..b9ac74f3 100644
--- a/src/imports/controls/RadioButton.qml
+++ b/src/imports/controls/RadioButton.qml
@@ -67,7 +67,7 @@ T.RadioButton {
text: control.text
font: control.font
- color: control.pressed ? "#26282a" : "#353637"
+ color: control.down ? "#26282a" : "#353637"
elide: Text.ElideRight
visible: control.text
horizontalAlignment: Text.AlignLeft
diff --git a/src/imports/controls/RadioDelegate.qml b/src/imports/controls/RadioDelegate.qml
index f5e661bd..2dce11fd 100644
--- a/src/imports/controls/RadioDelegate.qml
+++ b/src/imports/controls/RadioDelegate.qml
@@ -78,8 +78,8 @@ T.RadioDelegate {
background: Rectangle {
implicitWidth: 100
implicitHeight: 40
- visible: control.pressed || control.highlighted
- color: control.pressed ? "#bdbebf" : "#eeeeee"
+ visible: control.down || control.highlighted
+ color: control.down ? "#bdbebf" : "#eeeeee"
}
//! [background]
}
diff --git a/src/imports/controls/RadioIndicator.qml b/src/imports/controls/RadioIndicator.qml
index 49e682e4..041f8f3e 100644
--- a/src/imports/controls/RadioIndicator.qml
+++ b/src/imports/controls/RadioIndicator.qml
@@ -41,9 +41,9 @@ Rectangle {
implicitHeight: 28
radius: width / 2
- color: control.pressed ? (control.activeFocus ? "#cce0ff" : "#e4e4e4") : "#f6f6f6"
+ color: control.down ? (control.activeFocus ? "#cce0ff" : "#e4e4e4") : "#f6f6f6"
border.width: control.activeFocus ? 2 : 1
- border.color: control.activeFocus ? "#0066ff" : (control.pressed ? "#26282a" : "#353637")
+ border.color: control.activeFocus ? "#0066ff" : (control.down ? "#26282a" : "#353637")
property Item control
diff --git a/src/imports/controls/SwipeDelegate.qml b/src/imports/controls/SwipeDelegate.qml
index 6621f44d..12673f33 100644
--- a/src/imports/controls/SwipeDelegate.qml
+++ b/src/imports/controls/SwipeDelegate.qml
@@ -64,7 +64,7 @@ T.SwipeDelegate {
verticalAlignment: Text.AlignVCenter
Behavior on x {
- enabled: !control.pressed
+ enabled: !control.down
NumberAnimation {
easing.type: Easing.InOutCubic
duration: 400
@@ -75,10 +75,10 @@ T.SwipeDelegate {
//! [background]
background: Rectangle {
- color: control.pressed ? "#bdbebf" : "#eeeeee"
+ color: control.down ? "#bdbebf" : "#eeeeee"
Behavior on x {
- enabled: !control.pressed
+ enabled: !control.down
NumberAnimation {
easing.type: Easing.InOutCubic
duration: 400
diff --git a/src/imports/controls/TabButton.qml b/src/imports/controls/TabButton.qml
index dff05d8c..352bef1a 100644
--- a/src/imports/controls/TabButton.qml
+++ b/src/imports/controls/TabButton.qml
@@ -54,7 +54,7 @@ T.TabButton {
font: control.font
elide: Text.ElideRight
opacity: enabled ? 1 : 0.3
- color: !control.checked ? "#ffffff" : control.pressed ? "#26282a" : "#353637"
+ color: !control.checked ? "#ffffff" : control.down ? "#26282a" : "#353637"
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
@@ -63,7 +63,7 @@ T.TabButton {
//! [background]
background: Rectangle {
implicitHeight: 40
- color: control.pressed ? (control.checked ? "#e4e4e4" : "#585a5c") : (control.checked ? "transparent" : "#353637")
+ color: control.down ? (control.checked ? "#e4e4e4" : "#585a5c") : (control.checked ? "transparent" : "#353637")
}
//! [background]
}
diff --git a/src/imports/controls/ToolButton.qml b/src/imports/controls/ToolButton.qml
index fd336371..8c903bb4 100644
--- a/src/imports/controls/ToolButton.qml
+++ b/src/imports/controls/ToolButton.qml
@@ -65,8 +65,8 @@ T.ToolButton {
implicitHeight: 40
color: Qt.darker("#33333333", control.enabled && (control.checked || control.highlighted) ? 1.5 : 1.0)
- opacity: control.pressed ? 1.0 : control.enabled && (control.checked || control.highlighted) ? 0.5 : 0
- visible: control.pressed || (control.enabled && (control.checked || control.highlighted))
+ opacity: control.down ? 1.0 : control.enabled && (control.checked || control.highlighted) ? 0.5 : 0
+ visible: control.down || (control.enabled && (control.checked || control.highlighted))
}
//! [background]
}
diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-button-pressed.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-button-pressed.qml
index b5c918db..9fde2fc4 100644
--- a/src/imports/controls/doc/snippets/qtquickcontrols2-button-pressed.qml
+++ b/src/imports/controls/doc/snippets/qtquickcontrols2-button-pressed.qml
@@ -31,5 +31,5 @@ import Qt.labs.controls 1.0
Button {
width: 80
text: "Pressed"
- pressed: true
+ down: true
}
diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip.qml
index 7a061b2d..08ee995d 100644
--- a/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip.qml
+++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip.qml
@@ -36,7 +36,7 @@ Item {
property Button button: children[0]
- Binding { target: button; property: "pressed"; value: root.Window.active }
+ Binding { target: button; property: "down"; value: root.Window.active }
Binding { target: button.anchors; property: "bottom"; value: root.bottom }
Binding { target: button.anchors; property: "horizontalCenter"; value: root.horizontalCenter }
diff --git a/src/imports/controls/material/Button.qml b/src/imports/controls/material/Button.qml
index 09dac44c..1e12cb6e 100644
--- a/src/imports/controls/material/Button.qml
+++ b/src/imports/controls/material/Button.qml
@@ -76,7 +76,7 @@ T.Button {
height: parent.height - 12
radius: 2
color: !control.enabled ? (control.highlighted ? control.Material.raisedHighlightedButtonDisabledColor : control.Material.raisedButtonDisabledColor) :
- (control.pressed ? (control.highlighted ? control.Material.raisedHighlightedButtonPressColor : control.Material.raisedButtonPressColor) :
+ (control.down ? (control.highlighted ? control.Material.raisedHighlightedButtonPressColor : control.Material.raisedButtonPressColor) :
(control.activeKeyFocus ? (control.highlighted ? control.Material.raisedHighlightedButtonHoverColor : control.Material.raisedButtonHoverColor) :
(control.highlighted ? control.Material.raisedHighlightedButtonColor : control.Material.raisedButtonColor)))
@@ -98,7 +98,7 @@ T.Button {
layer.effect: DropShadow {
verticalOffset: 1
color: control.Material.dropShadowColor
- samples: control.pressed ? 15 : 9
+ samples: control.down ? 15 : 9
spread: 0.5
}
}
diff --git a/src/imports/controls/material/CheckDelegate.qml b/src/imports/controls/material/CheckDelegate.qml
index acea613c..70104962 100644
--- a/src/imports/controls/material/CheckDelegate.qml
+++ b/src/imports/controls/material/CheckDelegate.qml
@@ -77,8 +77,8 @@ T.CheckDelegate {
//! [background]
background: Rectangle {
- visible: control.pressed || control.highlighted
- color: control.pressed ? control.Material.flatButtonPressColor : control.Material.listHighlightColor
+ visible: control.down || control.highlighted
+ color: control.down ? control.Material.flatButtonPressColor : control.Material.listHighlightColor
}
//! [background]
}
diff --git a/src/imports/controls/material/CheckIndicator.qml b/src/imports/controls/material/CheckIndicator.qml
index ba6de6a2..31e1abaf 100644
--- a/src/imports/controls/material/CheckIndicator.qml
+++ b/src/imports/controls/material/CheckIndicator.qml
@@ -68,7 +68,7 @@ Rectangle {
height: width
control: control
colored: control.checked
- opacity: control.pressed ? 1 : 0
+ opacity: control.down ? 1 : 0
}
// TODO: This needs to be transparent
diff --git a/src/imports/controls/material/ComboBox.qml b/src/imports/controls/material/ComboBox.qml
index b1c0c332..5a6e0610 100644
--- a/src/imports/controls/material/ComboBox.qml
+++ b/src/imports/controls/material/ComboBox.qml
@@ -58,7 +58,7 @@ T.ComboBox {
width: control.width
text: control.textRole ? (Array.isArray(control.model) ? modelData[control.textRole] : model[control.textRole]) : modelData
highlighted: control.highlightedIndex === index
- pressed: highlighted && control.pressed
+ down: highlighted && control.down
}
//! [delegate]
@@ -92,7 +92,7 @@ T.ComboBox {
layer.effect: DropShadow {
verticalOffset: 1
color: control.Material.dropShadowColor
- samples: control.pressed ? 15 : 9
+ samples: control.down ? 15 : 9
spread: 0.5
}
diff --git a/src/imports/controls/material/ItemDelegate.qml b/src/imports/controls/material/ItemDelegate.qml
index 96323716..efba10b0 100644
--- a/src/imports/controls/material/ItemDelegate.qml
+++ b/src/imports/controls/material/ItemDelegate.qml
@@ -68,8 +68,8 @@ T.ItemDelegate {
//! [background]
background: Rectangle {
- visible: control.pressed || control.highlighted
- color: control.pressed ? control.Material.flatButtonPressColor : control.Material.listHighlightColor
+ visible: control.down || control.highlighted
+ color: control.down ? control.Material.flatButtonPressColor : control.Material.listHighlightColor
}
//! [background]
}
diff --git a/src/imports/controls/material/MenuItem.qml b/src/imports/controls/material/MenuItem.qml
index ecc8a388..48eb390b 100644
--- a/src/imports/controls/material/MenuItem.qml
+++ b/src/imports/controls/material/MenuItem.qml
@@ -79,8 +79,8 @@ T.MenuItem {
//! [background]
background: Rectangle {
implicitWidth: 200
- visible: control.pressed || control.highlighted
- color: control.pressed ? control.Material.flatButtonPressColor : control.Material.listHighlightColor
+ visible: control.down || control.highlighted
+ color: control.down ? control.Material.flatButtonPressColor : control.Material.listHighlightColor
}
//! [background]
}
diff --git a/src/imports/controls/material/RadioDelegate.qml b/src/imports/controls/material/RadioDelegate.qml
index 78780e50..5f5f58cf 100644
--- a/src/imports/controls/material/RadioDelegate.qml
+++ b/src/imports/controls/material/RadioDelegate.qml
@@ -76,8 +76,8 @@ T.RadioDelegate {
//! [background]
background: Rectangle {
- visible: control.pressed || control.highlighted
- color: control.pressed ? control.Material.flatButtonPressColor : control.Material.listHighlightColor
+ visible: control.down || control.highlighted
+ color: control.down ? control.Material.flatButtonPressColor : control.Material.listHighlightColor
}
//! [background]
}
diff --git a/src/imports/controls/material/RadioIndicator.qml b/src/imports/controls/material/RadioIndicator.qml
index 5ad92c3d..27ab8d9a 100644
--- a/src/imports/controls/material/RadioIndicator.qml
+++ b/src/imports/controls/material/RadioIndicator.qml
@@ -43,7 +43,7 @@ Rectangle {
implicitHeight: 20
radius: width / 2
border.width: 2
- border.color: control.checked || control.pressed ? control.Material.accentColor : control.Material.secondaryTextColor
+ border.color: control.checked || control.down ? control.Material.accentColor : control.Material.secondaryTextColor
color: "transparent"
property alias control: ripple.control
@@ -54,7 +54,7 @@ Rectangle {
height: width
control: control
colored: control.checked
- opacity: control.pressed || control.activeFocus ? 1 : 0
+ opacity: control.down || control.activeFocus ? 1 : 0
}
Rectangle {
@@ -64,6 +64,6 @@ Rectangle {
height: 10
radius: width / 2
color: parent.border.color
- visible: control.checked || control.pressed
+ visible: control.checked || control.down
}
}
diff --git a/src/imports/controls/material/SwipeDelegate.qml b/src/imports/controls/material/SwipeDelegate.qml
index cb114bfc..c4bacc10 100644
--- a/src/imports/controls/material/SwipeDelegate.qml
+++ b/src/imports/controls/material/SwipeDelegate.qml
@@ -66,7 +66,7 @@ T.SwipeDelegate {
verticalAlignment: Text.AlignVCenter
Behavior on x {
- enabled: !control.pressed
+ enabled: !control.down
NumberAnimation {
easing.type: Easing.InOutCubic
duration: 400
@@ -78,11 +78,11 @@ T.SwipeDelegate {
//! [background]
background: Rectangle {
color: !control.enabled ? control.Material.swipeDelegateDisabledColor :
- (control.pressed ? control.Material.swipeDelegatePressColor :
+ (control.down ? control.Material.swipeDelegatePressColor :
(control.activeKeyFocus || control.hovered ? control.Material.swipeDelegateHoverColor : control.Material.swipeDelegateColor))
Behavior on x {
- enabled: !control.pressed
+ enabled: !control.down
NumberAnimation {
easing.type: Easing.InOutCubic
duration: 400
diff --git a/src/imports/controls/material/TabButton.qml b/src/imports/controls/material/TabButton.qml
index 63728d2d..70efc0ff 100644
--- a/src/imports/controls/material/TabButton.qml
+++ b/src/imports/controls/material/TabButton.qml
@@ -54,7 +54,7 @@ T.TabButton {
text: control.text
font: control.font
elide: Text.ElideRight
- color: !control.enabled ? control.Material.hintTextColor : control.pressed || control.checked ? control.Material.accentColor : control.Material.primaryTextColor
+ color: !control.enabled ? control.Material.hintTextColor : control.down || control.checked ? control.Material.accentColor : control.Material.primaryTextColor
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
diff --git a/src/imports/controls/material/ToolButton.qml b/src/imports/controls/material/ToolButton.qml
index 53da9077..e3a1d740 100644
--- a/src/imports/controls/material/ToolButton.qml
+++ b/src/imports/controls/material/ToolButton.qml
@@ -65,8 +65,8 @@ T.ToolButton {
implicitWidth: 48
implicitHeight: 48
- color: control.pressed ? control.Material.flatButtonPressColor : control.Material.flatButtonFocusColor
- visible: control.enabled && (control.pressed || control.activeKeyFocus || control.checked || control.highlighted)
+ color: control.down ? control.Material.flatButtonPressColor : control.Material.flatButtonFocusColor
+ visible: control.enabled && (control.down || control.activeKeyFocus || control.checked || control.highlighted)
}
//! [background]
}
diff --git a/src/imports/controls/universal/Button.qml b/src/imports/controls/universal/Button.qml
index cd0d9310..d0dbcf99 100644
--- a/src/imports/controls/universal/Button.qml
+++ b/src/imports/controls/universal/Button.qml
@@ -71,7 +71,7 @@ T.Button {
implicitWidth: 32
implicitHeight: 32
- color: control.pressed ? control.Universal.baseMediumLowColor :
+ color: control.down ? control.Universal.baseMediumLowColor :
control.enabled && (control.highlighted || control.checked) ? control.Universal.accent :
control.Universal.baseLowColor
}
diff --git a/src/imports/controls/universal/CheckDelegate.qml b/src/imports/controls/universal/CheckDelegate.qml
index 186f9048..91f57b24 100644
--- a/src/imports/controls/universal/CheckDelegate.qml
+++ b/src/imports/controls/universal/CheckDelegate.qml
@@ -81,8 +81,8 @@ T.CheckDelegate {
//! [background]
background: Rectangle {
- visible: control.pressed || control.highlighted || control.activeFocus
- color: control.pressed ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
+ visible: control.down || control.highlighted || control.activeFocus
+ color: control.down ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
Rectangle {
width: parent.width
height: parent.height
diff --git a/src/imports/controls/universal/CheckIndicator.qml b/src/imports/controls/universal/CheckIndicator.qml
index f0858a21..4795ccce 100644
--- a/src/imports/controls/universal/CheckIndicator.qml
+++ b/src/imports/controls/universal/CheckIndicator.qml
@@ -43,10 +43,10 @@ Rectangle {
implicitHeight: 20
color: !control.enabled ? "transparent" :
- control.pressed && control.checkState !== Qt.PartiallyChecked ? control.Universal.baseMediumColor :
+ control.down && control.checkState !== Qt.PartiallyChecked ? control.Universal.baseMediumColor :
control.checkState === Qt.Checked ? control.Universal.accent : "transparent"
border.color: !control.enabled ? control.Universal.baseLowColor :
- control.pressed ? control.Universal.baseMediumColor :
+ control.down ? control.Universal.baseMediumColor :
control.checked ? control.Universal.accent : control.Universal.baseMediumHighColor
border.width: 2 // CheckBoxBorderThemeThickness
@@ -68,6 +68,6 @@ Rectangle {
visible: control.checkState === Qt.PartiallyChecked
color: !control.enabled ? control.Universal.baseLowColor :
- control.pressed ? control.Universal.baseMediumColor : control.Universal.baseMediumHighColor
+ control.down ? control.Universal.baseMediumColor : control.Universal.baseMediumHighColor
}
}
diff --git a/src/imports/controls/universal/ComboBox.qml b/src/imports/controls/universal/ComboBox.qml
index 233dc0b0..01ee0883 100644
--- a/src/imports/controls/universal/ComboBox.qml
+++ b/src/imports/controls/universal/ComboBox.qml
@@ -60,7 +60,7 @@ T.ComboBox {
width: control.width
text: control.textRole ? (Array.isArray(control.model) ? modelData[control.textRole] : model[control.textRole]) : modelData
highlighted: control.highlightedIndex === index
- pressed: highlighted && control.pressed
+ down: highlighted && control.down
}
//! [delegate]
@@ -83,9 +83,9 @@ T.ComboBox {
border.width: 2 // ComboBoxBorderThemeThickness
border.color: !control.enabled ? control.Universal.baseLowColor :
- control.pressed || popup.visible ? control.Universal.baseMediumLowColor : control.Universal.baseMediumLowColor
+ control.down || popup.visible ? control.Universal.baseMediumLowColor : control.Universal.baseMediumLowColor
color: !control.enabled ? control.Universal.baseLowColor :
- control.pressed || popup.visible ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
+ control.down || popup.visible ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
Rectangle {
x: 2
diff --git a/src/imports/controls/universal/Dial.qml b/src/imports/controls/universal/Dial.qml
index cfb325b3..a55bc19f 100644
--- a/src/imports/controls/universal/Dial.qml
+++ b/src/imports/controls/universal/Dial.qml
@@ -67,7 +67,7 @@ T.Dial {
radius: width / 2
color: !control.enabled ? control.Universal.baseLowColor :
- control.pressed ? control.Universal.baseMediumColor : control.Universal.baseMediumHighColor
+ control.down ? control.Universal.baseMediumColor : control.Universal.baseMediumHighColor
transform: [
Translate {
diff --git a/src/imports/controls/universal/ItemDelegate.qml b/src/imports/controls/universal/ItemDelegate.qml
index e01f0368..7066bb3e 100644
--- a/src/imports/controls/universal/ItemDelegate.qml
+++ b/src/imports/controls/universal/ItemDelegate.qml
@@ -73,8 +73,8 @@ T.ItemDelegate {
//! [background]
background: Rectangle {
- visible: control.pressed || control.highlighted || control.activeKeyFocus
- color: control.pressed ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
+ visible: control.down || control.highlighted || control.activeKeyFocus
+ color: control.down ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
Rectangle {
width: parent.width
height: parent.height
diff --git a/src/imports/controls/universal/MenuItem.qml b/src/imports/controls/universal/MenuItem.qml
index dbc41eec..aef20ff9 100644
--- a/src/imports/controls/universal/MenuItem.qml
+++ b/src/imports/controls/universal/MenuItem.qml
@@ -75,7 +75,7 @@ T.MenuItem {
y: control.topPadding + (control.availableHeight - height) / 2
visible: control.checked
- source: !control.checkable ? "" : "image://universal/checkmark/" + (!control.enabled ? control.Universal.baseLowColor : control.pressed ? control.Universal.baseHighColor : control.Universal.baseMediumHighColor)
+ source: !control.checkable ? "" : "image://universal/checkmark/" + (!control.enabled ? control.Universal.baseLowColor : control.down ? control.Universal.baseHighColor : control.Universal.baseMediumHighColor)
}
//! [indicator]
@@ -85,7 +85,7 @@ T.MenuItem {
implicitHeight: 40
color: !control.enabled ? control.Universal.baseLowColor :
- control.pressed ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
+ control.down ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
Rectangle {
x: 1; y: 1
diff --git a/src/imports/controls/universal/RadioDelegate.qml b/src/imports/controls/universal/RadioDelegate.qml
index 623e7e13..3ea37555 100644
--- a/src/imports/controls/universal/RadioDelegate.qml
+++ b/src/imports/controls/universal/RadioDelegate.qml
@@ -83,8 +83,8 @@ T.RadioDelegate {
//! [background]
background: Rectangle {
- visible: control.pressed || control.highlighted || control.activeFocus
- color: control.pressed ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
+ visible: control.down || control.highlighted || control.activeFocus
+ color: control.down ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
Rectangle {
width: parent.width
height: parent.height
diff --git a/src/imports/controls/universal/RadioIndicator.qml b/src/imports/controls/universal/RadioIndicator.qml
index d107da96..3fd74cbf 100644
--- a/src/imports/controls/universal/RadioIndicator.qml
+++ b/src/imports/controls/universal/RadioIndicator.qml
@@ -45,7 +45,7 @@ Rectangle {
border.width: 2 // RadioButtonBorderThemeThickness
border.color: control.checked ? "transparent" :
!control.enabled ? control.Universal.baseLowColor :
- control.pressed ? control.Universal.baseMediumColor : control.Universal.baseMediumHighColor
+ control.down ? control.Universal.baseMediumColor : control.Universal.baseMediumHighColor
property var control
@@ -59,7 +59,7 @@ Rectangle {
color: "transparent"
border.width: 2 // RadioButtonBorderThemeThickness
border.color: !control.enabled ? control.Universal.baseLowColor :
- control.pressed ? control.Universal.baseMediumColor : control.Universal.accent
+ control.down ? control.Universal.baseMediumColor : control.Universal.accent
}
Rectangle {
@@ -72,6 +72,6 @@ Rectangle {
radius: width / 2
opacity: control.checked ? 1 : 0
color: !control.enabled ? control.Universal.baseLowColor :
- control.pressed ? control.Universal.baseMediumColor : control.Universal.baseMediumHighColor
+ control.down ? control.Universal.baseMediumColor : control.Universal.baseMediumHighColor
}
}
diff --git a/src/imports/controls/universal/SwipeDelegate.qml b/src/imports/controls/universal/SwipeDelegate.qml
index 1bcfe083..eace3045 100644
--- a/src/imports/controls/universal/SwipeDelegate.qml
+++ b/src/imports/controls/universal/SwipeDelegate.qml
@@ -71,7 +71,7 @@ T.SwipeDelegate {
color: !control.enabled ? control.Universal.baseLowColor : control.Universal.baseHighColor
Behavior on x {
- enabled: !control.pressed
+ enabled: !control.down
NumberAnimation {
easing.type: Easing.InOutCubic
duration: 400
@@ -83,7 +83,7 @@ T.SwipeDelegate {
//! [background]
background: Rectangle {
color: !control.enabled ? control.Universal.chromeDisabledHighColor :
- (control.pressed ? control.Universal.chromeHighColor :
+ (control.down ? control.Universal.chromeHighColor :
(control.activeKeyFocus || control.hovered ? control.Universal.chromeLowColor : control.Universal.chromeMediumColor))
Rectangle {
@@ -95,7 +95,7 @@ T.SwipeDelegate {
}
Behavior on x {
- enabled: !control.pressed
+ enabled: !control.down
NumberAnimation {
easing.type: Easing.InOutCubic
duration: 400
diff --git a/src/imports/controls/universal/TabButton.qml b/src/imports/controls/universal/TabButton.qml
index 16ee8fec..149de82c 100644
--- a/src/imports/controls/universal/TabButton.qml
+++ b/src/imports/controls/universal/TabButton.qml
@@ -54,7 +54,7 @@ T.TabButton {
text: control.text
font: control.font
elide: Text.ElideRight
- color: control.checked || control.pressed ? control.Universal.baseHighColor : control.Universal.baseLowColor
+ color: control.checked || control.down ? control.Universal.baseHighColor : control.Universal.baseLowColor
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
diff --git a/src/imports/controls/universal/ToolButton.qml b/src/imports/controls/universal/ToolButton.qml
index 06eecf17..14d2d923 100644
--- a/src/imports/controls/universal/ToolButton.qml
+++ b/src/imports/controls/universal/ToolButton.qml
@@ -67,7 +67,7 @@ T.ToolButton {
implicitWidth: 68
implicitHeight: 48 // AppBarThemeCompactHeight
- color: control.pressed ? control.Universal.listMediumColor :
+ color: control.down ? control.Universal.listMediumColor :
control.enabled && (control.highlighted || control.checked) ? control.Universal.accent : "transparent"
}
//! [background]
diff --git a/src/quicktemplates2/qquickabstractbutton.cpp b/src/quicktemplates2/qquickabstractbutton.cpp
index fdcc6fc0..ec6b3d63 100644
--- a/src/quicktemplates2/qquickabstractbutton.cpp
+++ b/src/quicktemplates2/qquickabstractbutton.cpp
@@ -106,7 +106,8 @@ static const int AUTO_REPEAT_INTERVAL = 100;
*/
QQuickAbstractButtonPrivate::QQuickAbstractButtonPrivate() :
- pressed(false), checked(false), checkable(false), highlighted(false), autoExclusive(false), autoRepeat(false), wasHeld(false),
+ down(false), explicitDown(false), pressed(false), checked(false), checkable(false),
+ highlighted(false), autoExclusive(false), autoRepeat(false), wasHeld(false),
holdTimer(0), delayTimer(0), repeatTimer(0), repeatButton(Qt::NoButton), indicator(nullptr), group(nullptr)
{
}
@@ -256,9 +257,51 @@ void QQuickAbstractButton::setText(const QString &text)
}
/*!
+ \qmlproperty bool Qt.labs.controls::AbstractButton::down
+
+ This property holds whether the button is visually down.
+
+ Unless explicitly set, this property follows the value of \l pressed. To
+ return to the default value, set this property to \c undefined.
+
+ \sa pressed
+*/
+bool QQuickAbstractButton::isDown() const
+{
+ Q_D(const QQuickAbstractButton);
+ return d->down;
+}
+
+void QQuickAbstractButton::setDown(bool down)
+{
+ Q_D(QQuickAbstractButton);
+ d->explicitDown = true;
+
+ if (d->down == down)
+ return;
+
+ d->down = down;
+ emit downChanged();
+}
+
+void QQuickAbstractButton::resetDown()
+{
+ Q_D(QQuickAbstractButton);
+ if (!d->explicitDown)
+ return;
+
+ setDown(d->pressed);
+ d->explicitDown = false;
+}
+
+/*!
\qmlproperty bool Qt.labs.controls::AbstractButton::pressed
+ \readonly
- This property holds whether the button is pressed.
+ This property holds whether the button is physically pressed. A button can
+ be pressed by either touch or key events.
+
+ \sa down
*/
bool QQuickAbstractButton::isPressed() const
{
@@ -275,6 +318,11 @@ void QQuickAbstractButton::setPressed(bool isPressed)
d->pressed = isPressed;
setAccessibleProperty("pressed", isPressed);
emit pressedChanged();
+
+ if (!d->explicitDown) {
+ setDown(d->pressed);
+ d->explicitDown = false;
+ }
}
/*!
diff --git a/src/quicktemplates2/qquickabstractbutton_p.h b/src/quicktemplates2/qquickabstractbutton_p.h
index 49de79da..c8e6931f 100644
--- a/src/quicktemplates2/qquickabstractbutton_p.h
+++ b/src/quicktemplates2/qquickabstractbutton_p.h
@@ -58,7 +58,8 @@ class Q_QUICKTEMPLATES2_EXPORT QQuickAbstractButton : public QQuickControl
{
Q_OBJECT
Q_PROPERTY(QString text READ text WRITE setText NOTIFY textChanged FINAL)
- Q_PROPERTY(bool pressed READ isPressed WRITE setPressed NOTIFY pressedChanged FINAL)
+ Q_PROPERTY(bool down READ isDown WRITE setDown NOTIFY downChanged RESET resetDown FINAL)
+ Q_PROPERTY(bool pressed READ isPressed NOTIFY pressedChanged FINAL)
Q_PROPERTY(bool checked READ isChecked WRITE setChecked NOTIFY checkedChanged FINAL)
Q_PROPERTY(bool highlighted READ isHighlighted WRITE setHighlighted NOTIFY highlightedChanged FINAL)
Q_PROPERTY(bool autoExclusive READ autoExclusive WRITE setAutoExclusive NOTIFY autoExclusiveChanged FINAL)
@@ -72,6 +73,10 @@ public:
QString text() const;
void setText(const QString &text);
+ bool isDown() const;
+ void setDown(bool down);
+ void resetDown();
+
bool isPressed() const;
void setPressed(bool pressed);
@@ -104,6 +109,7 @@ Q_SIGNALS:
void pressAndHold();
void doubleClicked();
void textChanged();
+ void downChanged();
void pressedChanged();
void checkedChanged();
void highlightedChanged();
diff --git a/src/quicktemplates2/qquickabstractbutton_p_p.h b/src/quicktemplates2/qquickabstractbutton_p_p.h
index 23e0b52c..7aa2c028 100644
--- a/src/quicktemplates2/qquickabstractbutton_p_p.h
+++ b/src/quicktemplates2/qquickabstractbutton_p_p.h
@@ -79,6 +79,8 @@ public:
QList<QQuickAbstractButton *> findExclusiveButtons() const;
QString text;
+ bool down;
+ bool explicitDown;
bool pressed;
bool checked;
bool checkable;
diff --git a/src/quicktemplates2/qquickcombobox.cpp b/src/quicktemplates2/qquickcombobox.cpp
index e10a8b48..ec75c053 100644
--- a/src/quicktemplates2/qquickcombobox.cpp
+++ b/src/quicktemplates2/qquickcombobox.cpp
@@ -112,6 +112,7 @@ QT_BEGIN_NAMESPACE
*/
/*!
+ \readonly
\qmlsignal void Qt.labs.controls::ComboBox::highlighted(int index)
This signal is emitted when the item at \a index in the popup list is highlighted by the user.
@@ -450,7 +451,6 @@ void QQuickComboBox::setPressed(bool pressed)
}
/*!
- \readonly
\qmlproperty int Qt.labs.controls::ComboBox::highlightedIndex
This property holds the index of the highlighted item in the combo box popup list.