prefer const constructors (#8316)

This commit is contained in:
Alexandre Ardhuin 2017-02-21 23:54:29 +01:00 committed by Adam Barth
parent 663862557b
commit e9a775bf38
43 changed files with 145 additions and 145 deletions

View file

@ -73,7 +73,7 @@ class ComplexLayoutState extends State<ComplexLayout> {
children: <Widget>[
new Expanded(
child: new ListView.builder(
key: new Key('main-scroll'), // this key is used by the driver test
key: const Key('main-scroll'), // this key is used by the driver test
itemBuilder: (BuildContext context, int index) {
if (index % 2 == 0)
return new FancyImageItem(index, key: new ValueKey<int>(index));
@ -154,7 +154,7 @@ class MenuItemWithIcon extends StatelessWidget {
children: <Widget>[
new Icon(icon),
new Padding(
padding: new EdgeInsets.only(left: 8.0, right: 8.0),
padding: const EdgeInsets.only(left: 8.0, right: 8.0),
child: new Text(title)
),
new Text(subtitle, style: Theme.of(context).textTheme.caption)
@ -177,7 +177,7 @@ class FancyImageItem extends StatelessWidget {
new ItemImageBox(),
new InfoBar(),
new Padding(
padding: new EdgeInsets.symmetric(horizontal: 8.0),
padding: const EdgeInsets.symmetric(horizontal: 8.0),
child: new Divider()
),
new IconBar(),
@ -199,7 +199,7 @@ class FancyGalleryItem extends StatelessWidget {
new ItemGalleryBox(index),
new InfoBar(),
new Padding(
padding: new EdgeInsets.symmetric(horizontal: 8.0),
padding: const EdgeInsets.symmetric(horizontal: 8.0),
child: new Divider()
),
new IconBar(),
@ -213,7 +213,7 @@ class InfoBar extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Padding(
padding: new EdgeInsets.all(8.0),
padding: const EdgeInsets.all(8.0),
child: new Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
@ -229,7 +229,7 @@ class IconBar extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Padding(
padding: new EdgeInsets.only(left: 16.0, right: 16.0),
padding: const EdgeInsets.only(left: 16.0, right: 16.0),
child: new Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
@ -275,7 +275,7 @@ class MiniIconWithText extends StatelessWidget {
mainAxisSize: MainAxisSize.min,
children: <Widget>[
new Padding(
padding: new EdgeInsets.only(right: 8.0),
padding: const EdgeInsets.only(right: 8.0),
child: new Container(
width: 16.0,
height: 16.0,
@ -312,12 +312,12 @@ class UserHeader extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Padding(
padding: new EdgeInsets.all(8.0),
padding: const EdgeInsets.all(8.0),
child: new Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
new Padding(
padding: new EdgeInsets.only(right: 8.0),
padding: const EdgeInsets.only(right: 8.0),
child: new Image(
image: new AssetImage('packages/flutter_gallery_assets/ali_connors_sml.png'),
width: 32.0,
@ -332,9 +332,9 @@ class UserHeader extends StatelessWidget {
new RichText(text: new TextSpan(
style: Theme.of(context).textTheme.body1,
children: <TextSpan>[
new TextSpan(text: userName, style: new TextStyle(fontWeight: FontWeight.bold)),
new TextSpan(text: ' shared a new '),
new TextSpan(text: 'photo', style: new TextStyle(fontWeight: FontWeight.bold))
new TextSpan(text: userName, style: const TextStyle(fontWeight: FontWeight.bold)),
const TextSpan(text: ' shared a new '),
const TextSpan(text: 'photo', style: const TextStyle(fontWeight: FontWeight.bold))
]
)),
new Row(
@ -357,7 +357,7 @@ class ItemDescription extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Padding(
padding: new EdgeInsets.all(8.0),
padding: const EdgeInsets.all(8.0),
child: new Text('Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.')
);
}
@ -367,7 +367,7 @@ class ItemImageBox extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Padding(
padding: new EdgeInsets.all(8.0),
padding: const EdgeInsets.all(8.0),
child: new Card(
child: new Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
@ -404,16 +404,16 @@ class ItemImageBox extends StatelessWidget {
backgroundColor: Colors.black54,
borderRadius: new BorderRadius.circular(2.0)
),
padding: new EdgeInsets.all(4.0),
padding: const EdgeInsets.all(4.0),
child: new RichText(
text: new TextSpan(
style: new TextStyle(color: Colors.white),
style: const TextStyle(color: Colors.white),
children: <TextSpan>[
new TextSpan(
const TextSpan(
text: 'Photo by '
),
new TextSpan(
style: new TextStyle(fontWeight: FontWeight.bold),
const TextSpan(
style: const TextStyle(fontWeight: FontWeight.bold),
text: 'Magic Mike'
)
]
@ -425,7 +425,7 @@ class ItemImageBox extends StatelessWidget {
)
,
new Padding(
padding: new EdgeInsets.all(8.0),
padding: const EdgeInsets.all(8.0),
child: new Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: <Widget>[
@ -465,7 +465,7 @@ class ItemGalleryBox extends StatelessWidget {
return new Container(
key: new Key(tabName),
child: new Padding(
padding: new EdgeInsets.all(8.0),
padding: const EdgeInsets.all(8.0),
child: new Card(
child: new Column(
children: <Widget>[
@ -491,7 +491,7 @@ class ItemGalleryBox extends StatelessWidget {
),
new Expanded(
child: new Padding(
padding: new EdgeInsets.only(left: 8.0),
padding: const EdgeInsets.only(left: 8.0),
child: new Text('This is item $tabName'),
)
)
@ -550,7 +550,7 @@ class BottomBarButton extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Padding(
padding: new EdgeInsets.all(8.0),
padding: const EdgeInsets.all(8.0),
child: new Column(
children: <Widget>[
new IconButton(

View file

@ -27,14 +27,14 @@ void main() {
// Scroll down
for (int i = 0; i < 5; i++) {
await driver.scroll(stockList, 0.0, -300.0, new Duration(milliseconds: 300));
await new Future<Null>.delayed(new Duration(milliseconds: 500));
await driver.scroll(stockList, 0.0, -300.0, const Duration(milliseconds: 300));
await new Future<Null>.delayed(const Duration(milliseconds: 500));
}
// Scroll up
for (int i = 0; i < 5; i++) {
await driver.scroll(stockList, 0.0, 300.0, new Duration(milliseconds: 300));
await new Future<Null>.delayed(new Duration(milliseconds: 500));
await driver.scroll(stockList, 0.0, 300.0, const Duration(milliseconds: 300));
await new Future<Null>.delayed(const Duration(milliseconds: 500));
}
});

View file

@ -31,7 +31,7 @@ Future<Null> main() async {
stocks.main();
await tester.pump(); // Start startup animation
await tester.pump(const Duration(seconds: 1)); // Complete startup animation
await tester.tapAt(new Point(20.0, 40.0)); // Open drawer
await tester.tapAt(const Point(20.0, 40.0)); // Open drawer
await tester.pump(); // Start drawer animation
await tester.pump(const Duration(seconds: 1)); // Complete drawer animation

View file

@ -30,7 +30,7 @@ Future<Null> main() async {
stocks.main();
await tester.pump(); // Start startup animation
await tester.pump(const Duration(seconds: 1)); // Complete startup animation
await tester.tapAt(new Point(20.0, 40.0)); // Open drawer
await tester.tapAt(const Point(20.0, 40.0)); // Open drawer
await tester.pump(); // Start drawer animation
await tester.pump(const Duration(seconds: 1)); // Complete drawer animation

View file

@ -63,7 +63,7 @@ Future<Null> main(List<String> rawArgs) async {
exitCode = 1;
print('Task result:');
print(new JsonEncoder.withIndent(' ').convert(result));
print(const JsonEncoder.withIndent(' ').convert(result));
section('Finished task "$taskName"');
}
}
@ -115,7 +115,7 @@ final ArgParser _argParser = new ArgParser()
splitCommas: true,
callback: (List<String> value) {
if (value.isNotEmpty) {
throw new FormatException(
throw const FormatException(
'Invalid option --test. Did you mean --task (-t)?',
);
}

View file

@ -42,8 +42,8 @@ Future<Map<String, dynamic>> runTask(String taskName, { bool silent: false }) as
});
StreamSubscription<String> stdoutSub = runner.stdout
.transform(new Utf8Decoder())
.transform(new LineSplitter())
.transform(const Utf8Decoder())
.transform(const LineSplitter())
.listen((String line) {
if (!silent) {
stdout.writeln('[$taskName] [STDOUT] $line');
@ -51,8 +51,8 @@ Future<Map<String, dynamic>> runTask(String taskName, { bool silent: false }) as
});
StreamSubscription<String> stderrSub = runner.stderr
.transform(new Utf8Decoder())
.transform(new LineSplitter())
.transform(const Utf8Decoder())
.transform(const LineSplitter())
.listen((String line) {
stderr.writeln('[$taskName] [STDERR] $line');
});

View file

@ -318,7 +318,7 @@ T requireConfigProperty<T>(Map<String, dynamic> map, String propertyName) {
}
String jsonEncode(dynamic data) {
return new JsonEncoder.withIndent(' ').convert(data) + '\n';
return const JsonEncoder.withIndent(' ').convert(data) + '\n';
}
Future<Null> getFlutter(String revision) async {

View file

@ -305,12 +305,12 @@ class AndroidBackButtonMemoryTest {
// Perform a series of back button suspend and resume cycles.
for (int i = 0; i < 10; i++) {
await device.shellExec('input', <String>['keyevent', 'KEYCODE_BACK']);
await new Future<Null>.delayed(new Duration(milliseconds: 1000));
await new Future<Null>.delayed(const Duration(milliseconds: 1000));
String output = await device.shellEval('am', <String>['start', '-n', 'io.flutter.examples.gallery/io.flutter.app.FlutterActivity']);
print(output);
if (output.contains('Error'))
return new TaskResult.failure('unable to launch activity');
await new Future<Null>.delayed(new Duration(milliseconds: 1000));
await new Future<Null>.delayed(const Duration(milliseconds: 1000));
}
Map<String, dynamic> endData = await device.getMemoryStats(packageName);

View file

@ -27,7 +27,7 @@ class ExampleDragTargetState extends State<ExampleDragTarget> {
builder: (BuildContext context, List<Color> data, List<dynamic> rejectedData) {
return new Container(
height: 100.0,
margin: new EdgeInsets.all(10.0),
margin: const EdgeInsets.all(10.0),
decoration: new BoxDecoration(
border: new Border.all(
width: 3.0,

View file

@ -169,7 +169,7 @@ class OverlayGeometryAppState extends State<OverlayGeometryApp> {
setState(() {
markers[MarkerType.touch] = globalPosition;
final RenderBox box = target.currentContext.findRenderObject();
markers[MarkerType.topLeft] = box.localToGlobal(new Point(0.0, 0.0));
markers[MarkerType.topLeft] = box.localToGlobal(const Point(0.0, 0.0));
final Size size = box.size;
markers[MarkerType.bottomRight] = box.localToGlobal(new Point(size.width, size.height));
final ScrollableState scrollable = Scrollable.of(target.currentContext);

View file

@ -40,7 +40,7 @@ class PageViewAppState extends State<PageViewApp> {
const TextStyle(color: Colors.white, fontSize: 18.0, fontWeight: FontWeight.bold);
List<CardModel> cardModels;
Size pageSize = new Size(200.0, 200.0);
Size pageSize = const Size(200.0, 200.0);
Axis scrollDirection = Axis.horizontal;
bool itemsWrap = false;

View file

@ -90,7 +90,7 @@ class _ButtonsDemoState extends State<ButtonsDemo> {
Widget buildRaisedButton() {
return new Align(
alignment: new FractionalOffset(0.5, 0.4),
alignment: const FractionalOffset(0.5, 0.4),
child: new ButtonBar(
mainAxisSize: MainAxisSize.min,
children: <Widget>[
@ -111,7 +111,7 @@ class _ButtonsDemoState extends State<ButtonsDemo> {
Widget buildFlatButton() {
return new Align(
alignment: new FractionalOffset(0.5, 0.4),
alignment: const FractionalOffset(0.5, 0.4),
child: new ButtonBar(
mainAxisSize: MainAxisSize.min,
children: <Widget>[
@ -158,7 +158,7 @@ class _ButtonsDemoState extends State<ButtonsDemo> {
}).toList(),
),
),
new SizedBox(
const SizedBox(
height: 24.0,
),
new ListItem(
@ -179,7 +179,7 @@ class _ButtonsDemoState extends State<ButtonsDemo> {
}).toList(),
),
),
new SizedBox(
const SizedBox(
height: 24.0,
),
new ListItem(
@ -213,7 +213,7 @@ class _ButtonsDemoState extends State<ButtonsDemo> {
Widget buildIconButton() {
return new Align(
alignment: new FractionalOffset(0.5, 0.4),
alignment: const FractionalOffset(0.5, 0.4),
child: new Row(
mainAxisSize: MainAxisSize.min,
children: <Widget>[
@ -237,7 +237,7 @@ class _ButtonsDemoState extends State<ButtonsDemo> {
Widget buildActionButton() {
return new Align(
alignment: new FractionalOffset(0.5, 0.4),
alignment: const FractionalOffset(0.5, 0.4),
child: new FloatingActionButton(
child: new Icon(Icons.add),
onPressed: () {

View file

@ -95,7 +95,7 @@ class _DateTimePicker extends StatelessWidget {
onPressed: () { _selectDate(context); },
),
),
new SizedBox(width: 12.0),
const SizedBox(width: 12.0),
new Expanded(
flex: 3,
child: new _InputDropdown(

View file

@ -122,7 +122,7 @@ class IconsDemoState extends State<IconsDemo> {
new Expanded(
child: new Center(
child: new IconTheme(
data: new IconThemeData(opacity: 1.0),
data: const IconThemeData(opacity: 1.0),
child: new Row(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[

View file

@ -26,7 +26,7 @@ class OverscrollDemoState extends State<OverscrollDemo> {
Future<Null> _handleRefresh() {
Completer<Null> completer = new Completer<Null>();
new Timer(new Duration(seconds: 3), () { completer.complete(null); });
new Timer(const Duration(seconds: 3), () { completer.complete(null); });
return completer.future.then((_) {
_scaffoldKey.currentState?.showSnackBar(new SnackBar(
content: new Text("Refresh complete"),

View file

@ -140,7 +140,7 @@ class _RecipeGridPageState extends State<RecipeGridPage> {
return new SliverPadding(
padding: padding,
child: new SliverGrid(
gridDelegate: new SliverGridDelegateWithMaxCrossAxisExtent(
gridDelegate: const SliverGridDelegateWithMaxCrossAxisExtent(
maxCrossAxisExtent: _kRecipePageMaxWidth,
crossAxisSpacing: 8.0,
mainAxisSpacing: 8.0,
@ -299,7 +299,7 @@ class RecipePage extends StatefulWidget {
class _RecipePageState extends State<RecipePage> {
final GlobalKey<ScaffoldState> _scaffoldKey = new GlobalKey<ScaffoldState>();
final TextStyle menuItemStyle = new PestoStyle(fontSize: 15.0, color: Colors.black54, height: 24.0/15.0);
final TextStyle menuItemStyle = const PestoStyle(fontSize: 15.0, color: Colors.black54, height: 24.0/15.0);
double _getAppBarHeight(BuildContext context) => MediaQuery.of(context).size.height * 0.3;
@ -448,7 +448,7 @@ class RecipeSheet extends StatelessWidget {
),
new TableRow(
children: <Widget>[
new SizedBox(),
const SizedBox(),
new Padding(
padding: const EdgeInsets.only(top: 8.0, bottom: 4.0),
child: new Text(recipe.description, style: descriptionStyle)
@ -457,7 +457,7 @@ class RecipeSheet extends StatelessWidget {
),
new TableRow(
children: <Widget>[
new SizedBox(),
const SizedBox(),
new Padding(
padding: const EdgeInsets.only(top: 24.0, bottom: 4.0),
child: new Text('Ingredients', style: headingStyle)
@ -471,7 +471,7 @@ class RecipeSheet extends StatelessWidget {
))..add(
new TableRow(
children: <Widget>[
new SizedBox(),
const SizedBox(),
new Padding(
padding: const EdgeInsets.only(top: 24.0, bottom: 4.0),
child: new Text('Steps', style: headingStyle)

View file

@ -75,7 +75,7 @@ class _SelectionControlsDemoState extends State<SelectionControlsDemo> {
Widget buildCheckbox() {
return new Align(
alignment: new FractionalOffset(0.5, 0.4),
alignment: const FractionalOffset(0.5, 0.4),
child: new Column(
mainAxisSize: MainAxisSize.min,
children: <Widget>[
@ -109,7 +109,7 @@ class _SelectionControlsDemoState extends State<SelectionControlsDemo> {
Widget buildRadio() {
return new Align(
alignment: new FractionalOffset(0.5, 0.4),
alignment: const FractionalOffset(0.5, 0.4),
child: new Column(
mainAxisSize: MainAxisSize.min,
children: <Widget>[
@ -161,7 +161,7 @@ class _SelectionControlsDemoState extends State<SelectionControlsDemo> {
Widget buildSwitch() {
return new Align(
alignment: new FractionalOffset(0.5, 0.4),
alignment: const FractionalOffset(0.5, 0.4),
child: new Row(
mainAxisSize: MainAxisSize.min,
children: <Widget>[

View file

@ -135,7 +135,7 @@ class VendorItem extends StatelessWidget {
child: new Image.asset(vendor.avatarAsset, fit: ImageFit.cover),
),
),
new SizedBox(width: 8.0),
const SizedBox(width: 8.0),
new Expanded(
child: new Text(vendor.name, style: ShrineTheme.of(context).vendorItemStyle),
),

View file

@ -43,7 +43,7 @@ class OrderItem extends StatelessWidget {
),
),
),
new SizedBox(height: 24.0),
const SizedBox(height: 24.0),
new Row(
children: <Widget>[
new Padding(
@ -66,9 +66,9 @@ class OrderItem extends StatelessWidget {
child: new Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: <Widget>[
new SizedBox(height: 24.0),
const SizedBox(height: 24.0),
new Text(product.description, style: theme.featureStyle),
new SizedBox(height: 16.0),
const SizedBox(height: 16.0),
new Padding(
padding: const EdgeInsets.only(top: 8.0, bottom: 8.0, right: 88.0),
child: new DropdownButtonHideUnderline(
@ -94,7 +94,7 @@ class OrderItem extends StatelessWidget {
),
),
),
new SizedBox(height: 16.0),
const SizedBox(height: 16.0),
new SizedBox(
height: 24.0,
child: new Align(
@ -102,9 +102,9 @@ class OrderItem extends StatelessWidget {
child: new Text(product.vendor.name, style: theme.vendorTitleStyle),
),
),
new SizedBox(height: 16.0),
const SizedBox(height: 16.0),
new Text(product.vendor.description, style: theme.vendorStyle),
new SizedBox(height: 24.0),
const SizedBox(height: 24.0),
],
),
),
@ -186,13 +186,13 @@ class _OrderPageState extends State<OrderPage> {
quantity: currentOrder.quantity,
quantityChanged: (int value) { updateOrder(quantity: value); },
),
new SizedBox(height: 24.0),
const SizedBox(height: 24.0),
]),
),
new SliverPadding(
padding: const EdgeInsets.all(8.0),
child: new SliverGrid(
gridDelegate: new SliverGridDelegateWithFixedCrossAxisCount(
gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 2,
mainAxisSpacing: 8.0,
crossAxisSpacing: 8.0,

View file

@ -14,7 +14,7 @@ Widget buildShrine(BuildContext context, Widget child) {
return new Theme(
data: new ThemeData(
primarySwatch: Colors.grey,
iconTheme: new IconThemeData(color: const Color(0xFF707070)),
iconTheme: const IconThemeData(color: const Color(0xFF707070)),
platform: Theme.of(context).platform,
),
child: new ShrineTheme(child: child)

View file

@ -145,7 +145,7 @@ class TextFieldDemoState extends State<TextFieldDemo> {
onSaved: (InputValue val) { person.password = val.text; }
)
),
new SizedBox(width: 16.0),
const SizedBox(width: 16.0),
new Expanded(
child: new TextField(
hintText: 'How do you log in?',

View file

@ -134,10 +134,10 @@ class FullScreenCodeDialogState extends State<FullScreenCodeDialog> {
} else {
body = new SingleChildScrollView(
child: new Padding(
padding: new EdgeInsets.all(16.0),
padding: const EdgeInsets.all(16.0),
child: new RichText(
text: new TextSpan(
style: new TextStyle(fontFamily: 'monospace', fontSize: 10.0),
style: const TextStyle(fontFamily: 'monospace', fontSize: 10.0),
children: <TextSpan>[
new DartSyntaxHighlighter(style).format(_exampleCode)
]

View file

@ -215,9 +215,9 @@ class GalleryDrawer extends StatelessWidget {
);
final Widget aboutItem = new AboutDrawerItem(
icon: new FlutterLogo(),
icon: const FlutterLogo(),
applicationVersion: '2016 Q3 Preview',
applicationIcon: new FlutterLogo(),
applicationIcon: const FlutterLogo(),
applicationLegalese: '© 2016 The Chromium Authors',
aboutBoxChildren: <Widget>[
new Padding(

View file

@ -19,27 +19,27 @@ class SyntaxHighlighterStyle {
static SyntaxHighlighterStyle lightThemeStyle() {
return new SyntaxHighlighterStyle(
baseStyle: new TextStyle(color: const Color(0xFF000000)),
numberStyle: new TextStyle(color: const Color(0xFF1565C0)),
commentStyle: new TextStyle(color: const Color(0xFF9E9E9E)),
keywordStyle: new TextStyle(color: const Color(0xFF9C27B0)),
stringStyle: new TextStyle(color: const Color(0xFF43A047)),
punctuationStyle: new TextStyle(color: const Color(0xFF000000)),
classStyle: new TextStyle(color: const Color(0xFF512DA8)),
constantStyle: new TextStyle(color: const Color(0xFF795548))
baseStyle: const TextStyle(color: const Color(0xFF000000)),
numberStyle: const TextStyle(color: const Color(0xFF1565C0)),
commentStyle: const TextStyle(color: const Color(0xFF9E9E9E)),
keywordStyle: const TextStyle(color: const Color(0xFF9C27B0)),
stringStyle: const TextStyle(color: const Color(0xFF43A047)),
punctuationStyle: const TextStyle(color: const Color(0xFF000000)),
classStyle: const TextStyle(color: const Color(0xFF512DA8)),
constantStyle: const TextStyle(color: const Color(0xFF795548))
);
}
static SyntaxHighlighterStyle darkThemeStyle() {
return new SyntaxHighlighterStyle(
baseStyle: new TextStyle(color: const Color(0xFFFFFFFF)),
numberStyle: new TextStyle(color: const Color(0xFF1565C0)),
commentStyle: new TextStyle(color: const Color(0xFF9E9E9E)),
keywordStyle: new TextStyle(color: const Color(0xFF80CBC4)),
stringStyle: new TextStyle(color: const Color(0xFF009688)),
punctuationStyle: new TextStyle(color: const Color(0xFFFFFFFF)),
classStyle: new TextStyle(color: const Color(0xFF009688)),
constantStyle: new TextStyle(color: const Color(0xFF795548))
baseStyle: const TextStyle(color: const Color(0xFFFFFFFF)),
numberStyle: const TextStyle(color: const Color(0xFF1565C0)),
commentStyle: const TextStyle(color: const Color(0xFF9E9E9E)),
keywordStyle: const TextStyle(color: const Color(0xFF80CBC4)),
stringStyle: const TextStyle(color: const Color(0xFF009688)),
punctuationStyle: const TextStyle(color: const Color(0xFFFFFFFF)),
classStyle: const TextStyle(color: const Color(0xFF009688)),
constantStyle: const TextStyle(color: const Color(0xFF795548))
);
}

View file

@ -32,7 +32,7 @@ class UpdaterState extends State<Updater> {
Future<Null> _checkForUpdates() async {
// Only prompt once a day
if (_lastUpdateCheck != null &&
new DateTime.now().difference(_lastUpdateCheck) < new Duration(days: 1)) {
new DateTime.now().difference(_lastUpdateCheck) < const Duration(days: 1)) {
return; // We already checked for updates recently
}
_lastUpdateCheck = new DateTime.now();

View file

@ -23,7 +23,7 @@ void main() {
final Point allDemosOrigin = tester.getTopRight(find.text('Demos'));
final Finder button = find.text('Buttons');
while (button.evaluate().isEmpty) {
await tester.scrollAt(allDemosOrigin, new Offset(0.0, -100.0));
await tester.scrollAt(allDemosOrigin, const Offset(0.0, -100.0));
await tester.pump(); // start the scroll
await tester.pump(const Duration(seconds: 1));
}

View file

@ -37,6 +37,6 @@ void main() {
await new Future<Null>.delayed(kWaitBetweenActions);
}
await completer.future;
}, timeout: new Timeout(new Duration(minutes: 1)));
}, timeout: const Timeout(const Duration(minutes: 1)));
});
}

View file

@ -34,14 +34,14 @@ void main() {
// https://github.com/flutter/flutter/issues/3316
// Scroll down
for (int i = 0; i < 5; i++) {
await driver.scroll(stockList, 0.0, -300.0, new Duration(milliseconds: 300));
await new Future<Null>.delayed(new Duration(milliseconds: 500));
await driver.scroll(stockList, 0.0, -300.0, const Duration(milliseconds: 300));
await new Future<Null>.delayed(const Duration(milliseconds: 500));
}
// Scroll up
for (int i = 0; i < 5; i++) {
await driver.scroll(stockList, 0.0, 300.0, new Duration(milliseconds: 300));
await new Future<Null>.delayed(new Duration(milliseconds: 500));
await driver.scroll(stockList, 0.0, 300.0, const Duration(milliseconds: 300));
await new Future<Null>.delayed(const Duration(milliseconds: 500));
}
});

View file

@ -56,7 +56,7 @@ final List<String> unsynchedDemoTitles = <String>[
'Progress indicators',
];
final FileSystem _fs = new LocalFileSystem();
final FileSystem _fs = const LocalFileSystem();
const Duration kWaitBetweenActions = const Duration(milliseconds: 250);
@ -123,7 +123,7 @@ Future<Null> saveDurationsHistogram(List<Map<String, dynamic>> events, String ou
// Save the durations Map to a file.
final File file = await _fs.file(outputPath).create(recursive: true);
await file.writeAsString(new JsonEncoder.withIndent(' ').convert(durations));
await file.writeAsString(const JsonEncoder.withIndent(' ').convert(durations));
}
void main() {
@ -176,6 +176,6 @@ void main() {
await summary.writeSummaryToFile('transitions', pretty: true);
String histogramPath = path.join(testOutputsDirectory, 'transition_durations.timeline.json');
await saveDurationsHistogram(timeline.json['traceEvents'], histogramPath);
}, timeout: new Timeout(new Duration(minutes: 5)));
}, timeout: const Timeout(const Duration(minutes: 5)));
});
}

View file

@ -42,7 +42,7 @@ ui.Picture paint(ui.Rect paintBounds) {
canvas.rotate(math.PI/4.0);
ui.Gradient yellowBlue = new ui.Gradient.linear(
<ui.Point>[new ui.Point(-radius, -radius), new ui.Point(0.0, 0.0)],
<ui.Point>[new ui.Point(-radius, -radius), const ui.Point(0.0, 0.0)],
<ui.Color>[const ui.Color(0xFFFFFF00), const ui.Color(0xFF0000FF)]
);
canvas.drawRect(new ui.Rect.fromLTRB(-radius, -radius, radius, radius),
@ -61,7 +61,7 @@ ui.Picture paint(ui.Rect paintBounds) {
canvas.restore();
paint.color = const ui.Color.fromARGB(128, 255, 0, 0);
canvas.drawCircle(new ui.Point(150.0, 300.0), radius, paint);
canvas.drawCircle(const ui.Point(150.0, 300.0), radius, paint);
// When we're done issuing painting commands, we end the recording an receive
// a Picture, which is an immutable record of the commands we've issued. You

View file

@ -15,25 +15,25 @@ void main() {
void addAlignmentRow(CrossAxisAlignment crossAxisAlignment) {
TextStyle style = const TextStyle(color: const Color(0xFF000000));
RenderParagraph paragraph = new RenderParagraph(new TextSpan(style: style, text: '$crossAxisAlignment'));
table.add(new RenderPadding(child: paragraph, padding: new EdgeInsets.only(top: 20.0)));
table.add(new RenderPadding(child: paragraph, padding: const EdgeInsets.only(top: 20.0)));
RenderFlex row = new RenderFlex(crossAxisAlignment: crossAxisAlignment, textBaseline: TextBaseline.alphabetic);
style = new TextStyle(fontSize: 15.0, color: const Color(0xFF000000));
style = const TextStyle(fontSize: 15.0, color: const Color(0xFF000000));
row.add(new RenderDecoratedBox(
decoration: new BoxDecoration(backgroundColor: const Color(0x7FFFCCCC)),
decoration: const BoxDecoration(backgroundColor: const Color(0x7FFFCCCC)),
child: new RenderParagraph(new TextSpan(style: style, text: 'foo foo foo'))
));
style = new TextStyle(fontSize: 10.0, color: const Color(0xFF000000));
style = const TextStyle(fontSize: 10.0, color: const Color(0xFF000000));
row.add(new RenderDecoratedBox(
decoration: new BoxDecoration(backgroundColor: const Color(0x7FCCFFCC)),
decoration: const BoxDecoration(backgroundColor: const Color(0x7FCCFFCC)),
child: new RenderParagraph(new TextSpan(style: style, text: 'foo foo foo'))
));
RenderFlex subrow = new RenderFlex(crossAxisAlignment: crossAxisAlignment, textBaseline: TextBaseline.alphabetic);
style = new TextStyle(fontSize: 25.0, color: const Color(0xFF000000));
style = const TextStyle(fontSize: 25.0, color: const Color(0xFF000000));
subrow.add(new RenderDecoratedBox(
decoration: new BoxDecoration(backgroundColor: const Color(0x7FCCCCFF)),
decoration: const BoxDecoration(backgroundColor: const Color(0x7FCCCCFF)),
child: new RenderParagraph(new TextSpan(style: style, text: 'foo foo foo foo'))
));
subrow.add(new RenderSolidColorBox(const Color(0x7FCCFFFF), desiredSize: new Size(30.0, 40.0)));
subrow.add(new RenderSolidColorBox(const Color(0x7FCCFFFF), desiredSize: const Size(30.0, 40.0)));
row.add(subrow);
table.add(row);
final FlexParentData rowParentData = row.parentData;
@ -49,11 +49,11 @@ void main() {
void addJustificationRow(MainAxisAlignment justify) {
const TextStyle style = const TextStyle(color: const Color(0xFF000000));
RenderParagraph paragraph = new RenderParagraph(new TextSpan(style: style, text: '$justify'));
table.add(new RenderPadding(child: paragraph, padding: new EdgeInsets.only(top: 20.0)));
table.add(new RenderPadding(child: paragraph, padding: const EdgeInsets.only(top: 20.0)));
RenderFlex row = new RenderFlex(direction: Axis.horizontal);
row.add(new RenderSolidColorBox(const Color(0xFFFFCCCC), desiredSize: new Size(80.0, 60.0)));
row.add(new RenderSolidColorBox(const Color(0xFFCCFFCC), desiredSize: new Size(64.0, 60.0)));
row.add(new RenderSolidColorBox(const Color(0xFFCCCCFF), desiredSize: new Size(160.0, 60.0)));
row.add(new RenderSolidColorBox(const Color(0xFFFFCCCC), desiredSize: const Size(80.0, 60.0)));
row.add(new RenderSolidColorBox(const Color(0xFFCCFFCC), desiredSize: const Size(64.0, 60.0)));
row.add(new RenderSolidColorBox(const Color(0xFFCCCCFF), desiredSize: const Size(160.0, 60.0)));
row.mainAxisAlignment = justify;
table.add(row);
final FlexParentData rowParentData = row.parentData;
@ -67,8 +67,8 @@ void main() {
addJustificationRow(MainAxisAlignment.spaceAround);
RenderDecoratedBox root = new RenderDecoratedBox(
decoration: new BoxDecoration(backgroundColor: const Color(0xFFFFFFFF)),
child: new RenderPadding(child: table, padding: new EdgeInsets.symmetric(vertical: 50.0))
decoration: const BoxDecoration(backgroundColor: const Color(0xFFFFFFFF)),
child: new RenderPadding(child: table, padding: const EdgeInsets.symmetric(vertical: 50.0))
);
new RenderingFlutterBinding(root: root);

View file

@ -16,7 +16,7 @@ void main() {
alignment: FractionalOffset.center,
// We use a RenderParagraph to display the text 'Hello, world.' without
// any explicit styling.
child: new RenderParagraph(new TextSpan(text: 'Hello, world.'))
child: new RenderParagraph(const TextSpan(text: 'Hello, world.'))
)
);
}

View file

@ -572,7 +572,7 @@ class RenderSolidColor extends RenderDecoratedSector {
@override
void handleEvent(PointerEvent event, HitTestEntry entry) {
if (event is PointerDownEvent) {
decoration = new BoxDecoration(backgroundColor: const Color(0xFFFF0000));
decoration = const BoxDecoration(backgroundColor: const Color(0xFFFF0000));
} else if (event is PointerUpEvent) {
decoration = new BoxDecoration(backgroundColor: backgroundColor);
}

View file

@ -41,7 +41,7 @@ class RenderSolidColorBox extends RenderDecoratedBox {
@override
void handleEvent(PointerEvent event, BoxHitTestEntry entry) {
if (event is PointerDownEvent) {
decoration = new BoxDecoration(backgroundColor: const Color(0xFFFF0000));
decoration = const BoxDecoration(backgroundColor: const Color(0xFFFF0000));
} else if (event is PointerUpEvent) {
decoration = new BoxDecoration(backgroundColor: backgroundColor);
}

View file

@ -28,9 +28,9 @@ class RenderDots extends RenderConstrainedBox {
@override
void paint(PaintingContext context, Offset offset) {
final Canvas canvas = context.canvas;
canvas.drawRect(offset & size, new Paint()..color = new Color(0xFF0000FF));
canvas.drawRect(offset & size, new Paint()..color = const Color(0xFF0000FF));
Paint paint = new Paint()..color = new Color(0xFF00FF00);
Paint paint = new Paint()..color = const Color(0xFF00FF00);
for (Point point in _dots.values)
canvas.drawCircle(point, 50.0, paint);

View file

@ -165,7 +165,7 @@ class _GestureDemoState extends State<GestureDemo> {
left: 0.0,
child: new Card(
child: new Container(
padding: new EdgeInsets.all(4.0),
padding: const EdgeInsets.all(4.0),
child: new Column(
children: <Widget>[
new Row(

View file

@ -93,7 +93,7 @@ class SectorAppState extends State<SectorApp> {
return new Column(
children: <Widget>[
new Container(
padding: new EdgeInsets.symmetric(horizontal: 8.0, vertical: 25.0),
padding: const EdgeInsets.symmetric(horizontal: 8.0, vertical: 25.0),
child: new Row(
children: <Widget>[
new RaisedButton(
@ -102,8 +102,8 @@ class SectorAppState extends State<SectorApp> {
child: new Row(
children: <Widget>[
new Container(
padding: new EdgeInsets.all(4.0),
margin: new EdgeInsets.only(right: 10.0),
padding: const EdgeInsets.all(4.0),
margin: const EdgeInsets.only(right: 10.0),
child: new WidgetToRenderBoxAdapter(renderBox: sectorAddIcon)
),
new Text('ADD SECTOR'),
@ -117,8 +117,8 @@ class SectorAppState extends State<SectorApp> {
child: new Row(
children: <Widget>[
new Container(
padding: new EdgeInsets.all(4.0),
margin: new EdgeInsets.only(right: 10.0),
padding: const EdgeInsets.all(4.0),
margin: const EdgeInsets.only(right: 10.0),
child: new WidgetToRenderBoxAdapter(renderBox: sectorRemoveIcon)
),
new Text('REMOVE SECTOR'),
@ -132,11 +132,11 @@ class SectorAppState extends State<SectorApp> {
),
new Expanded(
child: new Container(
margin: new EdgeInsets.all(8.0),
margin: const EdgeInsets.all(8.0),
decoration: new BoxDecoration(
border: new Border.all()
),
padding: new EdgeInsets.all(8.0),
padding: const EdgeInsets.all(8.0),
child: new WidgetToRenderBoxAdapter(
renderBox: sectors,
onBuild: doUpdates

View file

@ -44,8 +44,8 @@ void attachWidgetTreeToRenderTree(RenderProxyBox container) {
new Rectangle(const Color(0xFF00FFFF)),
new Material(
child: new Container(
padding: new EdgeInsets.all(10.0),
margin: new EdgeInsets.all(10.0),
padding: const EdgeInsets.all(10.0),
margin: const EdgeInsets.all(10.0),
child: new Row(
children: <Widget>[
new RaisedButton(
@ -99,7 +99,7 @@ void main() {
addFlexChildSolidColor(flexRoot, const Color(0xFF0000FF), flex: 1);
transformBox = new RenderTransform(child: flexRoot, transform: new Matrix4.identity(), alignment: FractionalOffset.center);
RenderPadding root = new RenderPadding(padding: new EdgeInsets.all(80.0), child: transformBox);
RenderPadding root = new RenderPadding(padding: const EdgeInsets.all(80.0), child: transformBox);
binding.renderView.child = root;
binding.addPersistentFrameCallback(rotate);

View file

@ -46,7 +46,7 @@ Widget toStyledText(String name, String text) {
style: _kUnderline,
text: name
),
new TextSpan(text: ':')
const TextSpan(text: ':')
]
),
new TextSpan(text: text)
@ -108,7 +108,7 @@ class _StyledTextDemoState extends State<StyledTextDemo> {
return new GestureDetector(
onTap: _handleTap,
child: new Container(
padding: new EdgeInsets.symmetric(horizontal: 8.0),
padding: const EdgeInsets.symmetric(horizontal: 8.0),
child: new Column(
children: children,
mainAxisAlignment: MainAxisAlignment.center,

View file

@ -78,7 +78,7 @@ class StockDataFetcher {
print("Failed to load stock data chunk ${_nextChunk - 1}");
return null;
}
JsonDecoder decoder = new JsonDecoder();
JsonDecoder decoder = const JsonDecoder();
callback(new StockData(decoder.convert(json)));
if (_nextChunk < _kChunkCount)
_fetchNextChunk();

View file

@ -22,7 +22,7 @@ class _StockSymbolView extends StatelessWidget {
TextStyle headings = Theme.of(context).textTheme.body2;
return new Container(
padding: new EdgeInsets.all(20.0),
padding: const EdgeInsets.all(20.0),
child: new Column(
children: <Widget>[
new Row(
@ -47,11 +47,11 @@ class _StockSymbolView extends StatelessWidget {
),
new RichText(
text: new TextSpan(
style: DefaultTextStyle.of(context).style.merge(new TextStyle(fontSize: 8.0)),
style: DefaultTextStyle.of(context).style.merge(const TextStyle(fontSize: 8.0)),
text: 'Prices may be delayed by ',
children: <TextSpan>[
new TextSpan(text: 'several', style: new TextStyle(fontStyle: FontStyle.italic)),
new TextSpan(text: ' years.'),
const TextSpan(text: 'several', style: const TextStyle(fontStyle: FontStyle.italic)),
const TextSpan(text: ' years.'),
]
)
),
@ -75,7 +75,7 @@ class StockSymbolPage extends StatelessWidget {
),
body: new SingleChildScrollView(
child: new Container(
margin: new EdgeInsets.all(20.0),
margin: const EdgeInsets.all(20.0),
child: new Card(
child: new _StockSymbolView(
stock: stock,
@ -99,7 +99,7 @@ class StockSymbolBottomSheet extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Container(
padding: new EdgeInsets.all(10.0),
padding: const EdgeInsets.all(10.0),
decoration: new BoxDecoration(
border: new Border(top: new BorderSide(color: Colors.black26))
),

View file

@ -59,7 +59,7 @@ void main() {
// sanity check
expect(find.text('MARKET'), findsOneWidget);
expect(find.text('Account Balance'), findsNothing);
await tester.pump(new Duration(seconds: 2));
await tester.pump(const Duration(seconds: 2));
expect(find.text('MARKET'), findsOneWidget);
expect(find.text('Account Balance'), findsNothing);

View file

@ -28,14 +28,14 @@ void main() {
// Scroll down
for (int i = 0; i < 5; i++) {
await driver.scroll(stockList, 0.0, -300.0, new Duration(milliseconds: 300));
await new Future<Null>.delayed(new Duration(milliseconds: 500));
await driver.scroll(stockList, 0.0, -300.0, const Duration(milliseconds: 300));
await new Future<Null>.delayed(const Duration(milliseconds: 500));
}
// Scroll up
for (int i = 0; i < 5; i++) {
await driver.scroll(stockList, 0.0, 300.0, new Duration(milliseconds: 300));
await new Future<Null>.delayed(new Duration(milliseconds: 500));
await driver.scroll(stockList, 0.0, 300.0, const Duration(milliseconds: 300));
await new Future<Null>.delayed(const Duration(milliseconds: 500));
}
});