From 3889091d9fd45213098e51bdbe10ef5ffc481740 Mon Sep 17 00:00:00 2001 From: J-P Nurmi Date: Fri, 22 Jul 2016 14:23:30 +0200 Subject: Material: determine the default hoverEnabled value from QStyleHints Task-number: QTBUG-50003 Change-Id: I4809638c7ddaa4ca6fb99dbc734edb3641ecea05 Reviewed-by: Mitch Curtis --- src/imports/controls/material/Button.qml | 2 ++ src/imports/controls/material/CheckBox.qml | 2 ++ src/imports/controls/material/CheckDelegate.qml | 2 ++ src/imports/controls/material/ComboBox.qml | 2 ++ src/imports/controls/material/Dial.qml | 2 ++ src/imports/controls/material/ItemDelegate.qml | 2 ++ src/imports/controls/material/MenuItem.qml | 2 ++ src/imports/controls/material/RadioButton.qml | 2 ++ src/imports/controls/material/RadioDelegate.qml | 2 ++ src/imports/controls/material/RangeSlider.qml | 2 ++ src/imports/controls/material/ScrollBar.qml | 2 ++ src/imports/controls/material/Slider.qml | 2 ++ src/imports/controls/material/SpinBox.qml | 2 ++ src/imports/controls/material/SwipeDelegate.qml | 2 ++ src/imports/controls/material/Switch.qml | 2 ++ src/imports/controls/material/SwitchDelegate.qml | 2 ++ src/imports/controls/material/TabButton.qml | 2 ++ src/imports/controls/material/TextArea.qml | 2 ++ src/imports/controls/material/TextField.qml | 2 ++ src/imports/controls/material/ToolButton.qml | 2 ++ 20 files changed, 40 insertions(+) (limited to 'src/imports/controls/material') diff --git a/src/imports/controls/material/Button.qml b/src/imports/controls/material/Button.qml index 21224855..9ed5263c 100644 --- a/src/imports/controls/material/Button.qml +++ b/src/imports/controls/material/Button.qml @@ -53,6 +53,8 @@ T.Button { leftPadding: padding - 4 rightPadding: padding - 4 + hoverEnabled: Qt.styleHints.useHoverEffects + Material.elevation: flat ? control.down || control.hovered ? 2 : 0 : control.down ? 8 : 2 Material.background: flat ? "transparent" : undefined diff --git a/src/imports/controls/material/CheckBox.qml b/src/imports/controls/material/CheckBox.qml index dc59c466..290dbe55 100644 --- a/src/imports/controls/material/CheckBox.qml +++ b/src/imports/controls/material/CheckBox.qml @@ -54,6 +54,8 @@ T.CheckBox { topPadding: padding + 7 bottomPadding: padding + 7 + hoverEnabled: Qt.styleHints.useHoverEffects + indicator: CheckIndicator { x: text ? (control.mirrored ? control.width - width - control.rightPadding : control.leftPadding) : control.leftPadding + (control.availableWidth - width) / 2 y: control.topPadding + (control.availableHeight - height) / 2 diff --git a/src/imports/controls/material/CheckDelegate.qml b/src/imports/controls/material/CheckDelegate.qml index aa2f3b01..9fff50d2 100644 --- a/src/imports/controls/material/CheckDelegate.qml +++ b/src/imports/controls/material/CheckDelegate.qml @@ -54,6 +54,8 @@ T.CheckDelegate { bottomPadding: 14 spacing: 16 + hoverEnabled: Qt.styleHints.useHoverEffects + indicator: CheckIndicator { x: text ? (control.mirrored ? control.leftPadding : control.width - width - control.rightPadding) : control.leftPadding + (control.availableWidth - width) / 2 y: control.topPadding + (control.availableHeight - height) / 2 diff --git a/src/imports/controls/material/ComboBox.qml b/src/imports/controls/material/ComboBox.qml index 9efc4bc9..df614f3f 100644 --- a/src/imports/controls/material/ComboBox.qml +++ b/src/imports/controls/material/ComboBox.qml @@ -56,6 +56,8 @@ T.ComboBox { spacing: 6 padding: 16 + hoverEnabled: Qt.styleHints.useHoverEffects + delegate: MenuItem { width: control.width text: control.textRole ? (Array.isArray(control.model) ? modelData[control.textRole] : model[control.textRole]) : modelData diff --git a/src/imports/controls/material/Dial.qml b/src/imports/controls/material/Dial.qml index 38f2ebcb..7fbf351c 100644 --- a/src/imports/controls/material/Dial.qml +++ b/src/imports/controls/material/Dial.qml @@ -45,6 +45,8 @@ T.Dial { implicitWidth: 100 implicitHeight: 100 + hoverEnabled: Qt.styleHints.useHoverEffects + background: Rectangle { x: control.width / 2 - width / 2 y: control.height / 2 - height / 2 diff --git a/src/imports/controls/material/ItemDelegate.qml b/src/imports/controls/material/ItemDelegate.qml index 9157bf37..b9db276d 100644 --- a/src/imports/controls/material/ItemDelegate.qml +++ b/src/imports/controls/material/ItemDelegate.qml @@ -52,6 +52,8 @@ T.ItemDelegate { padding: 16 spacing: 16 + hoverEnabled: Qt.styleHints.useHoverEffects + contentItem: Text { leftPadding: control.checkable && !control.mirrored ? (control.indicator ? control.indicator.width : 0) + control.spacing : 0 rightPadding: control.checkable && control.mirrored ? (control.indicator ? control.indicator.width : 0) + control.spacing : 0 diff --git a/src/imports/controls/material/MenuItem.qml b/src/imports/controls/material/MenuItem.qml index ff0672a0..d3348d35 100644 --- a/src/imports/controls/material/MenuItem.qml +++ b/src/imports/controls/material/MenuItem.qml @@ -54,6 +54,8 @@ T.MenuItem { bottomPadding: 12 spacing: 16 + hoverEnabled: Qt.styleHints.useHoverEffects + indicator: CheckIndicator { x: text ? (control.mirrored ? control.width - width - control.rightPadding : control.leftPadding) : control.leftPadding + (control.availableWidth - width) / 2 y: control.topPadding + (control.availableHeight - height) / 2 diff --git a/src/imports/controls/material/RadioButton.qml b/src/imports/controls/material/RadioButton.qml index 52eed780..a2450f49 100644 --- a/src/imports/controls/material/RadioButton.qml +++ b/src/imports/controls/material/RadioButton.qml @@ -54,6 +54,8 @@ T.RadioButton { topPadding: padding + 6 bottomPadding: padding + 6 + hoverEnabled: Qt.styleHints.useHoverEffects + indicator: RadioIndicator { x: text ? (control.mirrored ? control.width - width - control.rightPadding : control.leftPadding) : control.leftPadding + (control.availableWidth - width) / 2 y: control.topPadding + (control.availableHeight - height) / 2 diff --git a/src/imports/controls/material/RadioDelegate.qml b/src/imports/controls/material/RadioDelegate.qml index 2d6d3f9e..1d056aa8 100644 --- a/src/imports/controls/material/RadioDelegate.qml +++ b/src/imports/controls/material/RadioDelegate.qml @@ -54,6 +54,8 @@ T.RadioDelegate { bottomPadding: 8 spacing: 16 + hoverEnabled: Qt.styleHints.useHoverEffects + indicator: RadioIndicator { x: text ? (control.mirrored ? control.leftPadding : control.width - width - control.rightPadding) : control.leftPadding + (control.availableWidth - width) / 2 y: control.topPadding + (control.availableHeight - height) / 2 diff --git a/src/imports/controls/material/RangeSlider.qml b/src/imports/controls/material/RangeSlider.qml index f175dcff..c2672703 100644 --- a/src/imports/controls/material/RangeSlider.qml +++ b/src/imports/controls/material/RangeSlider.qml @@ -51,6 +51,8 @@ T.RangeSlider { padding: 6 + hoverEnabled: Qt.styleHints.useHoverEffects + first.handle: SliderHandle { x: control.leftPadding + (horizontal ? control.first.visualPosition * (control.availableWidth - width) : (control.availableWidth - width) / 2) y: control.topPadding + (horizontal ? (control.availableHeight - height) / 2 : control.first.visualPosition * (control.availableHeight - height)) diff --git a/src/imports/controls/material/ScrollBar.qml b/src/imports/controls/material/ScrollBar.qml index 9252350b..4547a903 100644 --- a/src/imports/controls/material/ScrollBar.qml +++ b/src/imports/controls/material/ScrollBar.qml @@ -48,6 +48,8 @@ T.ScrollBar { padding: 1 + hoverEnabled: Qt.styleHints.useHoverEffects + contentItem: Rectangle { id: handle diff --git a/src/imports/controls/material/Slider.qml b/src/imports/controls/material/Slider.qml index 5378e767..dd6063bb 100644 --- a/src/imports/controls/material/Slider.qml +++ b/src/imports/controls/material/Slider.qml @@ -49,6 +49,8 @@ T.Slider { padding: 6 + hoverEnabled: Qt.styleHints.useHoverEffects + handle: SliderHandle { x: control.leftPadding + (horizontal ? control.visualPosition * (control.availableWidth - width) : (control.availableWidth - width) / 2) y: control.topPadding + (horizontal ? (control.availableHeight - height) / 2 : control.visualPosition * (control.availableHeight - height)) diff --git a/src/imports/controls/material/SpinBox.qml b/src/imports/controls/material/SpinBox.qml index 3c84fac2..74811c16 100644 --- a/src/imports/controls/material/SpinBox.qml +++ b/src/imports/controls/material/SpinBox.qml @@ -58,6 +58,8 @@ T.SpinBox { leftPadding: (control.mirrored ? (up.indicator ? up.indicator.width : 0) : (down.indicator ? down.indicator.width : 0)) rightPadding: (control.mirrored ? (down.indicator ? down.indicator.width : 0) : (up.indicator ? up.indicator.width : 0)) + hoverEnabled: Qt.styleHints.useHoverEffects + validator: IntValidator { locale: control.locale.name bottom: Math.min(control.from, control.to) diff --git a/src/imports/controls/material/SwipeDelegate.qml b/src/imports/controls/material/SwipeDelegate.qml index 7bdce394..bc9b49c2 100644 --- a/src/imports/controls/material/SwipeDelegate.qml +++ b/src/imports/controls/material/SwipeDelegate.qml @@ -54,6 +54,8 @@ T.SwipeDelegate { bottomPadding: 8 spacing: 16 + hoverEnabled: Qt.styleHints.useHoverEffects + contentItem: Text { leftPadding: !control.mirrored ? (control.indicator ? control.indicator.width + control.spacing : 0) : 0 rightPadding: control.mirrored ? (control.indicator ? control.indicator.width + control.spacing : 0) : 0 diff --git a/src/imports/controls/material/Switch.qml b/src/imports/controls/material/Switch.qml index 96cfc4a3..32f083f8 100644 --- a/src/imports/controls/material/Switch.qml +++ b/src/imports/controls/material/Switch.qml @@ -52,6 +52,8 @@ T.Switch { padding: 8 spacing: 8 + hoverEnabled: Qt.styleHints.useHoverEffects + indicator: SwitchIndicator { x: text ? (control.mirrored ? control.width - width - control.rightPadding : control.leftPadding) : control.leftPadding + (control.availableWidth - width) / 2 y: control.topPadding + (control.availableHeight - height) / 2 diff --git a/src/imports/controls/material/SwitchDelegate.qml b/src/imports/controls/material/SwitchDelegate.qml index 0baef722..b88dbe01 100644 --- a/src/imports/controls/material/SwitchDelegate.qml +++ b/src/imports/controls/material/SwitchDelegate.qml @@ -54,6 +54,8 @@ T.SwitchDelegate { bottomPadding: 8 spacing: 16 + hoverEnabled: Qt.styleHints.useHoverEffects + indicator: SwitchIndicator { x: text ? (control.mirrored ? control.leftPadding : control.width - width - control.rightPadding) : control.leftPadding + (control.availableWidth - width) / 2 y: control.topPadding + (control.availableHeight - height) / 2 diff --git a/src/imports/controls/material/TabButton.qml b/src/imports/controls/material/TabButton.qml index 9f63bcc4..9e6e8333 100644 --- a/src/imports/controls/material/TabButton.qml +++ b/src/imports/controls/material/TabButton.qml @@ -50,6 +50,8 @@ T.TabButton { padding: 12 + hoverEnabled: Qt.styleHints.useHoverEffects + contentItem: Text { text: control.text font: control.font diff --git a/src/imports/controls/material/TextArea.qml b/src/imports/controls/material/TextArea.qml index efa5b850..3a95600e 100644 --- a/src/imports/controls/material/TextArea.qml +++ b/src/imports/controls/material/TextArea.qml @@ -51,6 +51,8 @@ T.TextArea { topPadding: 8 bottomPadding: 16 + hoverEnabled: Qt.styleHints.useHoverEffects + color: enabled ? Material.primaryTextColor : Material.hintTextColor selectionColor: Material.accentColor selectedTextColor: Material.primaryHighlightedTextColor diff --git a/src/imports/controls/material/TextField.qml b/src/imports/controls/material/TextField.qml index 6014e50f..a6406afa 100644 --- a/src/imports/controls/material/TextField.qml +++ b/src/imports/controls/material/TextField.qml @@ -49,6 +49,8 @@ T.TextField { topPadding: 8 bottomPadding: 16 + hoverEnabled: Qt.styleHints.useHoverEffects + color: enabled ? Material.primaryTextColor : Material.hintTextColor selectionColor: Material.accentColor selectedTextColor: Material.primaryHighlightedTextColor diff --git a/src/imports/controls/material/ToolButton.qml b/src/imports/controls/material/ToolButton.qml index 12cb604d..05192920 100644 --- a/src/imports/controls/material/ToolButton.qml +++ b/src/imports/controls/material/ToolButton.qml @@ -50,6 +50,8 @@ T.ToolButton { padding: 6 + hoverEnabled: Qt.styleHints.useHoverEffects + contentItem: Text { text: control.text font: control.font -- cgit v1.2.3