@@ -3,7 +3,7 @@ import 'dart:io';
33import 'package:file_picker/file_picker.dart' ;
44import 'package:flutter/material.dart' ;
55import 'package:flutter_image_compress/flutter_image_compress.dart' ;
6- import 'package:heic_to_jpg/heic_to_jpg .dart' ;
6+ import 'package:heif_converter/heif_converter .dart' ;
77import 'package:image_picker/image_picker.dart' ;
88import 'package:path_provider/path_provider.dart' ;
99import 'package:piwigo_ng/components/dialogs/confirm_dialog.dart' ;
@@ -51,7 +51,11 @@ Future<File> compressImage(File file,
5151 );
5252
5353 debugPrint ("Upload Compress $result " );
54- return result ?? file;
54+ if (result != null ) {
55+ return File (result.path);
56+ } else {
57+ return file;
58+ }
5559 } catch (e) {
5660 debugPrint (e.toString ());
5761 }
@@ -82,12 +86,10 @@ Future<List<XFile>?> onPickFiles() async {
8286 List <XFile > uploadFiles = [];
8387 for (PlatformFile file in result.files) {
8488 String ? filePath = file.path;
85- if (file.extension == 'heic' && filePath != null ) {
86- debugPrint ("$filePath is Heic !" );
89+ if (( file.extension == 'heic' || file. extension == 'heif' ) && filePath != null ) {
90+ debugPrint ("$filePath is Heic/Heif !" );
8791 File oldFile = File (file.path! );
88- filePath = await HeicToJpg .convert (
89- file.path! ,
90- );
92+ filePath = await HeifConverter .convert (file.path! , format: 'jpg' );
9193 oldFile.delete ();
9294 }
9395 if (filePath != null ) {
@@ -116,8 +118,8 @@ Future<List<XFile>?> onPickImages() async {
116118 if (Preferences .getAvailableFileTypes
117119 .contains (file.name.split ('.' ).last)) {
118120 files.add (file);
119- } else if (file.name.endsWith ('.heic' )) {
120- String ? jpgPath = await HeicToJpg .convert (file.path);
121+ } else if (file.name.endsWith ('.heic' ) || file.name. endsWith ( '.heif' ) ) {
122+ String ? jpgPath = await HeifConverter .convert (file.path, format : 'jpg' );
121123 if (jpgPath != null ) {
122124 files.add (XFile (jpgPath));
123125 }
@@ -146,7 +148,7 @@ Future<XFile?> onTakePhoto(BuildContext context) async {
146148 requestFullMetadata: ! Preferences .getRemoveMetadata,
147149 );
148150 if (image != null ) {
149- String ? jpgPath = await HeicToJpg .convert (image.path);
151+ String ? jpgPath = await HeifConverter .convert (image.path, format : 'jpg' );
150152 if (jpgPath != null ) {
151153 image = XFile (jpgPath);
152154 }
0 commit comments