aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@qt.io>2022-06-22 12:19:57 +0300
committerMiikka Heikkinen <miikka.heikkinen@qt.io>2022-06-22 10:44:50 +0000
commit41986d794279c9a6db2e2893372707a3d5415b82 (patch)
treebc51257e90a3c4182a3c70d44aceeddc189ddf9b
parent62f34622df810ce0f036a08485630ececdc5f932 (diff)
QmlDesigner: Show IconButton tooltip also when button is disabled
Fixes: QDS-7076 Change-Id: If412827e22c6f71a9f073d1c868dcdb325870c1d Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/IconButton.qml15
1 files changed, 10 insertions, 5 deletions
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/IconButton.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/IconButton.qml
index 2fc10b1855..dcd4733134 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/IconButton.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/IconButton.qml
@@ -34,10 +34,10 @@ Rectangle {
signal clicked()
property alias icon: icon.text
- property alias enabled: mouseArea.enabled
property alias tooltip: toolTip.text
property alias iconSize: icon.font.pixelSize
+ property bool enabled: true
property int buttonSize: StudioTheme.Values.height
property color normalColor: StudioTheme.Values.themeControlBackground
property color hoverColor: StudioTheme.Values.themeControlBackgroundHover
@@ -46,9 +46,10 @@ Rectangle {
width: buttonSize
height: buttonSize
- color: mouseArea.pressed ? pressColor
- : mouseArea.containsMouse ? hoverColor
- : normalColor
+ color: !enabled ? normalColor
+ : mouseArea.pressed ? pressColor
+ : mouseArea.containsMouse ? hoverColor
+ : normalColor
Behavior on color {
ColorAnimation {
@@ -71,7 +72,11 @@ Rectangle {
anchors.fill: parent
hoverEnabled: true
- onClicked: root.clicked()
+ onClicked: {
+ // We need to keep mouse area enabled even when button is disabled to make tooltip work
+ if (root.enabled)
+ root.clicked()
+ }
}
ToolTip {