Enable sort_child_properties_last
lint (#91585)
This commit is contained in:
parent
ee07b0eafc
commit
6d5fc420b6
@ -186,7 +186,7 @@ linter:
|
||||
- recursive_getters
|
||||
- sized_box_for_whitespace
|
||||
- slash_for_doc_comments
|
||||
# - sort_child_properties_last # not yet tested
|
||||
- sort_child_properties_last
|
||||
- sort_constructors_first
|
||||
# - sort_pub_dependencies # prevents separating pinned transitive dependencies
|
||||
- sort_unnamed_constructors_first
|
||||
|
@ -16,14 +16,14 @@ class LogoScreen extends StatelessWidget {
|
||||
Widget build(BuildContext context) {
|
||||
print(_testSentinel);
|
||||
return Container(
|
||||
padding: const EdgeInsets.all(25),
|
||||
color: Colors.blue,
|
||||
child: Column(
|
||||
children: <Widget>[
|
||||
const Text('DeferredWidget', key: Key('DeferredWidget')),
|
||||
Image.asset('customassets/flutter_logo.png', key: const Key('DeferredImage')),
|
||||
]
|
||||
),
|
||||
padding: const EdgeInsets.all(25),
|
||||
color: Colors.blue,
|
||||
);
|
||||
}
|
||||
const Text('DeferredWidget', key: Key('DeferredWidget')),
|
||||
Image.asset('customassets/flutter_logo.png', key: const Key('DeferredImage')),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -132,18 +132,18 @@ class ExampleDragSource extends StatelessWidget {
|
||||
if (heavy) {
|
||||
return LongPressDraggable<Color>(
|
||||
data: color,
|
||||
child: contents,
|
||||
feedback: feedback,
|
||||
feedbackOffset: feedbackOffset,
|
||||
dragAnchorStrategy: dragAnchorStrategy,
|
||||
child: contents,
|
||||
);
|
||||
} else {
|
||||
return Draggable<Color>(
|
||||
data: color,
|
||||
child: contents,
|
||||
feedback: feedback,
|
||||
feedbackOffset: feedbackOffset,
|
||||
dragAnchorStrategy: dragAnchorStrategy,
|
||||
child: contents,
|
||||
);
|
||||
}
|
||||
}
|
||||
@ -208,10 +208,10 @@ class MovableBall extends StatelessWidget {
|
||||
if (position == ballPosition) {
|
||||
return Draggable<bool>(
|
||||
data: true,
|
||||
child: ball,
|
||||
childWhenDragging: dashedBall,
|
||||
feedback: ball,
|
||||
maxSimultaneousDrags: 1,
|
||||
child: ball,
|
||||
);
|
||||
} else {
|
||||
return DragTarget<bool>(
|
||||
|
@ -35,9 +35,6 @@ class MyStatelessWidget extends StatelessWidget {
|
||||
width: 100,
|
||||
height: 100,
|
||||
child: CupertinoContextMenu(
|
||||
child: Container(
|
||||
color: Colors.red,
|
||||
),
|
||||
actions: <Widget>[
|
||||
CupertinoContextMenuAction(
|
||||
child: const Text('Action one'),
|
||||
@ -52,6 +49,9 @@ class MyStatelessWidget extends StatelessWidget {
|
||||
},
|
||||
),
|
||||
],
|
||||
child: Container(
|
||||
color: Colors.red,
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
|
@ -38,12 +38,12 @@ class MyStatelessWidget extends StatelessWidget {
|
||||
backgroundColor: Color(0xFFE0E0E0),
|
||||
actions: <Widget>[
|
||||
TextButton(
|
||||
child: Text('OPEN'),
|
||||
onPressed: null,
|
||||
child: Text('OPEN'),
|
||||
),
|
||||
TextButton(
|
||||
child: Text('DISMISS'),
|
||||
onPressed: null,
|
||||
child: Text('DISMISS'),
|
||||
),
|
||||
],
|
||||
),
|
||||
|
@ -42,8 +42,8 @@ class MyStatelessWidget extends StatelessWidget {
|
||||
backgroundColor: Colors.green,
|
||||
actions: <Widget>[
|
||||
TextButton(
|
||||
child: Text('DISMISS'),
|
||||
onPressed: null,
|
||||
child: Text('DISMISS'),
|
||||
),
|
||||
],
|
||||
),
|
||||
|
@ -97,8 +97,8 @@ class _BottomAppBarDemoState extends State<BottomAppBarDemo> {
|
||||
floatingActionButton: _showFab
|
||||
? FloatingActionButton(
|
||||
onPressed: () {},
|
||||
child: const Icon(Icons.add),
|
||||
tooltip: 'Create',
|
||||
child: const Icon(Icons.add),
|
||||
)
|
||||
: null,
|
||||
floatingActionButtonLocation: _fabLocation,
|
||||
|
@ -50,8 +50,8 @@ class _MyStatefulWidgetState extends State<MyStatefulWidget> {
|
||||
},
|
||||
items: items.map((String item) {
|
||||
return DropdownMenuItem<String>(
|
||||
child: Text('Log $item'),
|
||||
value: item,
|
||||
child: Text('Log $item'),
|
||||
);
|
||||
}).toList(),
|
||||
),
|
||||
|
@ -36,8 +36,8 @@ class MyStatelessWidget extends StatelessWidget {
|
||||
onPressed: () {
|
||||
// Add your onPressed code here!
|
||||
},
|
||||
child: const Icon(Icons.navigation),
|
||||
backgroundColor: Colors.green,
|
||||
child: const Icon(Icons.navigation),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
@ -105,8 +105,8 @@ class MyNavigationRailFab extends StatelessWidget {
|
||||
),
|
||||
child: animation.value == 0
|
||||
? FloatingActionButton(
|
||||
child: const Icon(Icons.add),
|
||||
onPressed: onPressed,
|
||||
child: const Icon(Icons.add),
|
||||
)
|
||||
: Align(
|
||||
alignment: AlignmentDirectional.centerStart,
|
||||
|
@ -39,8 +39,8 @@ class MyStatelessWidget extends StatelessWidget {
|
||||
content: Text('This is a MaterialBanner'),
|
||||
actions: <Widget>[
|
||||
TextButton(
|
||||
child: Text('DISMISS'),
|
||||
onPressed: null,
|
||||
child: Text('DISMISS'),
|
||||
),
|
||||
],
|
||||
),
|
||||
|
@ -34,7 +34,6 @@ class MyStatelessWidget extends StatelessWidget {
|
||||
Widget build(BuildContext context) {
|
||||
return Tooltip(
|
||||
message: 'I am a Tooltip',
|
||||
child: const Text('Tap this text and hold down to show a tooltip.'),
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(25),
|
||||
gradient:
|
||||
@ -48,6 +47,7 @@ class MyStatelessWidget extends StatelessWidget {
|
||||
),
|
||||
showDuration: const Duration(seconds: 2),
|
||||
waitDuration: const Duration(seconds: 1),
|
||||
child: const Text('Tap this text and hold down to show a tooltip.'),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -56,8 +56,8 @@ class _MyStatefulWidgetState extends State<MyStatefulWidget> {
|
||||
value: _currentStyle,
|
||||
child: Center(
|
||||
child: ElevatedButton(
|
||||
child: const Text('Change Color'),
|
||||
onPressed: _changeColor,
|
||||
child: const Text('Change Color'),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
@ -42,7 +42,7 @@ class _MyStatefulWidgetState extends State<MyStatefulWidget> {
|
||||
AnimatedSwitcher(
|
||||
duration: const Duration(milliseconds: 500),
|
||||
transitionBuilder: (Widget child, Animation<double> animation) {
|
||||
return ScaleTransition(child: child, scale: animation);
|
||||
return ScaleTransition(scale: animation, child: child);
|
||||
},
|
||||
child: Text(
|
||||
'$_count',
|
||||
|
@ -71,9 +71,9 @@ class _MyStatefulWidgetState extends State<MyStatefulWidget> {
|
||||
} else {
|
||||
children = const <Widget>[
|
||||
SizedBox(
|
||||
child: CircularProgressIndicator(),
|
||||
width: 60,
|
||||
height: 60,
|
||||
child: CircularProgressIndicator(),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.only(top: 16),
|
||||
|
@ -82,9 +82,9 @@ class _MyStatefulWidgetState extends State<MyStatefulWidget> {
|
||||
case ConnectionState.waiting:
|
||||
children = const <Widget>[
|
||||
SizedBox(
|
||||
child: CircularProgressIndicator(),
|
||||
width: 60,
|
||||
height: 60,
|
||||
child: CircularProgressIndicator(),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.only(top: 16),
|
||||
|
@ -37,9 +37,9 @@ class MyStatelessWidget extends StatelessWidget {
|
||||
width: 300,
|
||||
color: Colors.red,
|
||||
child: FittedBox(
|
||||
fit: BoxFit.fill,
|
||||
child: Image.network(
|
||||
'https://flutter.github.io/assets-for-api-docs/assets/widgets/owl-2.jpg'),
|
||||
fit: BoxFit.fill,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
@ -34,7 +34,15 @@ class MyStatelessWidget extends StatelessWidget {
|
||||
body: Center(
|
||||
child: PhysicalShape(
|
||||
elevation: 5.0,
|
||||
clipper: ShapeBorderClipper(
|
||||
shape: RoundedRectangleBorder(
|
||||
borderRadius: BorderRadius.circular(10.0),
|
||||
),
|
||||
),
|
||||
color: Colors.orange,
|
||||
child: const SizedBox(
|
||||
height: 200.0,
|
||||
width: 200.0,
|
||||
child: Center(
|
||||
child: Text(
|
||||
'Hello, World!',
|
||||
@ -44,14 +52,7 @@ class MyStatelessWidget extends StatelessWidget {
|
||||
),
|
||||
),
|
||||
),
|
||||
height: 200.0,
|
||||
width: 200.0,
|
||||
),
|
||||
clipper: ShapeBorderClipper(
|
||||
shape: RoundedRectangleBorder(
|
||||
borderRadius: BorderRadius.circular(10.0),
|
||||
)),
|
||||
color: Colors.orange,
|
||||
),
|
||||
),
|
||||
);
|
||||
|
@ -42,11 +42,6 @@ class _MyStatefulWidgetState extends State<MyStatefulWidget> {
|
||||
padding: const EdgeInsets.symmetric(vertical: 16),
|
||||
itemBuilder: (BuildContext context, int index) {
|
||||
return Dismissible(
|
||||
child: ListTile(
|
||||
title: Text(
|
||||
'Item ${items[index]}',
|
||||
),
|
||||
),
|
||||
background: Container(
|
||||
color: Colors.green,
|
||||
),
|
||||
@ -56,6 +51,11 @@ class _MyStatefulWidgetState extends State<MyStatefulWidget> {
|
||||
items.removeAt(index);
|
||||
});
|
||||
},
|
||||
child: ListTile(
|
||||
title: Text(
|
||||
'Item ${items[index]}',
|
||||
),
|
||||
),
|
||||
);
|
||||
},
|
||||
);
|
||||
|
@ -43,14 +43,6 @@ class _MyStatefulWidgetState extends State<MyStatefulWidget> {
|
||||
Draggable<int>(
|
||||
// Data is the value this Draggable stores.
|
||||
data: 10,
|
||||
child: Container(
|
||||
height: 100.0,
|
||||
width: 100.0,
|
||||
color: Colors.lightGreenAccent,
|
||||
child: const Center(
|
||||
child: Text('Draggable'),
|
||||
),
|
||||
),
|
||||
feedback: Container(
|
||||
color: Colors.deepOrange,
|
||||
height: 100,
|
||||
@ -65,6 +57,14 @@ class _MyStatefulWidgetState extends State<MyStatefulWidget> {
|
||||
child: Text('Child When Dragging'),
|
||||
),
|
||||
),
|
||||
child: Container(
|
||||
height: 100.0,
|
||||
width: 100.0,
|
||||
color: Colors.lightGreenAccent,
|
||||
child: const Center(
|
||||
child: Text('Draggable'),
|
||||
),
|
||||
),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (
|
||||
|
@ -42,10 +42,10 @@ class MyStatelessWidget extends StatelessWidget {
|
||||
return child;
|
||||
}
|
||||
return AnimatedOpacity(
|
||||
child: child,
|
||||
opacity: frame == null ? 0 : 1,
|
||||
duration: const Duration(seconds: 1),
|
||||
curve: Curves.easeOut,
|
||||
child: child,
|
||||
);
|
||||
},
|
||||
),
|
||||
|
@ -49,12 +49,12 @@ class _MyStatefulWidgetState extends State<MyStatefulWidget> {
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: <Widget>[
|
||||
ElevatedButton(
|
||||
child: const Text('Slide up'),
|
||||
onPressed: _slideUp,
|
||||
child: const Text('Slide up'),
|
||||
),
|
||||
ElevatedButton(
|
||||
child: const Text('Slide down'),
|
||||
onPressed: _slideDown,
|
||||
child: const Text('Slide down'),
|
||||
),
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(50),
|
||||
|
@ -45,8 +45,8 @@ class _MyHomePageState extends State<MyHomePage> {
|
||||
title: const Text('Persistence Example'),
|
||||
),
|
||||
body: PageStorage(
|
||||
child: pages[currentTab],
|
||||
bucket: _bucket,
|
||||
child: pages[currentTab],
|
||||
),
|
||||
bottomNavigationBar: BottomNavigationBar(
|
||||
currentIndex: currentTab,
|
||||
|
@ -74,8 +74,8 @@ class _MyStatefulWidgetState extends State<MyStatefulWidget>
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return OutlinedButton(
|
||||
child: Text('${_answer.value}'),
|
||||
onPressed: _incrementAnswer,
|
||||
child: Text('${_answer.value}'),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -29,16 +29,16 @@ class MyStatelessWidget extends StatelessWidget {
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
body: RawScrollbar(
|
||||
child: ListView(
|
||||
children: List<Text>.generate(
|
||||
100, (int index) => Text((index * index).toString())),
|
||||
physics: const BouncingScrollPhysics(),
|
||||
),
|
||||
shape: const StadiumBorder(
|
||||
side: BorderSide(color: Colors.brown, width: 3.0)),
|
||||
thickness: 15.0,
|
||||
thumbColor: Colors.blue,
|
||||
isAlwaysShown: true,
|
||||
child: ListView(
|
||||
physics: const BouncingScrollPhysics(),
|
||||
children: List<Text>.generate(
|
||||
100, (int index) => Text((index * index).toString())),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
@ -795,6 +795,8 @@ class _CupertinoDatePickerDateTimeState extends State<CupertinoDatePicker> {
|
||||
|
||||
assert(debugIsFlipped == isHourRegionFlipped);
|
||||
},
|
||||
looping: true,
|
||||
selectionOverlay: selectionOverlay,
|
||||
children: List<Widget>.generate(24, (int index) {
|
||||
final int hour = isHourRegionFlipped ? (index + 12) % 24 : index;
|
||||
final int displayHour = widget.use24hFormat ? hour : (hour + 11) % 12 + 1;
|
||||
@ -808,8 +810,6 @@ class _CupertinoDatePickerDateTimeState extends State<CupertinoDatePicker> {
|
||||
),
|
||||
);
|
||||
}),
|
||||
looping: true,
|
||||
selectionOverlay: selectionOverlay,
|
||||
),
|
||||
);
|
||||
}
|
||||
@ -835,6 +835,8 @@ class _CupertinoDatePickerDateTimeState extends State<CupertinoDatePicker> {
|
||||
backgroundColor: widget.backgroundColor,
|
||||
squeeze: _kSqueeze,
|
||||
onSelectedItemChanged: _onSelectedItemChange,
|
||||
looping: true,
|
||||
selectionOverlay: selectionOverlay,
|
||||
children: List<Widget>.generate(60 ~/ widget.minuteInterval, (int index) {
|
||||
final int minute = index * widget.minuteInterval;
|
||||
|
||||
@ -858,8 +860,6 @@ class _CupertinoDatePickerDateTimeState extends State<CupertinoDatePicker> {
|
||||
),
|
||||
);
|
||||
}),
|
||||
looping: true,
|
||||
selectionOverlay: selectionOverlay,
|
||||
),
|
||||
);
|
||||
}
|
||||
@ -889,6 +889,7 @@ class _CupertinoDatePickerDateTimeState extends State<CupertinoDatePicker> {
|
||||
assert(selectedAmPm == 0 || selectedAmPm == 1);
|
||||
_onSelectedItemChange(index);
|
||||
},
|
||||
selectionOverlay: selectionOverlay,
|
||||
children: List<Widget>.generate(2, (int index) {
|
||||
return itemPositioningBuilder(
|
||||
context,
|
||||
@ -900,7 +901,6 @@ class _CupertinoDatePickerDateTimeState extends State<CupertinoDatePicker> {
|
||||
),
|
||||
);
|
||||
}),
|
||||
selectionOverlay: selectionOverlay,
|
||||
),
|
||||
);
|
||||
}
|
||||
@ -1172,6 +1172,8 @@ class _CupertinoDatePickerDateState extends State<CupertinoDatePicker> {
|
||||
if (_isCurrentDateValid)
|
||||
widget.onDateTimeChanged(DateTime(selectedYear, selectedMonth, selectedDay));
|
||||
},
|
||||
looping: true,
|
||||
selectionOverlay: selectionOverlay,
|
||||
children: List<Widget>.generate(31, (int index) {
|
||||
final int day = index + 1;
|
||||
return itemPositioningBuilder(
|
||||
@ -1182,8 +1184,6 @@ class _CupertinoDatePickerDateState extends State<CupertinoDatePicker> {
|
||||
),
|
||||
);
|
||||
}),
|
||||
looping: true,
|
||||
selectionOverlay: selectionOverlay,
|
||||
),
|
||||
);
|
||||
}
|
||||
@ -1213,6 +1213,8 @@ class _CupertinoDatePickerDateState extends State<CupertinoDatePicker> {
|
||||
if (_isCurrentDateValid)
|
||||
widget.onDateTimeChanged(DateTime(selectedYear, selectedMonth, selectedDay));
|
||||
},
|
||||
looping: true,
|
||||
selectionOverlay: selectionOverlay,
|
||||
children: List<Widget>.generate(12, (int index) {
|
||||
final int month = index + 1;
|
||||
final bool isInvalidMonth = (widget.minimumDate?.year == selectedYear && widget.minimumDate!.month > month)
|
||||
@ -1226,8 +1228,6 @@ class _CupertinoDatePickerDateState extends State<CupertinoDatePicker> {
|
||||
),
|
||||
);
|
||||
}),
|
||||
looping: true,
|
||||
selectionOverlay: selectionOverlay,
|
||||
),
|
||||
);
|
||||
}
|
||||
@ -1782,6 +1782,7 @@ class _CupertinoTimerPickerState extends State<CupertinoTimerPicker> {
|
||||
);
|
||||
});
|
||||
},
|
||||
selectionOverlay: selectionOverlay,
|
||||
children: List<Widget>.generate(24, (int index) {
|
||||
final String label = localizations.timerPickerHourLabel(index) ?? '';
|
||||
final String semanticsLabel = textDirectionFactor == 1
|
||||
@ -1794,7 +1795,6 @@ class _CupertinoTimerPickerState extends State<CupertinoTimerPicker> {
|
||||
child: _buildPickerNumberLabel(localizations.timerPickerHour(index), additionalPadding),
|
||||
);
|
||||
}),
|
||||
selectionOverlay: selectionOverlay,
|
||||
);
|
||||
}
|
||||
|
||||
@ -1847,6 +1847,7 @@ class _CupertinoTimerPickerState extends State<CupertinoTimerPicker> {
|
||||
);
|
||||
});
|
||||
},
|
||||
selectionOverlay: selectionOverlay,
|
||||
children: List<Widget>.generate(60 ~/ widget.minuteInterval, (int index) {
|
||||
final int minute = index * widget.minuteInterval;
|
||||
final String label = localizations.timerPickerMinuteLabel(minute) ?? '';
|
||||
@ -1860,7 +1861,6 @@ class _CupertinoTimerPickerState extends State<CupertinoTimerPicker> {
|
||||
child: _buildPickerNumberLabel(localizations.timerPickerMinute(minute), additionalPadding),
|
||||
);
|
||||
}),
|
||||
selectionOverlay: selectionOverlay,
|
||||
);
|
||||
}
|
||||
|
||||
@ -1913,6 +1913,7 @@ class _CupertinoTimerPickerState extends State<CupertinoTimerPicker> {
|
||||
);
|
||||
});
|
||||
},
|
||||
selectionOverlay: selectionOverlay,
|
||||
children: List<Widget>.generate(60 ~/ widget.secondInterval, (int index) {
|
||||
final int second = index * widget.secondInterval;
|
||||
final String label = localizations.timerPickerSecondLabel(second) ?? '';
|
||||
@ -1926,7 +1927,6 @@ class _CupertinoTimerPickerState extends State<CupertinoTimerPicker> {
|
||||
child: _buildPickerNumberLabel(localizations.timerPickerSecond(second), additionalPadding),
|
||||
);
|
||||
}),
|
||||
selectionOverlay: selectionOverlay,
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -381,8 +381,8 @@ class _MaterialBannerState extends State<MaterialBanner> {
|
||||
}
|
||||
|
||||
return Hero(
|
||||
child: ClipRect(child: materialBannerTransition),
|
||||
tag: '<MaterialBanner Hero tag - ${widget.content}>',
|
||||
child: ClipRect(child: materialBannerTransition),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -195,8 +195,8 @@ class _DropdownMenuItemButtonState<T> extends State<_DropdownMenuItemButton<T>>
|
||||
enableFeedback: widget.enableFeedback,
|
||||
onTap: _handleOnTap,
|
||||
onFocusChange: _handleFocusChange,
|
||||
child: child,
|
||||
borderRadius: itemBorderRadius,
|
||||
child: child,
|
||||
);
|
||||
}
|
||||
child = FadeTransition(opacity: opacity, child: child);
|
||||
|
@ -759,7 +759,7 @@ class _StepperState extends State<Stepper> with TickerProviderStateMixin {
|
||||
AnimatedSize(
|
||||
curve: Curves.fastOutSlowIn,
|
||||
duration: kThemeAnimationDuration,
|
||||
child: Column(children: stepPanels, crossAxisAlignment: CrossAxisAlignment.stretch),
|
||||
child: Column(crossAxisAlignment: CrossAxisAlignment.stretch, children: stepPanels),
|
||||
),
|
||||
_buildVerticalControls(widget.currentStep),
|
||||
],
|
||||
|
@ -88,8 +88,8 @@ void main() {
|
||||
const CupertinoApp(
|
||||
home: Center(
|
||||
child: CupertinoFormRow(
|
||||
child: CupertinoTextField(),
|
||||
error: error,
|
||||
child: CupertinoTextField(),
|
||||
),
|
||||
),
|
||||
),
|
||||
@ -105,8 +105,8 @@ void main() {
|
||||
const CupertinoApp(
|
||||
home: Center(
|
||||
child: CupertinoFormRow(
|
||||
child: CupertinoTextField(),
|
||||
helper: helper,
|
||||
child: CupertinoTextField(),
|
||||
),
|
||||
),
|
||||
),
|
||||
@ -123,9 +123,9 @@ void main() {
|
||||
const CupertinoApp(
|
||||
home: Center(
|
||||
child: CupertinoFormRow(
|
||||
child: CupertinoTextField(),
|
||||
helper: helper,
|
||||
error: error,
|
||||
child: CupertinoTextField(),
|
||||
),
|
||||
),
|
||||
),
|
||||
@ -145,9 +145,9 @@ void main() {
|
||||
const CupertinoApp(
|
||||
home: Center(
|
||||
child: CupertinoFormRow(
|
||||
child: CupertinoTextField(),
|
||||
helper: helper,
|
||||
error: error,
|
||||
child: CupertinoTextField(),
|
||||
),
|
||||
),
|
||||
),
|
||||
|
@ -182,9 +182,9 @@ void main() {
|
||||
width: 300.0,
|
||||
child: CupertinoPicker(
|
||||
itemExtent: 15.0,
|
||||
children: const <Widget>[Text('1'), Text('1')],
|
||||
onSelectedItemChanged: (int i) {},
|
||||
selectionOverlay: const CupertinoPickerDefaultSelectionOverlay(background: Color(0x12345678)),
|
||||
children: const <Widget>[Text('1'), Text('1')],
|
||||
),
|
||||
),
|
||||
),
|
||||
|
@ -3536,7 +3536,8 @@ void main() {
|
||||
value: 'One',
|
||||
items: const <DropdownMenuItem<String>>[
|
||||
DropdownMenuItem<String>(
|
||||
child: Text('One'), value: 'One'
|
||||
value: 'One',
|
||||
child: Text('One')
|
||||
),
|
||||
],
|
||||
onChanged: (_) { },
|
||||
|
@ -175,13 +175,13 @@ void main() {
|
||||
initiallyExpanded: true,
|
||||
title: TestText('Expanded', key: expandedTitleKey),
|
||||
backgroundColor: Colors.red,
|
||||
children: const <Widget>[ListTile(title: Text('0'))],
|
||||
trailing: TestIcon(key: expandedIconKey),
|
||||
children: const <Widget>[ListTile(title: Text('0'))],
|
||||
),
|
||||
ExpansionTile(
|
||||
title: TestText('Collapsed', key: collapsedTitleKey),
|
||||
children: const <Widget>[ListTile(title: Text('0'))],
|
||||
trailing: TestIcon(key: collapsedIconKey),
|
||||
children: const <Widget>[ListTile(title: Text('0'))],
|
||||
),
|
||||
],
|
||||
),
|
||||
|
@ -19,16 +19,16 @@ void main() {
|
||||
subtitle: const Text('Subtitle'),
|
||||
trailing: const Icon(Icons.thumb_up),
|
||||
),
|
||||
child: DecoratedBox(
|
||||
decoration: BoxDecoration(
|
||||
color: Colors.green[500],
|
||||
),
|
||||
),
|
||||
footer: GridTileBar(
|
||||
key: footerKey,
|
||||
title: const Text('Footer'),
|
||||
backgroundColor: Colors.black38,
|
||||
),
|
||||
child: DecoratedBox(
|
||||
decoration: BoxDecoration(
|
||||
color: Colors.green[500],
|
||||
),
|
||||
),
|
||||
),
|
||||
));
|
||||
|
||||
|
@ -556,9 +556,9 @@ void main() {
|
||||
testWidgets('PopupMenuButton fails when given both child and icon', (WidgetTester tester) async {
|
||||
expect(() {
|
||||
PopupMenuButton<int>(
|
||||
child: const Text('heyo'),
|
||||
icon: const Icon(Icons.view_carousel),
|
||||
itemBuilder: simplePopupMenuItemBuilder,
|
||||
child: const Text('heyo'),
|
||||
);
|
||||
}, throwsAssertionError);
|
||||
});
|
||||
@ -1699,8 +1699,8 @@ void main() {
|
||||
expect(() {
|
||||
PopupMenuButton<int>(
|
||||
itemBuilder: (BuildContext context) => <PopupMenuItem<int>>[],
|
||||
child: Container(),
|
||||
icon: const Icon(Icons.error),
|
||||
child: Container(),
|
||||
);
|
||||
}, throwsAssertionError);
|
||||
});
|
||||
|
@ -1520,10 +1520,10 @@ void main() {
|
||||
|
||||
testWidgets('ReorderableListView asserts on both non-null itemExtent and prototypeItem', (WidgetTester tester) async {
|
||||
expect(() => ReorderableListView(
|
||||
children: const <Widget>[],
|
||||
itemExtent: 30,
|
||||
prototypeItem: const SizedBox(),
|
||||
onReorder: (int fromIndex, int toIndex) { },
|
||||
children: const <Widget>[],
|
||||
), throwsAssertionError);
|
||||
});
|
||||
|
||||
|
@ -3789,12 +3789,12 @@ void main() {
|
||||
tabs: <Widget>[
|
||||
Tab(
|
||||
icon: Icon(Icons.check,size: 40),
|
||||
child: Text('1 - OK',style: TextStyle(fontSize: 25),),
|
||||
height: 85,
|
||||
child: Text('1 - OK',style: TextStyle(fontSize: 25),),
|
||||
), // icon and child
|
||||
Tab(
|
||||
child: Text('2 - OK',style: TextStyle(fontSize: 25),),
|
||||
height: 85,
|
||||
child: Text('2 - OK',style: TextStyle(fontSize: 25),),
|
||||
), // child
|
||||
Tab(
|
||||
icon: Icon(Icons.done,size: 40),
|
||||
|
@ -16,8 +16,8 @@ void main() {
|
||||
child: CustomPaint(
|
||||
key: key,
|
||||
painter: SimplePainter(),
|
||||
child: const RepaintBoundary(child: Placeholder()),
|
||||
foregroundPainter: SimplePainter(),
|
||||
child: const RepaintBoundary(child: Placeholder()),
|
||||
),
|
||||
));
|
||||
|
||||
|
@ -28,11 +28,11 @@ void main() {
|
||||
children: <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDragStarted: () {
|
||||
++dragStartedCount;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -103,8 +103,8 @@ void main() {
|
||||
children: <Widget>[
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -178,8 +178,8 @@ void main() {
|
||||
children: <Widget>[
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -254,8 +254,8 @@ void main() {
|
||||
children: <Widget>[
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -327,8 +327,8 @@ void main() {
|
||||
children: <Widget>[
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -402,8 +402,8 @@ void main() {
|
||||
children: <Widget>[
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
Stack(
|
||||
children: <Widget>[
|
||||
@ -495,6 +495,7 @@ void main() {
|
||||
children: <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
feedback: const Text('Dragging'),
|
||||
child: GestureDetector(
|
||||
behavior: HitTestBehavior.opaque,
|
||||
onTap: () {
|
||||
@ -502,7 +503,6 @@ void main() {
|
||||
},
|
||||
child: const Text('Button'),
|
||||
),
|
||||
feedback: const Text('Dragging'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -552,8 +552,8 @@ void main() {
|
||||
children: <Widget>[
|
||||
const LongPressDraggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -601,8 +601,8 @@ void main() {
|
||||
children: <Widget>[
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -665,15 +665,15 @@ void main() {
|
||||
Container(height: 400.0),
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('H'),
|
||||
feedback: Text('Dragging'),
|
||||
affinity: Axis.horizontal,
|
||||
child: Text('H'),
|
||||
),
|
||||
const Draggable<int>(
|
||||
data: 2,
|
||||
child: Text('V'),
|
||||
feedback: Text('Dragging'),
|
||||
affinity: Axis.vertical,
|
||||
child: Text('V'),
|
||||
),
|
||||
Container(height: 500.0),
|
||||
Container(height: 500.0),
|
||||
@ -776,15 +776,15 @@ void main() {
|
||||
Container(width: 400.0),
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('H'),
|
||||
feedback: Text('Dragging'),
|
||||
affinity: Axis.horizontal,
|
||||
child: Text('H'),
|
||||
),
|
||||
const Draggable<int>(
|
||||
data: 2,
|
||||
child: Text('V'),
|
||||
feedback: Text('Dragging'),
|
||||
affinity: Axis.vertical,
|
||||
child: Text('V'),
|
||||
),
|
||||
Container(width: 500.0),
|
||||
Container(width: 500.0),
|
||||
@ -886,23 +886,23 @@ void main() {
|
||||
Container(width: 400.0),
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('H'),
|
||||
feedback: Text('H'),
|
||||
childWhenDragging: SizedBox(),
|
||||
axis: Axis.horizontal,
|
||||
child: Text('H'),
|
||||
),
|
||||
const Draggable<int>(
|
||||
data: 2,
|
||||
child: Text('V'),
|
||||
feedback: Text('V'),
|
||||
childWhenDragging: SizedBox(),
|
||||
axis: Axis.vertical,
|
||||
child: Text('V'),
|
||||
),
|
||||
const Draggable<int>(
|
||||
data: 3,
|
||||
child: Text('N'),
|
||||
feedback: Text('N'),
|
||||
childWhenDragging: SizedBox(),
|
||||
child: Text('N'),
|
||||
),
|
||||
Container(width: 500.0),
|
||||
Container(width: 500.0),
|
||||
@ -1009,32 +1009,32 @@ void main() {
|
||||
children: <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDragUpdate: (DragUpdateDetails details) {
|
||||
dragDelta += details.delta;
|
||||
updated++;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
Draggable<int>(
|
||||
data: 2,
|
||||
child: const Text('Vertical Source'),
|
||||
feedback: const Text('Vertical Dragging'),
|
||||
onDragUpdate: (DragUpdateDetails details) {
|
||||
dragDelta += details.delta;
|
||||
updated++;
|
||||
},
|
||||
axis: Axis.vertical,
|
||||
child: const Text('Vertical Source'),
|
||||
),
|
||||
Draggable<int>(
|
||||
data: 3,
|
||||
child: const Text('Horizontal Source'),
|
||||
feedback: const Text('Horizontal Dragging'),
|
||||
onDragUpdate: (DragUpdateDetails details) {
|
||||
dragDelta += details.delta;
|
||||
updated++;
|
||||
},
|
||||
axis: Axis.horizontal,
|
||||
child: const Text('Horizontal Source'),
|
||||
),
|
||||
],
|
||||
),
|
||||
@ -1157,11 +1157,11 @@ void main() {
|
||||
children: <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDraggableCanceled: (Velocity velocity, Offset offset) {
|
||||
onDraggableCanceledCalled = true;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -1227,13 +1227,13 @@ void main() {
|
||||
children: <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDraggableCanceled: (Velocity velocity, Offset offset) {
|
||||
onDraggableCanceledCalled = true;
|
||||
onDraggableCanceledVelocity = velocity;
|
||||
onDraggableCanceledOffset = offset;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -1303,13 +1303,13 @@ void main() {
|
||||
home: Column(children: <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Source'),
|
||||
onDraggableCanceled: (Velocity velocity, Offset offset) {
|
||||
onDraggableCanceledCalled = true;
|
||||
onDraggableCanceledVelocity = velocity;
|
||||
onDraggableCanceledOffset = offset;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -1354,12 +1354,12 @@ void main() {
|
||||
children: <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDragEnd: (DraggableDetails details) {
|
||||
onDragEndCalled = true;
|
||||
onDragEndDraggableDetails = details;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -1426,8 +1426,8 @@ void main() {
|
||||
children: <Widget>[
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -1481,11 +1481,11 @@ void main() {
|
||||
children: <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDraggableCanceled: (Velocity velocity, Offset offset) {
|
||||
numberOfTimesOnDraggableCanceledCalled++;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -1566,11 +1566,11 @@ void main() {
|
||||
children: <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDragCompleted: () {
|
||||
onDragCompletedCalled = true;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -1637,12 +1637,12 @@ void main() {
|
||||
children: <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDragEnd: (DraggableDetails details) {
|
||||
onDragEndCalled = true;
|
||||
onDragEndDraggableDetails = details;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -1712,11 +1712,11 @@ void main() {
|
||||
children: <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDragEnd: (DraggableDetails details) {
|
||||
timesOnDragEndCalled++;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -1756,8 +1756,8 @@ void main() {
|
||||
children: const <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
],
|
||||
),
|
||||
@ -1779,11 +1779,11 @@ void main() {
|
||||
children: <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDragCompleted: () {
|
||||
onDragCompletedCalled = true;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -1848,13 +1848,13 @@ void main() {
|
||||
children: <Widget>[
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('IntSource'),
|
||||
feedback: Text('IntDragging'),
|
||||
child: Text('IntSource'),
|
||||
),
|
||||
const Draggable<double>(
|
||||
data: 1.0,
|
||||
child: Text('DoubleSource'),
|
||||
feedback: Text('DoubleDragging'),
|
||||
child: Text('DoubleSource'),
|
||||
),
|
||||
Stack(
|
||||
children: <Widget>[
|
||||
@ -1982,8 +1982,8 @@ void main() {
|
||||
children: <Widget>[
|
||||
Draggable<DragTargetData>(
|
||||
data: dragTargetData,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
child: const Text('Source'),
|
||||
),
|
||||
Stack(
|
||||
children: <Widget>[
|
||||
@ -2050,8 +2050,8 @@ void main() {
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
maxSimultaneousDrags: maxSimultaneousDrags,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -2179,14 +2179,14 @@ void main() {
|
||||
didTap = true;
|
||||
},
|
||||
child: Draggable<Object>(
|
||||
child: Container(
|
||||
color: const Color(0xFFFFFF00),
|
||||
),
|
||||
feedback: Container(
|
||||
width: 100.0,
|
||||
height: 100.0,
|
||||
color: const Color(0xFFFF0000),
|
||||
),
|
||||
child: Container(
|
||||
color: const Color(0xFFFFFF00),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
@ -2215,14 +2215,14 @@ void main() {
|
||||
builder: (BuildContext context) => GestureDetector(
|
||||
onTap: () { /* registers a tap recognizer */ },
|
||||
child: Draggable<Object>(
|
||||
child: Container(
|
||||
color: const Color(0xFFFFFF00),
|
||||
),
|
||||
feedback: Container(
|
||||
width: 100.0,
|
||||
height: 100.0,
|
||||
color: const Color(0xFFFF0000),
|
||||
),
|
||||
child: Container(
|
||||
color: const Color(0xFFFFFF00),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
@ -2247,8 +2247,8 @@ void main() {
|
||||
children: <Widget>[
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -2288,8 +2288,8 @@ void main() {
|
||||
children: const <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
],
|
||||
),
|
||||
@ -2309,8 +2309,8 @@ void main() {
|
||||
children: <Widget>[
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -2415,12 +2415,12 @@ void main() {
|
||||
children: <Widget>[
|
||||
LongPressDraggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDragEnd: (DraggableDetails details) {
|
||||
onDragEndCalled = true;
|
||||
onDragEndDraggableDetails = details;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -2501,11 +2501,11 @@ void main() {
|
||||
children: <Widget>[
|
||||
LongPressDraggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDragCompleted: () {
|
||||
onDragCompletedCalled = true;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -2573,11 +2573,11 @@ void main() {
|
||||
await tester.pumpWidget(MaterialApp(
|
||||
home: LongPressDraggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDragStarted: () {
|
||||
onDragStartedCalled = true;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
));
|
||||
|
||||
@ -2606,11 +2606,11 @@ void main() {
|
||||
home: LongPressDraggable<int>(
|
||||
data: 1,
|
||||
delay: const Duration(seconds: 2),
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDragStarted: () {
|
||||
onDragStartedCalled = true;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
));
|
||||
expect(find.text('Source'), findsOneWidget);
|
||||
@ -2639,11 +2639,11 @@ void main() {
|
||||
await tester.pumpWidget(MaterialApp(
|
||||
home: LongPressDraggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDragStarted: () {
|
||||
onDragStartedCalled = true;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
));
|
||||
expect(find.text('Source'), findsOneWidget);
|
||||
@ -2702,9 +2702,9 @@ void main() {
|
||||
settings: settings,
|
||||
builder: (BuildContext context) => const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
rootOverlay: true,
|
||||
child: Text('Source'),
|
||||
),
|
||||
);
|
||||
}
|
||||
@ -2758,8 +2758,8 @@ void main() {
|
||||
children: <Widget>[
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
DragTarget<Object>(
|
||||
builder: (BuildContext context, List<Object?> data, List<dynamic> rejects) {
|
||||
@ -2794,8 +2794,8 @@ void main() {
|
||||
children: <Widget>[
|
||||
const Draggable<Object>(
|
||||
data: 1,
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -2830,8 +2830,8 @@ void main() {
|
||||
home: Column(
|
||||
children: <Widget>[
|
||||
const Draggable<Object>(
|
||||
child: Text('Source'),
|
||||
feedback: Text('Dragging'),
|
||||
child: Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
@ -2880,25 +2880,25 @@ void main() {
|
||||
Container(width: 400.0),
|
||||
const Draggable<int>(
|
||||
data: 1,
|
||||
child: Text('H'),
|
||||
feedback: Text('H'),
|
||||
childWhenDragging: SizedBox(),
|
||||
axis: Axis.horizontal,
|
||||
ignoringFeedbackSemantics: false,
|
||||
child: Text('H'),
|
||||
),
|
||||
const Draggable<int>(
|
||||
data: 2,
|
||||
child: Text('V'),
|
||||
feedback: Text('V'),
|
||||
childWhenDragging: SizedBox(),
|
||||
axis: Axis.vertical,
|
||||
ignoringFeedbackSemantics: false,
|
||||
child: Text('V'),
|
||||
),
|
||||
const Draggable<int>(
|
||||
data: 3,
|
||||
child: Text('N'),
|
||||
feedback: Text('N'),
|
||||
childWhenDragging: SizedBox(),
|
||||
child: Text('N'),
|
||||
),
|
||||
],
|
||||
),
|
||||
@ -3038,12 +3038,12 @@ void main() {
|
||||
home: Column(
|
||||
children: <Widget>[
|
||||
Draggable<int>(
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Feedback'),
|
||||
dragAnchorStrategy: (Draggable<Object> widget, BuildContext context, Offset position) {
|
||||
dragAnchorStrategyCalled = true;
|
||||
return Offset.zero;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
],
|
||||
),
|
||||
@ -3099,12 +3099,12 @@ void main() {
|
||||
const Widget widget1 = Placeholder(key: ValueKey<int>(1));
|
||||
const Widget widget2 = Placeholder(key: ValueKey<int>(2));
|
||||
Offset dummyStrategy(Draggable<Object> draggable, BuildContext context, Offset position) => Offset.zero;
|
||||
expect(const LongPressDraggable<int>(child: widget1, feedback: widget2), isA<Draggable<int>>());
|
||||
expect(const LongPressDraggable<int>(child: widget1, feedback: widget2).child, widget1);
|
||||
expect(const LongPressDraggable<int>(child: widget1, feedback: widget2).feedback, widget2);
|
||||
expect(const LongPressDraggable<int>(child: widget1, feedback: widget2).dragAnchor, DragAnchor.child);
|
||||
expect(const LongPressDraggable<int>(child: widget1, feedback: widget2, dragAnchor: DragAnchor.pointer).dragAnchor, DragAnchor.pointer);
|
||||
expect(LongPressDraggable<int>(child: widget1, feedback: widget2, dragAnchorStrategy: dummyStrategy).dragAnchorStrategy, dummyStrategy);
|
||||
expect(const LongPressDraggable<int>(feedback: widget2, child: widget1), isA<Draggable<int>>());
|
||||
expect(const LongPressDraggable<int>(feedback: widget2, child: widget1).child, widget1);
|
||||
expect(const LongPressDraggable<int>(feedback: widget2, child: widget1).feedback, widget2);
|
||||
expect(const LongPressDraggable<int>(feedback: widget2, child: widget1).dragAnchor, DragAnchor.child);
|
||||
expect(const LongPressDraggable<int>(feedback: widget2, dragAnchor: DragAnchor.pointer, child: widget1).dragAnchor, DragAnchor.pointer);
|
||||
expect(LongPressDraggable<int>(feedback: widget2, dragAnchorStrategy: dummyStrategy, child: widget1).dragAnchorStrategy, dummyStrategy);
|
||||
});
|
||||
}
|
||||
|
||||
@ -3121,12 +3121,12 @@ Future<void> _testLongPressDraggableHapticFeedback({ required WidgetTester teste
|
||||
await tester.pumpWidget(MaterialApp(
|
||||
home: LongPressDraggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
hapticFeedbackOnStart: hapticFeedbackOnStart,
|
||||
onDragStarted: () {
|
||||
onDragStartedCalled = true;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
));
|
||||
|
||||
@ -3169,11 +3169,11 @@ Future<void> _testChildAnchorFeedbackPosition({ required WidgetTester tester, do
|
||||
children: <Widget>[
|
||||
Draggable<int>(
|
||||
data: 1,
|
||||
child: const Text('Source'),
|
||||
feedback: const Text('Dragging'),
|
||||
onDragStarted: () {
|
||||
++dragStartedCount;
|
||||
},
|
||||
child: const Text('Source'),
|
||||
),
|
||||
DragTarget<int>(
|
||||
builder: (BuildContext context, List<int?> data, List<dynamic> rejects) {
|
||||
|
@ -25,9 +25,9 @@ void main() {
|
||||
child: SizedBox.fromSize(
|
||||
size: size,
|
||||
child: PageView(
|
||||
children: kStates.map<Widget>((String state) => Text(state)).toList(),
|
||||
controller: controller,
|
||||
onPageChanged: (int page) { },
|
||||
children: kStates.map<Widget>((String state) => Text(state)).toList(),
|
||||
),
|
||||
),
|
||||
),
|
||||
@ -70,9 +70,9 @@ void main() {
|
||||
child: SizedBox.fromSize(
|
||||
size: size,
|
||||
child: PageView(
|
||||
children: kStates.map<Widget>((String state) => Text(state)).toList(),
|
||||
controller: controller,
|
||||
onPageChanged: (int page) { },
|
||||
children: kStates.map<Widget>((String state) => Text(state)).toList(),
|
||||
),
|
||||
),
|
||||
),
|
||||
|
@ -397,8 +397,8 @@ void main() {
|
||||
await tester.pumpWidget(
|
||||
Transform.translate(
|
||||
offset: const Offset(25.0, 25.0),
|
||||
child: const SizedBox(width: 100, height: 100),
|
||||
filterQuality: FilterQuality.low,
|
||||
child: const SizedBox(width: 100, height: 100),
|
||||
),
|
||||
);
|
||||
expect(tester.layers.whereType<ImageFilterLayer>().length, 1);
|
||||
@ -408,8 +408,8 @@ void main() {
|
||||
await tester.pumpWidget(
|
||||
Transform.scale(
|
||||
scale: 3.14159,
|
||||
child: const SizedBox(width: 100, height: 100),
|
||||
filterQuality: FilterQuality.low,
|
||||
child: const SizedBox(width: 100, height: 100),
|
||||
),
|
||||
);
|
||||
expect(tester.layers.whereType<ImageFilterLayer>().length, 1);
|
||||
@ -419,8 +419,8 @@ void main() {
|
||||
await tester.pumpWidget(
|
||||
Transform.rotate(
|
||||
angle: math.pi / 4,
|
||||
child: const SizedBox(width: 100, height: 100),
|
||||
filterQuality: FilterQuality.low,
|
||||
child: const SizedBox(width: 100, height: 100),
|
||||
),
|
||||
);
|
||||
expect(tester.layers.whereType<ImageFilterLayer>().length, 1);
|
||||
@ -430,8 +430,8 @@ void main() {
|
||||
await tester.pumpWidget(
|
||||
Transform.rotate(
|
||||
angle: math.pi / 4,
|
||||
child: const SizedBox(width: 100, height: 100),
|
||||
filterQuality: FilterQuality.low,
|
||||
child: const SizedBox(width: 100, height: 100),
|
||||
),
|
||||
);
|
||||
expect(tester.layers.whereType<ImageFilterLayer>(), hasLength(1));
|
||||
@ -455,8 +455,8 @@ void main() {
|
||||
await tester.pumpWidget(
|
||||
Transform.rotate(
|
||||
angle: math.pi / 4,
|
||||
child: const SizedBox(width: 100, height: 100),
|
||||
filterQuality: FilterQuality.low,
|
||||
child: const SizedBox(width: 100, height: 100),
|
||||
),
|
||||
);
|
||||
expect(tester.layers.whereType<ImageFilterLayer>(), hasLength(1));
|
||||
@ -483,18 +483,18 @@ void main() {
|
||||
),
|
||||
Transform.rotate(
|
||||
angle: math.pi / 6,
|
||||
child: Center(child: Container(width: 100, height: 20, color: const Color(0xff00ff00))),
|
||||
filterQuality: FilterQuality.low,
|
||||
child: Center(child: Container(width: 100, height: 20, color: const Color(0xff00ff00))),
|
||||
),
|
||||
Transform.scale(
|
||||
scale: 1.5,
|
||||
child: Center(child: Container(width: 100, height: 20, color: const Color(0xff00ff00))),
|
||||
filterQuality: FilterQuality.low,
|
||||
child: Center(child: Container(width: 100, height: 20, color: const Color(0xff00ff00))),
|
||||
),
|
||||
Transform.translate(
|
||||
offset: const Offset(20.0, 60.0),
|
||||
child: Center(child: Container(width: 100, height: 20, color: const Color(0xff00ff00))),
|
||||
filterQuality: FilterQuality.low,
|
||||
child: Center(child: Container(width: 100, height: 20, color: const Color(0xff00ff00))),
|
||||
),
|
||||
],
|
||||
),
|
||||
|
@ -106,9 +106,9 @@ void main() {
|
||||
|
||||
await tester.pumpWidget(Center(
|
||||
child: Visibility(
|
||||
child: testChild,
|
||||
replacement: const Placeholder(),
|
||||
visible: false,
|
||||
child: testChild,
|
||||
),
|
||||
));
|
||||
expect(find.byType(Text, skipOffstage: false), findsNothing);
|
||||
@ -123,8 +123,8 @@ void main() {
|
||||
|
||||
await tester.pumpWidget(Center(
|
||||
child: Visibility(
|
||||
child: testChild,
|
||||
replacement: const Placeholder(),
|
||||
child: testChild,
|
||||
),
|
||||
));
|
||||
expect(find.byType(Text, skipOffstage: false), findsOneWidget);
|
||||
|
Loading…
x
Reference in New Issue
Block a user