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> {
const DecoratedBox(
decoration: BoxDecoration(
gradient: LinearGradient(
begin: Alignment(0.0, -1.0),
end: Alignment(0.0, -0.4),
colors: <Color>[Color(0x60000000), Color(0x00000000)],
begin: Alignment.topCenter,
end: Alignment(0, .35),
colors: <Color>[Color(0xC0000000), Color(0x00000000)],
),
),
),
......
......@@ -194,9 +194,10 @@ class _Heading extends StatelessWidget {
final ThemeData theme = Theme.of(context);
return _OptionsItem(
child: DefaultTextStyle(
style: theme.textTheme.body1.copyWith(
style: theme.textTheme.title.copyWith(
fontFamily: 'GoogleSans',
color: theme.accentColor,
color: theme.colorScheme.onPrimary,
fontWeight: FontWeight.w700,
),
child: Semantics(
child: Text(text),
......@@ -525,7 +526,7 @@ class GalleryOptionsPage extends StatelessWidget {
_TextDirectionItem(options, onOptionsChanged),
_TimeDilationItem(options, onOptionsChanged),
const Divider(),
const _Heading('Platform mechanics'),
const ExcludeSemantics(child: _Heading('Platform mechanics')),
_PlatformItem(options, onOptionsChanged),
..._enabledDiagnosticItems(),
const Divider(),
......
......@@ -3,6 +3,7 @@
// found in the LICENSE file.
import 'package:flutter/material.dart';
import 'package:flutter_gallery/gallery/app.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:flutter_gallery/demo/all.dart';
import 'package:flutter_gallery/gallery/themes.dart';
......@@ -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