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(