From f5dc26d0bcba854b2be503076bacb9508b897aa5 Mon Sep 17 00:00:00 2001 From: Nikita Krupenko Date: Sat, 20 Feb 2016 18:09:12 +0200 Subject: Do not limit ComboBox menu to predefined value This allows ComboBox menu to occupy more screen space and use the window size as limit. Task-number: QTBUG-50758 Change-Id: If430338f7baa291406f3ad0657d0cb267e17a3a2 Reviewed-by: J-P Nurmi --- src/imports/controls/material/ComboBox.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/imports/controls/material') diff --git a/src/imports/controls/material/ComboBox.qml b/src/imports/controls/material/ComboBox.qml index eb637ef2..7f47672e 100644 --- a/src/imports/controls/material/ComboBox.qml +++ b/src/imports/controls/material/ComboBox.qml @@ -108,7 +108,7 @@ T.ComboBox { popup: T.Popup { y: control.height implicitWidth: control.width - implicitHeight: Math.min(396, listview.contentHeight) + implicitHeight: listview.contentHeight transformOrigin: Item.Top topMargin: 12 bottomMargin: 12 -- cgit v1.2.3 From 119e43db9747ee070c84fc3ffb4c81ee4db35da8 Mon Sep 17 00:00:00 2001 From: J-P Nurmi Date: Mon, 22 Feb 2016 14:50:24 +0100 Subject: Material: add missing focus highlights Change-Id: Id678a095a56f7494c9f32160326ba667a6c0dc28 Task-number: QTBUG-51257 Reviewed-by: Mitch Curtis Reviewed-by: BogDan Vatra --- src/imports/controls/material/Button.qml | 8 ++++++++ src/imports/controls/material/CheckBox.qml | 2 +- src/imports/controls/material/ComboBox.qml | 8 ++++++++ src/imports/controls/material/RadioButton.qml | 2 +- src/imports/controls/material/SliderHandle.qml | 10 +++++++++- src/imports/controls/material/Switch.qml | 2 +- 6 files changed, 28 insertions(+), 4 deletions(-) (limited to 'src/imports/controls/material') diff --git a/src/imports/controls/material/Button.qml b/src/imports/controls/material/Button.qml index 77128861..a869c915 100644 --- a/src/imports/controls/material/Button.qml +++ b/src/imports/controls/material/Button.qml @@ -91,6 +91,14 @@ T.Button { } } + Rectangle { + width: parent.width + height: parent.height + radius: parent.radius + visible: control.activeFocus + color: control.Material.checkBoxUncheckedRippleColor + } + layer.enabled: control.enabled layer.effect: DropShadow { verticalOffset: 1 diff --git a/src/imports/controls/material/CheckBox.qml b/src/imports/controls/material/CheckBox.qml index 5becfc5c..230f696f 100644 --- a/src/imports/controls/material/CheckBox.qml +++ b/src/imports/controls/material/CheckBox.qml @@ -87,7 +87,7 @@ T.CheckBox { height: width control: control colored: control.checked - opacity: control.pressed ? 1 : 0 + opacity: control.pressed || control.activeFocus ? 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 7f47672e..1c293567 100644 --- a/src/imports/controls/material/ComboBox.qml +++ b/src/imports/controls/material/ComboBox.qml @@ -101,6 +101,14 @@ T.ComboBox { opacity: !control.enabled ? 0.5 : 1.0 source: "qrc:/qt-project.org/imports/Qt/labs/controls/material/images/drop-indicator.png" } + + Rectangle { + width: parent.width + height: parent.height + radius: parent.radius + visible: control.activeFocus + color: control.Material.checkBoxUncheckedRippleColor + } } //! [background] diff --git a/src/imports/controls/material/RadioButton.qml b/src/imports/controls/material/RadioButton.qml index 25d91a5c..f01d2dc9 100644 --- a/src/imports/controls/material/RadioButton.qml +++ b/src/imports/controls/material/RadioButton.qml @@ -72,7 +72,7 @@ T.RadioButton { height: width control: control colored: control.checked - opacity: control.pressed ? 1 : 0 + opacity: control.pressed || control.activeFocus ? 1 : 0 } Rectangle { diff --git a/src/imports/controls/material/SliderHandle.qml b/src/imports/controls/material/SliderHandle.qml index dc1a836d..6f54eaf5 100644 --- a/src/imports/controls/material/SliderHandle.qml +++ b/src/imports/controls/material/SliderHandle.qml @@ -55,7 +55,7 @@ Item { height: parent.height radius: width / 2 color: root.control.Material.accentColor - scale: root.handlePressed || root.handleHasFocus ? 1.5 : 1 + scale: root.handlePressed ? 1.5 : 1 Behavior on scale { NumberAnimation { @@ -63,4 +63,12 @@ Item { } } } + + Ripple { + width: parent.width + height: width + control: root.control + colored: true + opacity: root.handleHasFocus && !root.handlePressed ? 1 : 0 + } } diff --git a/src/imports/controls/material/Switch.qml b/src/imports/controls/material/Switch.qml index f44fb31a..0b9edcab 100644 --- a/src/imports/controls/material/Switch.qml +++ b/src/imports/controls/material/Switch.qml @@ -68,7 +68,7 @@ T.Switch { height: width control: control colored: control.checked - opacity: control.pressed ? 1 : 0 + opacity: control.pressed || control.activeFocus ? 1 : 0 } Rectangle { -- cgit v1.2.3 From fd33c3991418c38075ac39291807d223cc525877 Mon Sep 17 00:00:00 2001 From: J-P Nurmi Date: Mon, 22 Feb 2016 17:03:40 +0100 Subject: Material: tweak the accent color and ripples for the dark theme In general, the appropriate shade is 200 in the dark theme. Furthermore, reduce the translucency of the ripple in the dark theme to make it better visible. Change-Id: I6060dfbdb2d291eded56ca648e1356d6228e3b25 Reviewed-by: Mitch Curtis Reviewed-by: BogDan Vatra --- src/imports/controls/material/qquickmaterialstyle.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/imports/controls/material') diff --git a/src/imports/controls/material/qquickmaterialstyle.cpp b/src/imports/controls/material/qquickmaterialstyle.cpp index c2e43254..57b74d62 100644 --- a/src/imports/controls/material/qquickmaterialstyle.cpp +++ b/src/imports/controls/material/qquickmaterialstyle.cpp @@ -622,7 +622,7 @@ QColor QQuickMaterialStyle::accentColor() const return QColor::fromRgba(m_accent); if (m_accent > BlueGrey) return QColor(); - return colors[m_accent][Shade500]; + return colors[m_accent][m_theme == Light ? Shade500 : Shade200]; } QColor QQuickMaterialStyle::backgroundColor() const @@ -732,7 +732,7 @@ QColor QQuickMaterialStyle::checkBoxCheckedRippleColor() const { QColor pressColor = accentColor(); // TODO: find out actual value - pressColor.setAlpha(30); + pressColor.setAlpha(m_theme == Light ? 30 : 50); return pressColor; } -- cgit v1.2.3 From 859663ae2971f3b6b99239dda24782eda2d88347 Mon Sep 17 00:00:00 2001 From: J-P Nurmi Date: Tue, 23 Feb 2016 10:54:29 +0100 Subject: QQuickMaterialProgressStrip: reset the transformation matrix The trasformation matrix for the indeterminate animation has to be reset when switching back to non-indeterminate mode, or else the indicator is translated to a wrong position. Change-Id: I8489a504f0b9626dbd0172ba0fba842f4528d027 Task-number: QTBUG-51312 Reviewed-by: Mitch Curtis --- src/imports/controls/material/qquickmaterialprogressstrip.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'src/imports/controls/material') diff --git a/src/imports/controls/material/qquickmaterialprogressstrip.cpp b/src/imports/controls/material/qquickmaterialprogressstrip.cpp index 3ac09e24..1d888183 100644 --- a/src/imports/controls/material/qquickmaterialprogressstrip.cpp +++ b/src/imports/controls/material/qquickmaterialprogressstrip.cpp @@ -225,6 +225,7 @@ QSGNode *QQuickMaterialProgressStrip::updatePaintNode(QSGNode *oldNode, UpdatePa transformNode->appendChildNode(rectNode); } Q_ASSERT(transformNode->type() == QSGNode::TransformNodeType); + static_cast(transformNode)->setMatrix(QMatrix4x4()); QSGRectangleNode *rectNode = static_cast(transformNode->firstChild()); Q_ASSERT(rectNode->type() == QSGNode::GeometryNodeType); -- cgit v1.2.3