Commit 5d37de26 authored by MH Johnson's avatar MH Johnson Committed by Flutter GitHub Bot

[Gallery] Fix text contrast ratio on homepage and contacts demo (#48752)

parent 72561cd4
...@@ -169,9 +169,9 @@ class ContactsDemoState extends State<ContactsDemo> { ...@@ -169,9 +169,9 @@ class ContactsDemoState extends State<ContactsDemo> {
const DecoratedBox( const DecoratedBox(
decoration: BoxDecoration( decoration: BoxDecoration(
gradient: LinearGradient( gradient: LinearGradient(
begin: Alignment(0.0, -1.0), begin: Alignment.topCenter,
end: Alignment(0.0, -0.4), end: Alignment(0, .35),
colors: <Color>[Color(0x60000000), Color(0x00000000)], colors: <Color>[Color(0xC0000000), Color(0x00000000)],
), ),
), ),
), ),
......
...@@ -194,9 +194,10 @@ class _Heading extends StatelessWidget { ...@@ -194,9 +194,10 @@ class _Heading extends StatelessWidget {
final ThemeData theme = Theme.of(context); final ThemeData theme = Theme.of(context);
return _OptionsItem( return _OptionsItem(
child: DefaultTextStyle( child: DefaultTextStyle(
style: theme.textTheme.body1.copyWith( style: theme.textTheme.title.copyWith(
fontFamily: 'GoogleSans', fontFamily: 'GoogleSans',
color: theme.accentColor, color: theme.colorScheme.onPrimary,
fontWeight: FontWeight.w700,
), ),
child: Semantics( child: Semantics(
child: Text(text), child: Text(text),
...@@ -525,7 +526,7 @@ class GalleryOptionsPage extends StatelessWidget { ...@@ -525,7 +526,7 @@ class GalleryOptionsPage extends StatelessWidget {
_TextDirectionItem(options, onOptionsChanged), _TextDirectionItem(options, onOptionsChanged),
_TimeDilationItem(options, onOptionsChanged), _TimeDilationItem(options, onOptionsChanged),
const Divider(), const Divider(),
const _Heading('Platform mechanics'), const ExcludeSemantics(child: _Heading('Platform mechanics')),
_PlatformItem(options, onOptionsChanged), _PlatformItem(options, onOptionsChanged),
..._enabledDiagnosticItems(), ..._enabledDiagnosticItems(),
const Divider(), const Divider(),
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
// found in the LICENSE file. // found in the LICENSE file.
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_gallery/gallery/app.dart';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
import 'package:flutter_gallery/demo/all.dart'; import 'package:flutter_gallery/demo/all.dart';
import 'package:flutter_gallery/gallery/themes.dart'; import 'package:flutter_gallery/gallery/themes.dart';
...@@ -756,4 +757,35 @@ void main() { ...@@ -756,4 +757,35 @@ void main() {
}); });
} }
}); });
group('Gallery home page meets text contrast guidelines', () {
testWidgets('options menu', (WidgetTester tester) async {
await tester.pumpWidget(const GalleryApp(testMode: true));
await tester.tap(find.byTooltip('Toggle options page'));
await tester.pumpAndSettle();
await expectLater(tester, meetsGuideline(textContrastGuideline));
});
testWidgets('options menu - dark theme', (WidgetTester tester) async {
await tester.pumpWidget(const GalleryApp(testMode: true));
await tester.tap(find.byTooltip('Toggle options page'));
await tester.pumpAndSettle();
// Toggle dark mode.
final Finder themeToggleContainer = find.ancestor(
of: find.text('Theme'),
matching: find.byType(Container),
);
final Finder themeMenuButton = find.descendant(
of: themeToggleContainer,
matching: find.byIcon(Icons.arrow_drop_down),
);
await tester.tap(themeMenuButton);
await tester.pumpAndSettle();
await tester.tap(find.text('Dark'));
await tester.pumpAndSettle();
await expectLater(tester, meetsGuideline(textContrastGuideline));
});
});
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment