reformat code

This commit is contained in:
Wenqi Li 2024-03-25 21:17:22 +08:00
parent 4be94e2058
commit 924dc92946
9 changed files with 54 additions and 18 deletions

View File

@ -43,7 +43,8 @@ class _MyAppState extends State<MyApp> {
Future<bool> _promptPermissionSetting() async { Future<bool> _promptPermissionSetting() async {
if (Platform.isIOS) { if (Platform.isIOS) {
if (await Permission.photos.request().isGranted || await Permission.storage.request().isGranted) { if (await Permission.photos.request().isGranted ||
await Permission.storage.request().isGranted) {
return true; return true;
} }
} }
@ -84,7 +85,9 @@ class _MyAppState extends State<MyApp> {
...?_albums?.map( ...?_albums?.map(
(album) => GestureDetector( (album) => GestureDetector(
onTap: () => Navigator.of(context).push( onTap: () => Navigator.of(context).push(
MaterialPageRoute(builder: (context) => AlbumPage(album)), MaterialPageRoute(
builder: (context) => AlbumPage(album),
),
), ),
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
@ -96,7 +99,8 @@ class _MyAppState extends State<MyApp> {
width: gridWidth, width: gridWidth,
child: FadeInImage( child: FadeInImage(
fit: BoxFit.cover, fit: BoxFit.cover,
placeholder: MemoryImage(kTransparentImage), placeholder:
MemoryImage(kTransparentImage),
image: AlbumThumbnailProvider( image: AlbumThumbnailProvider(
album: album, album: album,
highQuality: true, highQuality: true,
@ -308,7 +312,9 @@ class _VideoProviderState extends State<VideoProvider> {
TextButton( TextButton(
onPressed: () { onPressed: () {
setState(() { setState(() {
_controller!.value.isPlaying ? _controller!.pause() : _controller!.play(); _controller!.value.isPlaying
? _controller!.pause()
: _controller!.play();
}); });
}, },
child: Icon( child: Icon(

View File

@ -33,7 +33,9 @@ class PhotoGallery {
'mediumType': mediumTypeToJson(mediumType), 'mediumType': mediumTypeToJson(mediumType),
'hideIfEmpty': hideIfEmpty, 'hideIfEmpty': hideIfEmpty,
}); });
return json.map<Album>((album) => Album.fromJson(album, mediumType, newest)).toList(); return json
.map<Album>((album) => Album.fromJson(album, mediumType, newest))
.toList();
} }
/// List all available media in a specific album, support pagination of media /// List all available media in a specific album, support pagination of media

View File

@ -33,7 +33,10 @@ class AlbumThumbnailProvider extends ImageProvider<AlbumThumbnailProvider> {
); );
} }
Future<ui.Codec> _loadAsync(AlbumThumbnailProvider key, ImageDecoderCallback decode) async { Future<ui.Codec> _loadAsync(
AlbumThumbnailProvider key,
ImageDecoderCallback decode,
) async {
assert(key == this); assert(key == this);
late ui.ImmutableBuffer buffer; late ui.ImmutableBuffer buffer;
try { try {
@ -47,7 +50,9 @@ class AlbumThumbnailProvider extends ImageProvider<AlbumThumbnailProvider> {
); );
buffer = await ui.ImmutableBuffer.fromUint8List(Uint8List.fromList(data)); buffer = await ui.ImmutableBuffer.fromUint8List(Uint8List.fromList(data));
} catch (e) { } catch (e) {
buffer = await ui.ImmutableBuffer.fromAsset("packages/photo_gallery/images/grey.bmp"); buffer = await ui.ImmutableBuffer.fromAsset(
"packages/photo_gallery/images/grey.bmp",
);
} }
return decode(buffer); return decode(buffer);
} }

View File

@ -25,11 +25,15 @@ class PhotoProvider extends ImageProvider<PhotoProvider> {
); );
} }
Future<ui.Codec> _loadAsync(PhotoProvider key, ImageDecoderCallback decode) async { Future<ui.Codec> _loadAsync(
PhotoProvider key,
ImageDecoderCallback decode,
) async {
assert(key == this); assert(key == this);
final file = await PhotoGallery.getFile( final file = await PhotoGallery.getFile(
mediumId: mediumId, mediumType: MediumType.image, mimeType: mimeType); mediumId: mediumId, mediumType: MediumType.image, mimeType: mimeType);
ui.ImmutableBuffer buffer = await ui.ImmutableBuffer.fromFilePath(file.path); ui.ImmutableBuffer buffer =
await ui.ImmutableBuffer.fromFilePath(file.path);
return decode(buffer); return decode(buffer);
} }

View File

@ -37,7 +37,10 @@ class ThumbnailProvider extends ImageProvider<ThumbnailProvider> {
); );
} }
Future<ui.Codec> _loadAsync(ThumbnailProvider key, ImageDecoderCallback decode) async { Future<ui.Codec> _loadAsync(
ThumbnailProvider key,
ImageDecoderCallback decode,
) async {
assert(key == this); assert(key == this);
late ui.ImmutableBuffer buffer; late ui.ImmutableBuffer buffer;
try { try {
@ -50,7 +53,9 @@ class ThumbnailProvider extends ImageProvider<ThumbnailProvider> {
); );
buffer = await ui.ImmutableBuffer.fromUint8List(Uint8List.fromList(data)); buffer = await ui.ImmutableBuffer.fromUint8List(Uint8List.fromList(data));
} catch (e) { } catch (e) {
buffer = await ui.ImmutableBuffer.fromAsset("packages/photo_gallery/images/grey.bmp"); buffer = await ui.ImmutableBuffer.fromAsset(
"packages/photo_gallery/images/grey.bmp",
);
} }
return decode(buffer); return decode(buffer);
} }

View File

@ -33,7 +33,7 @@ class MediaPage {
album: album, album: album,
skip: end, skip: end,
take: items.length, take: items.length,
lightWeight: lightWeight lightWeight: lightWeight,
); );
} }

