aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/quickcontrols2/ios/Button.qml4
-rw-r--r--src/quickcontrols2/ios/qquickiostheme.mm10
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);
}