Change default text color of CupertinoAlertDialog to theme primary color (#111785)
diff --git a/packages/flutter/lib/src/cupertino/dialog.dart b/packages/flutter/lib/src/cupertino/dialog.dart
index 0cec4f9..13cb42b 100644
--- a/packages/flutter/lib/src/cupertino/dialog.dart
+++ b/packages/flutter/lib/src/cupertino/dialog.dart
@@ -1713,7 +1713,7 @@
Widget build(BuildContext context) {
TextStyle style = _kCupertinoDialogActionStyle.copyWith(
color: CupertinoDynamicColor.resolve(
- isDestructiveAction ? CupertinoColors.systemRed : CupertinoColors.systemBlue,
+ isDestructiveAction ? CupertinoColors.systemRed : CupertinoTheme.of(context).primaryColor,
context,
),
);
diff --git a/packages/flutter/test/cupertino/dialog_test.dart b/packages/flutter/test/cupertino/dialog_test.dart
index 42037f0..791cd20 100644
--- a/packages/flutter/test/cupertino/dialog_test.dart
+++ b/packages/flutter/test/cupertino/dialog_test.dart
@@ -125,6 +125,23 @@
expect(widget.style.color!.withAlpha(255), CupertinoColors.systemRed.color);
});
+ testWidgets('Dialog default action style', (WidgetTester tester) async {
+ await tester.pumpWidget(
+ CupertinoTheme(
+ data: const CupertinoThemeData(
+ primaryColor: CupertinoColors.systemGreen,
+ ),
+ child: boilerplate(const CupertinoDialogAction(
+ child: Text('Ok'),
+ )),
+ ),
+ );
+
+ final DefaultTextStyle widget = tester.widget(find.byType(DefaultTextStyle));
+
+ expect(widget.style.color!.withAlpha(255), CupertinoColors.systemGreen.color);
+ });
+
testWidgets('Dialog dark theme', (WidgetTester tester) async {
await tester.pumpWidget(
CupertinoApp(