View File

@ -13,14 +13,16 @@ void main() {
TestWidgetsFlutterBinding.ensureInitialized(); TestWidgetsFlutterBinding.ensureInitialized();
setUp(() { setUp(() {
TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger.setMockMethodCallHandler( TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger
.setMockMethodCallHandler(
channel, channel,
mockMethodCallHandler, mockMethodCallHandler,
); );
}); });
tearDown(() { tearDown(() {
TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger.setMockMethodCallHandler( TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger
.setMockMethodCallHandler(
channel, channel,
null, null,
); );
@ -30,7 +32,10 @@ void main() {
MediumType mediumType = MediumType.image; MediumType mediumType = MediumType.image;
bool newest = true; bool newest = true;
var result = await PhotoGallery.listAlbums(mediumType: mediumType); var result = await PhotoGallery.listAlbums(mediumType: mediumType);
var expected = Generator.generateAlbums(mediumType: mediumType, newest: newest); var expected = Generator.generateAlbums(
mediumType: mediumType,
newest: newest,
);
expect(result, expected); expect(result, expected);
}); });

View File

@ -25,7 +25,10 @@ class Generator {
]; ];
} }
static List<Album> generateAlbums({MediumType? mediumType, bool newest = true}) { static List<Album> generateAlbums({
MediumType? mediumType,
bool newest = true,
}) {
return Generator.generateAlbumsJson(mediumType: mediumType, newest: newest) return Generator.generateAlbumsJson(mediumType: mediumType, newest: newest)
.map<Album>((x) => Album.fromJson(x, mediumType, newest)) .map<Album>((x) => Album.fromJson(x, mediumType, newest))
.toList(); .toList();
@ -42,7 +45,10 @@ class Generator {
var items = []; var items = [];
int index = skip; int index = skip;
while (index < skip + take) { while (index < skip + take) {
items.add(generateMediaJson(mediumId: index.toString(), mediumType: mediumType)); items.add(generateMediaJson(
mediumId: index.toString(),
mediumType: mediumType,
));
index++; index++;
} }

View File

@ -8,7 +8,10 @@ Future<dynamic> mockMethodCallHandler(MethodCall call) async {
if (call.method == "listAlbums") { if (call.method == "listAlbums") {
MediumType? mediumType = jsonToMediumType(call.arguments['mediumType']); MediumType? mediumType = jsonToMediumType(call.arguments['mediumType']);
bool newest = call.arguments['newest']; bool newest = call.arguments['newest'];
dynamic albums = Generator.generateAlbumsJson(mediumType: mediumType, newest: newest); dynamic albums = Generator.generateAlbumsJson(
mediumType: mediumType,
newest: newest,
);
return albums; return albums;
} else if (call.method == "listMedia") { } else if (call.method == "listMedia") {
String albumId = call.arguments['albumId']; String albumId = call.arguments['albumId'];