diff options
-rw-r--r-- | src/quickcontrols2/ios/Button.qml | 4 | ||||
-rw-r--r-- | src/quickcontrols2/ios/qquickiostheme.mm | 10 |
2 files changed, 11 insertions, 3 deletions
diff --git a/src/quickcontrols2/ios/Button.qml b/src/quickcontrols2/ios/Button.qml index ca603004c3..72f17a9c3c 100644 --- a/src/quickcontrols2/ios/Button.qml +++ b/src/quickcontrols2/ios/Button.qml @@ -67,7 +67,9 @@ T.Button { icon: control.icon text: control.text font: control.font - color: control.palette.buttonText + color: control.flat ? (control.enabled ? (control.down ? control.palette.highlight : control.palette.button) + : control.palette.mid) + : control.palette.buttonText } background: Rectangle { diff --git a/src/quickcontrols2/ios/qquickiostheme.mm b/src/quickcontrols2/ios/qquickiostheme.mm index 9df29435f7..bcda134e81 100644 --- a/src/quickcontrols2/ios/qquickiostheme.mm +++ b/src/quickcontrols2/ios/qquickiostheme.mm @@ -56,18 +56,22 @@ void QQuickIOSTheme::initialize(QQuickTheme *theme) QColor blue; QColor white; QColor disabled; + QColor grey; #ifdef Q_OS_IOS blue = qt_mac_toQColor(UIColor.systemBlueColor.CGColor); disabled = qt_mac_toQColor(UIColor.tertiarySystemFillColor.CGColor); white = qt_mac_toQColor(UIColor.whiteColor.CGColor); + grey = qt_mac_toQColor(UIColor.systemGrayColor.CGColor); #else blue = QColor(qRgba(0, 122, 255, 255)); white = QColor(qRgba(255, 255, 255, 255)); disabled = QColor(qRgba(118, 118, 128, 31)); + grey = QColor(qRgba(142, 142, 147, 255)); #endif - systemPalette.setColor(QPalette::Active, QPalette::Button, blue); + systemPalette.setColor(QPalette::Button, blue); systemPalette.setColor(QPalette::Disabled, QPalette::Button, disabled); - systemPalette.setColor(QPalette::Active, QPalette::ButtonText, white); + + systemPalette.setColor(QPalette::ButtonText, white); white.setAlphaF(0.5); systemPalette.setColor(QPalette::Disabled, QPalette::ButtonText, white); @@ -75,6 +79,8 @@ void QQuickIOSTheme::initialize(QQuickTheme *theme) blue.setAlphaF(0.8); systemPalette.setColor(QPalette::Highlight, blue); + systemPalette.setColor(QPalette::Mid, grey); + theme->setPalette(QQuickTheme::System, systemPalette); } |