diff --git a/MAINTENANCE.md b/MAINTENANCE.md index c4ec801af..0593cb6ef 100644 --- a/MAINTENANCE.md +++ b/MAINTENANCE.md @@ -14,7 +14,7 @@ match any new language/SDK features, etc.). | jsonexample | | | | material_studies/shrine | | | | place_tracker | | | -| platform_design | | | +| platform_design | johnpryan | 10/7/19 | | platform_view_swift | | | | provider_counter | | | | provider_shopper | | | diff --git a/platform_design/analysis_options.yaml b/platform_design/analysis_options.yaml index b9a01f119..8595cd0e8 100644 --- a/platform_design/analysis_options.yaml +++ b/platform_design/analysis_options.yaml @@ -1,4 +1,4 @@ -include: package:pedantic/analysis_options.1.7.0.yaml +include: package:pedantic/analysis_options.1.8.0.yaml analyzer: strong-mode: diff --git a/platform_design/android/app/build.gradle b/platform_design/android/app/build.gradle index b07e1e629..382a9f1ac 100644 --- a/platform_design/android/app/build.gradle +++ b/platform_design/android/app/build.gradle @@ -32,7 +32,6 @@ android { } defaultConfig { - // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.platform_design" minSdkVersion 16 targetSdkVersion 28 @@ -43,8 +42,6 @@ android { buildTypes { release { - // TODO: Add your own signing config for the release build. - // Signing with the debug keys for now, so `flutter run --release` works. signingConfig signingConfigs.debug } } diff --git a/platform_design/lib/main.dart b/platform_design/lib/main.dart index 41a1aee43..61144ea6d 100644 --- a/platform_design/lib/main.dart +++ b/platform_design/lib/main.dart @@ -1,6 +1,5 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; -import 'package:flutter/scheduler.dart'; import 'songs_tab.dart'; import 'news_tab.dart'; @@ -13,8 +12,6 @@ void main() => runApp(MyAdaptingApp()); class MyAdaptingApp extends StatelessWidget { @override Widget build(context) { - // Change this value to better see animations. - timeDilation = 1; // Either Material or Cupertino widgets work in either Material or Cupertino // Apps. return MaterialApp( @@ -52,7 +49,7 @@ class PlatformAdaptingHomePage extends StatefulWidget { class _PlatformAdaptingHomePageState extends State { // This app keeps a global key for the songs tab because it owns a bunch of - // data. Since changing platform reparents those tabs into different + // data. Since changing platform re-parents those tabs into different // scaffolds, keeping a global key to it lets this app keep that tab's data as // the platform toggles. // diff --git a/platform_design/lib/song_detail_tab.dart b/platform_design/lib/song_detail_tab.dart index 91b8d1ba4..1f5045a98 100644 --- a/platform_design/lib/song_detail_tab.dart +++ b/platform_design/lib/song_detail_tab.dart @@ -3,10 +3,10 @@ import 'package:flutter/material.dart'; import 'widgets.dart'; -// Page shown when a card in the songs tab is tapped. -// -// On Android, this page sits at the top of your app. On iOS, this page is on -// top of the songs tab's content but is below the tab bar itself. +/// Page shown when a card in the songs tab is tapped. +/// +/// On Android, this page sits at the top of your app. On iOS, this page is on +/// top of the songs tab's content but is below the tab bar itself. class SongDetailTab extends StatelessWidget { const SongDetailTab({this.id, this.song, this.color}); diff --git a/platform_design/lib/songs_tab.dart b/platform_design/lib/songs_tab.dart index 92e5fde4d..32b7fa87e 100644 --- a/platform_design/lib/songs_tab.dart +++ b/platform_design/lib/songs_tab.dart @@ -139,9 +139,7 @@ class _SongsTabState extends State { CupertinoSliverNavigationBar( trailing: CupertinoButton( padding: EdgeInsets.zero, - // TODO(redbrogdon): Change this back to shuffle once the new icon - // makes it into Flutter's stable channel. - child: Icon(CupertinoIcons.shuffle_thick), + child: Icon(CupertinoIcons.shuffle), onPressed: _togglePlatform, ), ), diff --git a/platform_design/lib/utils.dart b/platform_design/lib/utils.dart index 0ef9716d6..fbec9b8c3 100644 --- a/platform_design/lib/utils.dart +++ b/platform_design/lib/utils.dart @@ -1,11 +1,7 @@ import 'dart:math'; import 'package:english_words/english_words.dart'; -// This reimplements generateWordPair because english_words's -// implementation has some performance issues. -// https://github.com/filiph/english_words/issues/9 // ignore: implementation_imports -import 'package:english_words/src/words/unsafe.dart'; import 'package:flutter/material.dart'; // This file has a number of platform-agnostic non-Widget utility functions. @@ -26,26 +22,9 @@ const _myListOfRandomColors = [ final _random = Random(); -final wordPairIterator = generateWordPair(); -Iterable generateWordPair() sync* { - bool filterWord(String word) => unsafe.contains(word); - String pickRandom(List list) => list[_random.nextInt(list.length)]; - - String prefix; - while (true) { - if (_random.nextBool()) { - prefix = pickRandom(adjectives); - } else { - prefix = pickRandom(nouns); - } - final suffix = pickRandom(nouns); - - if (filterWord(prefix) || filterWord(suffix)) continue; - - final wordPair = WordPair(prefix, suffix); - yield wordPair; - } -} +// Avoid customizing the word generator, which can be slow. +// https://github.com/filiph/english_words/issues/9 +final wordPairIterator = generateWordPairs(); String generateRandomHeadline() { final artist = capitalizePair(wordPairIterator.first); diff --git a/platform_design/pubspec.lock b/platform_design/pubspec.lock index be0c25990..ce157b123 100644 --- a/platform_design/pubspec.lock +++ b/platform_design/pubspec.lock @@ -158,4 +158,3 @@ packages: version: "2.0.8" sdks: dart: ">=2.5.0 <3.0.0" - flutter: ">=1.5.2" diff --git a/platform_design/pubspec.yaml b/platform_design/pubspec.yaml index ac8b11d92..e89adb4ff 100644 --- a/platform_design/pubspec.yaml +++ b/platform_design/pubspec.yaml @@ -4,7 +4,6 @@ version: 1.0.0+1 environment: sdk: ">=2.5.0 <3.0.0" - flutter: ">=1.5.2" dependencies: english_words: ^3.1.5 @@ -17,7 +16,7 @@ dependencies: dev_dependencies: flutter_test: sdk: flutter - pedantic: ^1.7.0 + pedantic: ^1.8.0 flutter: uses-material-design: true