diff options
author | J-P Nurmi <jpnurmi@qt.io> | 2016-05-13 23:39:15 +0200 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2016-05-18 09:26:00 +0000 |
commit | 08eb526524e92e0d1139cb74e1a7818bcd8d5d6a (patch) | |
tree | 2ae9ddb0a283f182a3794ac69435e6d25c61ca40 /src/imports/controls/material/Button.qml | |
parent | b6ecb5a4d14663dc00d8179f590e86bfd52c6881 (diff) |
Add support for flat Buttons
Task-number: QTBUG-51054
Change-Id: Ib4b23b624bc34d16c5acc1568881b609d3fd64b8
Reviewed-by: Nikita Krupenko <krnekit@gmail.com>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'src/imports/controls/material/Button.qml')
-rw-r--r-- | src/imports/controls/material/Button.qml | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/src/imports/controls/material/Button.qml b/src/imports/controls/material/Button.qml index a1903f3e..7eb28282 100644 --- a/src/imports/controls/material/Button.qml +++ b/src/imports/controls/material/Button.qml @@ -42,15 +42,6 @@ import QtQuick.Controls.Material.impl 2.0 T.Button { id: control - // TODO: Add a flat property to T.Button, and make this: - // flat ? control.down || control.hovered ? 2 : 0 - // : control.down ? 8 : 2 - // See https://bugreports.qt.io/browse/QTBUG-51054 - // NOTE: Flat buttons should be transparent by default and have no elevation when pressed - // However, on the desktop, flat buttons can be colored and have a 2dp when pressed - // This is called a flat raised button - Material.elevation: control.down ? 8 : 2 - implicitWidth: Math.max(background ? background.implicitWidth : 0, contentItem.implicitWidth + leftPadding + rightPadding) implicitHeight: Math.max(background ? background.implicitHeight : 0, @@ -62,11 +53,16 @@ T.Button { leftPadding: 8 rightPadding: 8 + Material.elevation: flat ? control.down || control.hovered ? 2 : 0 + : control.down ? 8 : 2 + Material.background: flat ? "transparent" : undefined + //! [contentItem] contentItem: Text { text: control.text font: control.font color: !control.enabled ? control.Material.hintTextColor : + control.flat && control.highlighted ? control.Material.accentColor : control.highlighted ? control.Material.primaryHighlightedTextColor : control.Material.primaryTextColor horizontalAlignment: Text.AlignHCenter verticalAlignment: Text.AlignVCenter |