chore: adopt Dart 3.9 toolchain — honest floor + tall-style reformat (T-353)
Raise the declared minimums in pubspec.yaml to what our deps already require: Flutter >=3.35.0 / Dart >=3.9.0 (was 3.19.0 / 3.5.0). alchemist 0.12 needs Flutter 3.32; Dart 3.9 first ships in Flutter 3.35, so 3.35 is the binding floor. Pin the exact build toolchain in .fvmrc (Flutter 3.44.1). Moving to the Dart 3.9 language level switches `dart format` to the new "tall" style and enables two new lints. This commit is the resulting mechanical churn, isolated from any behaviour change: - whole-tree `dart format` reformat (tall style) - `dart fix` for unnecessary_underscores + use_null_aware_elements No runtime behaviour change; `make test` green. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -19,12 +19,12 @@ class _Recorder {
|
||||
}
|
||||
|
||||
Widget _host(Widget child) => Directionality(
|
||||
textDirection: TextDirection.ltr,
|
||||
child: MediaQuery(
|
||||
data: const MediaQueryData(),
|
||||
child: Center(child: SizedBox(width: 200, height: 100, child: child)),
|
||||
),
|
||||
);
|
||||
textDirection: TextDirection.ltr,
|
||||
child: MediaQuery(
|
||||
data: const MediaQueryData(),
|
||||
child: Center(child: SizedBox(width: 200, height: 100, child: child)),
|
||||
),
|
||||
);
|
||||
|
||||
CustomTextEdit _build({
|
||||
required FocusNode focusNode,
|
||||
@@ -43,7 +43,8 @@ CustomTextEdit _build({
|
||||
onDelete: () => r.deletes++,
|
||||
onComposing: r.composings.add,
|
||||
onAction: r.actions.add,
|
||||
onKeyEvent: onKeyEvent ??
|
||||
onKeyEvent:
|
||||
onKeyEvent ??
|
||||
(node, event) {
|
||||
r.keys.add(event);
|
||||
return KeyEventResult.ignored;
|
||||
@@ -230,10 +231,7 @@ void main() {
|
||||
await tester.pump();
|
||||
final state = tester.state<CustomTextEditState>(find.byType(CustomTextEdit));
|
||||
// Send a value shorter than the init state (2 chars) directly.
|
||||
state.updateEditingValue(const TextEditingValue(
|
||||
text: '',
|
||||
selection: TextSelection.collapsed(offset: 0),
|
||||
));
|
||||
state.updateEditingValue(const TextEditingValue(text: '', selection: TextSelection.collapsed(offset: 0)));
|
||||
expect(r.deletes, 1);
|
||||
});
|
||||
|
||||
@@ -244,11 +242,7 @@ void main() {
|
||||
await tester.pumpWidget(_host(_build(focusNode: focus, r: r, autofocus: true)));
|
||||
await tester.pump();
|
||||
final state = tester.state<CustomTextEditState>(find.byType(CustomTextEdit));
|
||||
state.updateEditingValue(const TextEditingValue(
|
||||
text: 'hi',
|
||||
selection: TextSelection.collapsed(offset: 2),
|
||||
composing: TextRange(start: 0, end: 2),
|
||||
));
|
||||
state.updateEditingValue(const TextEditingValue(text: 'hi', selection: TextSelection.collapsed(offset: 2), composing: TextRange(start: 0, end: 2)));
|
||||
expect(r.composings, contains('hi'));
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user