packages upgrade, android library upgrade

This commit is contained in:
Thibault Deckers 2020-12-24 12:44:27 +09:00
parent 14fc4b2913
commit a1c7851a80
4 changed files with 26 additions and 37 deletions

View file

@ -53,7 +53,7 @@ android {
defaultConfig {
applicationId "deckers.thibault.aves"
// TODO TLAD try minSdkVersion 23 when kotlin migration is done
// TODO TLAD try minSdkVersion 23
minSdkVersion 24
targetSdkVersion 30 // same as compileSdkVersion
versionCode flutterVersionCode.toInteger()
@ -99,7 +99,7 @@ repositories {
dependencies {
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.9'
implementation 'androidx.core:core-ktx:1.5.0-alpha05' // v1.5.0-alpha02+ for ShortcutManagerCompat.setDynamicShortcuts
implementation 'androidx.exifinterface:exifinterface:1.3.1'
implementation 'androidx.exifinterface:exifinterface:1.3.2'
implementation 'com.commonsware.cwac:document:0.4.1'
implementation 'com.drewnoakes:metadata-extractor:2.15.0'
// as of v0.9.8.7, `Android-TiffBitmapFactory` master branch is set up to release and distribute via Bintray

View file

@ -1,6 +1,6 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext.kotlin_version = '1.4.20'
ext.kotlin_version = '1.4.21'
repositories {
google()
jcenter()

View file

@ -15,8 +15,6 @@ import 'package:aves/widgets/fullscreen/source_viewer_page.dart';
import 'package:flutter/material.dart';
import 'package:flutter/scheduler.dart';
import 'package:flutter/services.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:pdf/pdf.dart';
import 'package:pdf/widgets.dart' as pdf;
import 'package:pedantic/pedantic.dart';
import 'package:printing/printing.dart';
@ -100,34 +98,32 @@ class EntryActionDelegate with FeedbackMixin, PermissionAwareMixin {
final documentName = entry.bestTitle ?? 'Aves';
final doc = pdf.Document(title: documentName);
PdfImage pdfImage;
pdf.Widget pdfChild;
if (entry.isSvg) {
final bytes = await ImageFileService.getImage(uri, mimeType, entry.rotationDegrees, entry.isFlipped);
if (bytes != null && bytes.isNotEmpty) {
final svgRoot = await svg.fromSvgBytes(bytes, uri);
final viewBox = svgRoot.viewport.viewBox;
// 1000 is arbitrary, but large enough to look ok in the print preview
final targetSize = viewBox * 1000 / viewBox.longestSide;
final picture = svgRoot.toPicture(size: targetSize);
final uiImage = await picture.toImage(targetSize.width.ceil(), targetSize.height.ceil());
pdfImage = await pdfImageFromImage(
pdf: doc.document,
image: uiImage,
);
pdfChild = pdf.SvgImage(svg: utf8.decode(bytes));
}
} else {
pdfImage = await pdfImageFromImageProvider(
pdf: doc.document,
image: UriImage(
pdfChild = pdf.Image.provider(await flutterImageProvider(
UriImage(
uri: uri,
mimeType: mimeType,
rotationDegrees: rotationDegrees,
isFlipped: isFlipped,
),
);
));
}
if (pdfImage != null) {
doc.addPage(pdf.Page(build: (context) => pdf.Center(child: pdf.Image(pdfImage)))); // Page
if (pdfChild != null) {
doc.addPage(pdf.Page(
orientation: entry.isPortrait ? pdf.PageOrientation.portrait : pdf.PageOrientation.landscape,
build: (context) => pdf.FullPage(
ignoreMargins: true,
child: pdf.Center(
child: pdfChild,
),
),
)); // Page
unawaited(Printing.layoutPdf(
onLayout: (format) => doc.save(),
name: documentName,

View file

@ -63,7 +63,7 @@ packages:
name: cached_network_image
url: "https://pub.dartlang.org"
source: hosted
version: "2.4.1"
version: "2.5.0"
characters:
dependency: transitive
description:
@ -282,7 +282,7 @@ packages:
name: flutter_cache_manager
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.0"
version: "2.1.0"
flutter_cube:
dependency: transitive
description:
@ -605,7 +605,7 @@ packages:
name: panorama
url: "https://pub.dartlang.org"
source: hosted
version: "0.1.0"
version: "0.1.2"
path:
dependency: transitive
description:
@ -668,7 +668,7 @@ packages:
name: pdf
url: "https://pub.dartlang.org"
source: hosted
version: "1.12.0"
version: "1.13.0"
pedantic:
dependency: "direct main"
description:
@ -682,7 +682,7 @@ packages:
name: percent_indicator
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.8"
version: "2.1.9"
permission_handler:
dependency: "direct main"
description:
@ -738,7 +738,7 @@ packages:
name: printing
url: "https://pub.dartlang.org"
source: hosted
version: "3.7.1"
version: "3.7.2"
process:
dependency: transitive
description:
@ -787,7 +787,7 @@ packages:
name: rxdart
url: "https://pub.dartlang.org"
source: hosted
version: "0.24.1"
version: "0.25.0"
screen:
dependency: "direct main"
description:
@ -857,7 +857,7 @@ packages:
name: shelf_static
url: "https://pub.dartlang.org"
source: hosted
version: "0.2.8"
version: "0.2.9+1"
shelf_web_socket:
dependency: transitive
description:
@ -1052,13 +1052,6 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "0.0.1+3"
utf:
dependency: transitive
description:
name: utf
url: "https://pub.dartlang.org"
source: hosted
version: "0.9.0+5"
uuid:
dependency: transitive
description: