generate LVGL 9 binary

Signed-off-by: Peter Siegmund <developer@mars3142.org>
This commit is contained in:
2025-12-06 21:08:52 +01:00
parent 187b42e465
commit d100221876
5 changed files with 127 additions and 4 deletions

View File

@@ -2,6 +2,7 @@ import 'dart:io';
import 'package:cinema/common/dio_module.dart';
import 'package:cinema/common/domain/serializers.dart';
import 'package:cinema/common/lvgl_image_converter.dart';
import 'package:cinema/feature/poster/data/repositories/image_loader.dart';
import 'package:cinema/feature/poster/domain/movie.dart';
import 'package:cinema/feature/poster/domain/tmdb_trending_response.dart';
@@ -12,9 +13,14 @@ import 'package:injectable/injectable.dart';
class TmDBImageLoader implements ImageLoader {
final Dio api;
final Dio images;
final LvglImageConverter lvglConverter;
final String imageBaseUrl = 'https://image.tmdb.org/t/p/w500';
TmDBImageLoader(@Named(dioAPI) this.api, @Named(dioIMAGES) this.images);
TmDBImageLoader(
@Named(dioAPI) this.api,
@Named(dioIMAGES) this.images,
this.lvglConverter,
);
@override
Future<List<Movie>> getPosterURIs({String? language = 'de'}) async {
@@ -41,8 +47,8 @@ class TmDBImageLoader implements ImageLoader {
@override
Future<bool> downloadImages(Movie movie) async {
await _downloadImage(movie.poster, "cache/movie/${movie.id}/poster.png");
await _downloadImage(movie.backdrop, "cache/movie/${movie.id}/backdrop.png");
await _downloadImage(movie.poster, "cache/movie/${movie.id}/poster.jpeg");
await _downloadImage(movie.backdrop, "cache/movie/${movie.id}/backdrop.jpeg");
return true;
}
@@ -55,6 +61,10 @@ class TmDBImageLoader implements ImageLoader {
await file.parent.create(recursive: true);
final response = await images.get(url, options: Options(responseType: ResponseType.bytes));
await file.writeAsBytes(response.data);
final binFilename = filename.replaceAll('.jpeg', '.bin');
await lvglConverter.convertPngToBin(filename, binFilename);
return true;
}
}