mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
TextFormField.spellCheckConfiguration (#123295)
TextFormField.spellCheckConfiguration
This commit is contained in:
parent
142dd6022f
commit
dd3dc5efbf
@ -154,6 +154,7 @@ class TextFormField extends FormField<String> {
|
||||
bool enableIMEPersonalizedLearning = true,
|
||||
MouseCursor? mouseCursor,
|
||||
EditableTextContextMenuBuilder? contextMenuBuilder = _defaultContextMenuBuilder,
|
||||
SpellCheckConfiguration? spellCheckConfiguration,
|
||||
TextMagnifierConfiguration? magnifierConfiguration,
|
||||
}) : assert(initialValue == null || controller == null),
|
||||
assert(obscuringCharacter.length == 1),
|
||||
@ -235,6 +236,7 @@ class TextFormField extends FormField<String> {
|
||||
enableIMEPersonalizedLearning: enableIMEPersonalizedLearning,
|
||||
mouseCursor: mouseCursor,
|
||||
contextMenuBuilder: contextMenuBuilder,
|
||||
spellCheckConfiguration: spellCheckConfiguration,
|
||||
magnifierConfiguration: magnifierConfiguration,
|
||||
),
|
||||
);
|
||||
|
||||
@ -1145,6 +1145,36 @@ void main() {
|
||||
skip: kIsWeb, // [intended] we don't supply the cut/copy/paste buttons on the web.
|
||||
);
|
||||
|
||||
testWidgets('spellCheckConfiguration passes through to EditableText', (WidgetTester tester) async {
|
||||
final SpellCheckConfiguration mySpellCheckConfiguration = SpellCheckConfiguration(
|
||||
spellCheckService: DefaultSpellCheckService(),
|
||||
misspelledTextStyle: TextField.materialMisspelledTextStyle,
|
||||
);
|
||||
|
||||
await tester.pumpWidget(MaterialApp(
|
||||
home: Scaffold(
|
||||
body: TextFormField(
|
||||
spellCheckConfiguration: mySpellCheckConfiguration,
|
||||
),
|
||||
),
|
||||
));
|
||||
|
||||
expect(find.byType(EditableText), findsOneWidget);
|
||||
|
||||
final EditableText editableText = tester.widget(find.byType(EditableText));
|
||||
|
||||
// Can't do equality comparison on spellCheckConfiguration itself because it
|
||||
// will have been copied.
|
||||
expect(
|
||||
editableText.spellCheckConfiguration?.spellCheckService,
|
||||
equals(mySpellCheckConfiguration.spellCheckService),
|
||||
);
|
||||
expect(
|
||||
editableText.spellCheckConfiguration?.misspelledTextStyle,
|
||||
equals(mySpellCheckConfiguration.misspelledTextStyle),
|
||||
);
|
||||
});
|
||||
|
||||
testWidgets('magnifierConfiguration passes through to EditableText', (WidgetTester tester) async {
|
||||
final TextMagnifierConfiguration myTextMagnifierConfiguration = TextMagnifierConfiguration(
|
||||
magnifierBuilder: (BuildContext context, MagnifierController controller, ValueNotifier<MagnifierInfo> notifier) {
|
||||
@ -1154,7 +1184,7 @@ void main() {
|
||||
|
||||
await tester.pumpWidget(MaterialApp(
|
||||
home: Scaffold(
|
||||
body: TextField(
|
||||
body: TextFormField(
|
||||
magnifierConfiguration: myTextMagnifierConfiguration,
|
||||
),
|
||||
),
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user