From d2636f270bfb7d011b8f6a950df085afa9771307 Mon Sep 17 00:00:00 2001 From: Riccardo Lomazzi Date: Tue, 6 Sep 2022 22:37:13 +0200 Subject: [PATCH 1/4] updated example, compileSdkVersion bumped up to 33 and upgraded kotlin version, plus updated packages --- android/build.gradle | 2 +- .../open_document/OpenDocumentPlugin.kt | 9 +- example/android/app/build.gradle | 4 +- .../android/app/src/main/AndroidManifest.xml | 40 +--- example/android/build.gradle | 4 +- .../gradle/wrapper/gradle-wrapper.properties | 2 +- .../flutter/generated_plugin_registrant.cc | 6 + .../flutter/generated_plugin_registrant.h | 2 + example/linux/flutter/generated_plugins.cmake | 9 + .../Flutter/GeneratedPluginRegistrant.swift | 4 + example/pubspec.lock | 184 +++++++++++++++--- example/pubspec.yaml | 8 +- .../flutter/generated_plugin_registrant.cc | 8 + .../flutter/generated_plugin_registrant.h | 2 + .../windows/flutter/generated_plugins.cmake | 10 + lib/my_files/components/my_files_core.dart | 15 +- lib/my_files/components/my_files_items.dart | 29 ++- .../components/slidable_my_file_item.dart | 72 ++++--- lib/my_files/my_files_screen.dart | 11 +- lib/open_document.dart | 6 +- pubspec.lock | 153 +++++++++++++-- pubspec.yaml | 4 +- test/open_document_test.dart | 4 - 23 files changed, 422 insertions(+), 166 deletions(-) diff --git a/android/build.gradle b/android/build.gradle index e043e01..6843f17 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' android { - compileSdkVersion 28 + compileSdkVersion 33 sourceSets { main.java.srcDirs += 'src/main/kotlin' diff --git a/android/src/main/kotlin/com/example/open_document/OpenDocumentPlugin.kt b/android/src/main/kotlin/com/example/open_document/OpenDocumentPlugin.kt index 0094f6e..6c3ddb8 100644 --- a/android/src/main/kotlin/com/example/open_document/OpenDocumentPlugin.kt +++ b/android/src/main/kotlin/com/example/open_document/OpenDocumentPlugin.kt @@ -45,7 +45,9 @@ class OpenDocumentPlugin : FlutterPlugin, MethodCallHandler, ActivityAware { @JvmStatic fun registerWith(registrar: Registrar) { val plugin = OpenDocumentPlugin() - plugin.activity = registrar.activity() + if(registrar.activity() != null) { + plugin.activity = registrar.activity()!! + } plugin.context = registrar.context() val channel = MethodChannel(registrar.messenger(), "open_document") channel.setMethodCallHandler(plugin) @@ -176,8 +178,9 @@ class OpenDocumentPlugin : FlutterPlugin, MethodCallHandler, ActivityAware { } override fun onAttachedToActivity(binding: ActivityPluginBinding) { - channel = MethodChannel( - flutterPluginBinding?.binaryMessenger, "open_document") + if(flutterPluginBinding == null || flutterPluginBinding?.binaryMessenger == null) + return; + channel = MethodChannel(flutterPluginBinding!!.binaryMessenger, "open_document") context = flutterPluginBinding?.applicationContext!! activity = binding.activity channel?.setMethodCallHandler(this) diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle index 997f1aa..bb7c1e7 100644 --- a/example/android/app/build.gradle +++ b/example/android/app/build.gradle @@ -26,7 +26,7 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 28 + compileSdkVersion 33 sourceSets { main.java.srcDirs += 'src/main/kotlin' @@ -40,7 +40,7 @@ android { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.open_document_example" minSdkVersion 16 - targetSdkVersion 28 + targetSdkVersion 31 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml index e781033..7efbb16 100644 --- a/example/android/app/src/main/AndroidManifest.xml +++ b/example/android/app/src/main/AndroidManifest.xml @@ -1,5 +1,4 @@ - + @@ -11,34 +10,19 @@ In most cases you can leave this as-is, but you if you want to provide additional functionality it is fine to subclass or reimplement FlutterApplication and put your custom class here. --> - - + + - + - + @@ -46,18 +30,10 @@ - + - - + + diff --git a/example/android/build.gradle b/example/android/build.gradle index 3100ad2..714549c 100644 --- a/example/android/build.gradle +++ b/example/android/build.gradle @@ -1,12 +1,12 @@ buildscript { - ext.kotlin_version = '1.3.50' + ext.kotlin_version = '1.6.10' repositories { google() jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/example/android/gradle/wrapper/gradle-wrapper.properties b/example/android/gradle/wrapper/gradle-wrapper.properties index 296b146..bc6a58a 100644 --- a/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/example/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/example/linux/flutter/generated_plugin_registrant.cc b/example/linux/flutter/generated_plugin_registrant.cc index d38195a..f6f23bf 100644 --- a/example/linux/flutter/generated_plugin_registrant.cc +++ b/example/linux/flutter/generated_plugin_registrant.cc @@ -2,8 +2,14 @@ // Generated file. Do not edit. // +// clang-format off + #include "generated_plugin_registrant.h" +#include void fl_register_plugins(FlPluginRegistry* registry) { + g_autoptr(FlPluginRegistrar) url_launcher_linux_registrar = + fl_plugin_registry_get_registrar_for_plugin(registry, "UrlLauncherPlugin"); + url_launcher_plugin_register_with_registrar(url_launcher_linux_registrar); } diff --git a/example/linux/flutter/generated_plugin_registrant.h b/example/linux/flutter/generated_plugin_registrant.h index 9bf7478..e0f0a47 100644 --- a/example/linux/flutter/generated_plugin_registrant.h +++ b/example/linux/flutter/generated_plugin_registrant.h @@ -2,6 +2,8 @@ // Generated file. Do not edit. // +// clang-format off + #ifndef GENERATED_PLUGIN_REGISTRANT_ #define GENERATED_PLUGIN_REGISTRANT_ diff --git a/example/linux/flutter/generated_plugins.cmake b/example/linux/flutter/generated_plugins.cmake index 51436ae..f16b4c3 100644 --- a/example/linux/flutter/generated_plugins.cmake +++ b/example/linux/flutter/generated_plugins.cmake @@ -3,6 +3,10 @@ # list(APPEND FLUTTER_PLUGIN_LIST + url_launcher_linux +) + +list(APPEND FLUTTER_FFI_PLUGIN_LIST ) set(PLUGIN_BUNDLED_LIBRARIES) @@ -13,3 +17,8 @@ foreach(plugin ${FLUTTER_PLUGIN_LIST}) list(APPEND PLUGIN_BUNDLED_LIBRARIES $) list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries}) endforeach(plugin) + +foreach(ffi_plugin ${FLUTTER_FFI_PLUGIN_LIST}) + add_subdirectory(flutter/ephemeral/.plugin_symlinks/${ffi_plugin}/linux plugins/${ffi_plugin}) + list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${ffi_plugin}_bundled_libraries}) +endforeach(ffi_plugin) diff --git a/example/macos/Flutter/GeneratedPluginRegistrant.swift b/example/macos/Flutter/GeneratedPluginRegistrant.swift index f8bc15f..074e83c 100644 --- a/example/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/example/macos/Flutter/GeneratedPluginRegistrant.swift @@ -6,9 +6,13 @@ import FlutterMacOS import Foundation import open_document +import share_plus_macos +import url_launcher_macos import wakelock_macos func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { OpenDocumentPlugin.register(with: registry.registrar(forPlugin: "OpenDocumentPlugin")) + SharePlusMacosPlugin.register(with: registry.registrar(forPlugin: "SharePlusMacosPlugin")) + UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin")) WakelockMacosPlugin.register(with: registry.registrar(forPlugin: "WakelockMacosPlugin")) } diff --git a/example/pubspec.lock b/example/pubspec.lock index 1a7b65b..3fec164 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -14,7 +14,7 @@ packages: name: async url: "https://pub.dartlang.org" source: hosted - version: "2.5.0" + version: "2.8.2" boolean_selector: dependency: transitive description: @@ -28,14 +28,14 @@ packages: name: characters url: "https://pub.dartlang.org" source: hosted - version: "1.1.0" + version: "1.2.0" charcode: dependency: transitive description: name: charcode url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "1.3.1" clock: dependency: transitive description: @@ -49,7 +49,7 @@ packages: name: collection url: "https://pub.dartlang.org" source: hosted - version: "1.15.0" + version: "1.16.0" crypto: dependency: transitive description: @@ -63,7 +63,7 @@ packages: name: cupertino_icons url: "https://pub.dartlang.org" source: hosted - version: "0.1.3" + version: "1.0.5" dio: dependency: "direct main" description: @@ -77,7 +77,7 @@ packages: name: fake_async url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "1.3.0" ffi: dependency: transitive description: @@ -85,6 +85,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.0" + file: + dependency: transitive + description: + name: file + url: "https://pub.dartlang.org" + source: hosted + version: "6.1.4" flutter: dependency: "direct main" description: flutter @@ -96,7 +103,7 @@ packages: name: flutter_slidable url: "https://pub.dartlang.org" source: hosted - version: "0.6.0-nullsafety.0" + version: "2.0.0" flutter_test: dependency: "direct dev" description: flutter @@ -127,28 +134,35 @@ packages: name: js url: "https://pub.dartlang.org" source: hosted - version: "0.6.3" + version: "0.6.4" matcher: dependency: transitive description: name: matcher url: "https://pub.dartlang.org" source: hosted - version: "0.12.10" + version: "0.12.11" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.4" meta: dependency: transitive description: name: meta url: "https://pub.dartlang.org" source: hosted - version: "1.3.0" + version: "1.7.0" mime: dependency: transitive description: name: mime url: "https://pub.dartlang.org" source: hosted - version: "1.0.0" + version: "1.0.2" open_document: dependency: "direct main" description: @@ -162,7 +176,7 @@ packages: name: path url: "https://pub.dartlang.org" source: hosted - version: "1.8.0" + version: "1.8.1" path_provider_platform_interface: dependency: transitive description: @@ -183,21 +197,42 @@ packages: name: permission_handler url: "https://pub.dartlang.org" source: hosted - version: "6.1.0" + version: "10.0.0" + permission_handler_android: + dependency: transitive + description: + name: permission_handler_android + url: "https://pub.dartlang.org" + source: hosted + version: "10.0.0" + permission_handler_apple: + dependency: transitive + description: + name: permission_handler_apple + url: "https://pub.dartlang.org" + source: hosted + version: "9.0.4" permission_handler_platform_interface: dependency: transitive description: name: permission_handler_platform_interface url: "https://pub.dartlang.org" source: hosted - version: "3.1.0" - platform: + version: "3.7.0" + permission_handler_windows: dependency: transitive + description: + name: permission_handler_windows + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.0" + platform: + dependency: "direct overridden" description: name: platform url: "https://pub.dartlang.org" source: hosted - version: "3.0.0" + version: "3.1.0" plugin_platform_interface: dependency: transitive description: @@ -205,13 +240,48 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.0.0" - share: + share_plus: dependency: transitive description: - name: share + name: share_plus url: "https://pub.dartlang.org" source: hosted - version: "2.0.1" + version: "4.1.0" + share_plus_linux: + dependency: transitive + description: + name: share_plus_linux + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.0" + share_plus_macos: + dependency: transitive + description: + name: share_plus_macos + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" + share_plus_platform_interface: + dependency: transitive + description: + name: share_plus_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.3" + share_plus_web: + dependency: transitive + description: + name: share_plus_web + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" + share_plus_windows: + dependency: transitive + description: + name: share_plus_windows + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" sky_engine: dependency: transitive description: flutter @@ -223,7 +293,7 @@ packages: name: source_span url: "https://pub.dartlang.org" source: hosted - version: "1.8.0" + version: "1.8.2" stack_trace: dependency: transitive description: @@ -258,7 +328,7 @@ packages: name: test_api url: "https://pub.dartlang.org" source: hosted - version: "0.2.19" + version: "0.4.9" typed_data: dependency: transitive description: @@ -266,48 +336,104 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.3.0" + url_launcher: + dependency: transitive + description: + name: url_launcher + url: "https://pub.dartlang.org" + source: hosted + version: "6.1.3" + url_launcher_android: + dependency: transitive + description: + name: url_launcher_android + url: "https://pub.dartlang.org" + source: hosted + version: "6.0.17" + url_launcher_ios: + dependency: transitive + description: + name: url_launcher_ios + url: "https://pub.dartlang.org" + source: hosted + version: "6.0.17" + url_launcher_linux: + dependency: transitive + description: + name: url_launcher_linux + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" + url_launcher_macos: + dependency: transitive + description: + name: url_launcher_macos + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" + url_launcher_platform_interface: + dependency: transitive + description: + name: url_launcher_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.4" + url_launcher_web: + dependency: transitive + description: + name: url_launcher_web + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.13" + url_launcher_windows: + dependency: transitive + description: + name: url_launcher_windows + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" vector_math: dependency: transitive description: name: vector_math url: "https://pub.dartlang.org" source: hosted - version: "2.1.0" + version: "2.1.2" wakelock: dependency: "direct main" description: name: wakelock url: "https://pub.dartlang.org" source: hosted - version: "0.5.0+2" + version: "0.6.2" wakelock_macos: dependency: transitive description: name: wakelock_macos url: "https://pub.dartlang.org" source: hosted - version: "0.1.0" + version: "0.4.0" wakelock_platform_interface: dependency: transitive description: name: wakelock_platform_interface url: "https://pub.dartlang.org" source: hosted - version: "0.2.0" + version: "0.3.0" wakelock_web: dependency: transitive description: name: wakelock_web url: "https://pub.dartlang.org" source: hosted - version: "0.2.0" + version: "0.4.0" wakelock_windows: dependency: transitive description: name: wakelock_windows url: "https://pub.dartlang.org" source: hosted - version: "0.1.0" + version: "0.2.0" win32: dependency: transitive description: @@ -316,5 +442,5 @@ packages: source: hosted version: "2.0.3" sdks: - dart: ">=2.12.0 <3.0.0" - flutter: ">=2.0.0" + dart: ">=2.17.0 <3.0.0" + flutter: ">=3.0.0" diff --git a/example/pubspec.yaml b/example/pubspec.yaml index 6d1966e..352879b 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -16,10 +16,12 @@ dependencies: open_document: path: ../ - cupertino_icons: ^0.1.3 + cupertino_icons: ^1.0.5 dio: ^4.0.0-beta7 - permission_handler: ^6.0.1+1 - wakelock: ^0.5.0+2 + permission_handler: ^10.0.0 + wakelock: ^0.6.2 +dependency_overrides: + platform: ^3.1.0 dev_dependencies: flutter_test: diff --git a/example/windows/flutter/generated_plugin_registrant.cc b/example/windows/flutter/generated_plugin_registrant.cc index 4bfa0f3..a0d0bbe 100644 --- a/example/windows/flutter/generated_plugin_registrant.cc +++ b/example/windows/flutter/generated_plugin_registrant.cc @@ -2,8 +2,16 @@ // Generated file. Do not edit. // +// clang-format off + #include "generated_plugin_registrant.h" +#include +#include void RegisterPlugins(flutter::PluginRegistry* registry) { + PermissionHandlerWindowsPluginRegisterWithRegistrar( + registry->GetRegistrarForPlugin("PermissionHandlerWindowsPlugin")); + UrlLauncherWindowsRegisterWithRegistrar( + registry->GetRegistrarForPlugin("UrlLauncherWindows")); } diff --git a/example/windows/flutter/generated_plugin_registrant.h b/example/windows/flutter/generated_plugin_registrant.h index 9846246..dc139d8 100644 --- a/example/windows/flutter/generated_plugin_registrant.h +++ b/example/windows/flutter/generated_plugin_registrant.h @@ -2,6 +2,8 @@ // Generated file. Do not edit. // +// clang-format off + #ifndef GENERATED_PLUGIN_REGISTRANT_ #define GENERATED_PLUGIN_REGISTRANT_ diff --git a/example/windows/flutter/generated_plugins.cmake b/example/windows/flutter/generated_plugins.cmake index 4d10c25..c20a586 100644 --- a/example/windows/flutter/generated_plugins.cmake +++ b/example/windows/flutter/generated_plugins.cmake @@ -3,6 +3,11 @@ # list(APPEND FLUTTER_PLUGIN_LIST + permission_handler_windows + url_launcher_windows +) + +list(APPEND FLUTTER_FFI_PLUGIN_LIST ) set(PLUGIN_BUNDLED_LIBRARIES) @@ -13,3 +18,8 @@ foreach(plugin ${FLUTTER_PLUGIN_LIST}) list(APPEND PLUGIN_BUNDLED_LIBRARIES $) list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries}) endforeach(plugin) + +foreach(ffi_plugin ${FLUTTER_FFI_PLUGIN_LIST}) + add_subdirectory(flutter/ephemeral/.plugin_symlinks/${ffi_plugin}/windows plugins/${ffi_plugin}) + list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${ffi_plugin}_bundled_libraries}) +endforeach(ffi_plugin) diff --git a/lib/my_files/components/my_files_core.dart b/lib/my_files/components/my_files_core.dart index ffe06d1..aa89431 100644 --- a/lib/my_files/components/my_files_core.dart +++ b/lib/my_files/components/my_files_core.dart @@ -18,7 +18,6 @@ class MyFilesCore extends StatelessWidget { required this.scrollController, this.isShare = false, required this.onClick, - }) : super(key: key); @override @@ -34,10 +33,9 @@ class MyFilesCore extends StatelessWidget { Expanded buildBodyList() { return Expanded( - child: widgets.isNotEmpty - ? ListView(children: widgets) - : StyleMyFile.emptyFolder - ); + child: widgets.isNotEmpty + ? ListView(children: widgets) + : StyleMyFile.emptyFolder); } _scrollToEnd() async { @@ -45,9 +43,8 @@ class MyFilesCore extends StatelessWidget { } Widget buildHeader() { - WidgetsBinding.instance!.addPostFrameCallback((_) => _scrollToEnd()); - return HeaderMyFolderFile(scrollController: scrollController, lastPaths: lastPaths); + WidgetsBinding.instance.addPostFrameCallback((_) => _scrollToEnd()); + return HeaderMyFolderFile( + scrollController: scrollController, lastPaths: lastPaths); } } - - diff --git a/lib/my_files/components/my_files_items.dart b/lib/my_files/components/my_files_items.dart index 124cc3e..5db7139 100644 --- a/lib/my_files/components/my_files_items.dart +++ b/lib/my_files/components/my_files_items.dart @@ -1,9 +1,8 @@ import 'dart:io'; -import 'package:intl/intl.dart'; import 'package:flutter/material.dart'; +import 'package:intl/intl.dart'; import 'package:open_document/my_files/init.dart'; -import 'package:open_document/my_files/model/style_my_file.dart'; class MyFilesItems extends StatelessWidget { final FileSystemEntity item; @@ -48,19 +47,19 @@ class MyFilesItems extends StatelessWidget { BoxDecoration buildBoxDecorationLine() { return BoxDecoration( - border: Border( - bottom: BorderSide(color: Colors.black12, width: 1), - ), - ); + border: Border( + bottom: BorderSide(color: Colors.black12, width: 1), + ), + ); } actionDecision(bool isDirectory, bool isZipFile) { if (isShare && !isDirectory) - return onShared(item); + return onShared(item); else if (isDirectory) - return onPushScreen(item.path); + return onPushScreen(item.path); else if (isZipFile) - return onUnzipFile(item.path); + return onUnzipFile(item.path); else return onOpenDocument(item.path); } @@ -76,8 +75,8 @@ class MyFilesItems extends StatelessWidget { children: [ TextSpan(text: "$title \n"), TextSpan( - text: convertDaTeyMdAddJMS(date), - style: StyleMyFile.styleSubtitle, + text: convertDaTeyMdAddJMS(date), + style: StyleMyFile.styleSubtitle, ), ], ), @@ -87,15 +86,14 @@ class MyFilesItems extends StatelessWidget { } buildIcon(bool isDirectory, bool isZipFile) { - if(isDirectory) + if (isDirectory) return StyleMyFile.folder; - else if(isZipFile) + else if (isZipFile) return StyleMyFile.folderZip; else - return StyleMyFile.description; + return StyleMyFile.description; } - Widget buildContainerRadius() { return AnimatedContainer( duration: Duration(milliseconds: 500), @@ -131,7 +129,6 @@ class MyFilesItems extends StatelessWidget { } } - /// Ex: 06/05/2020 3:04:00 PM (en) or 05/06/2020 15:04:00 (pt-BR) String convertDaTeyMdAddJMS(DateTime date) { // LocaleMyFile(); diff --git a/lib/my_files/components/slidable_my_file_item.dart b/lib/my_files/components/slidable_my_file_item.dart index c587787..c6aea83 100644 --- a/lib/my_files/components/slidable_my_file_item.dart +++ b/lib/my_files/components/slidable_my_file_item.dart @@ -34,10 +34,20 @@ class SlidableMyFileItem extends StatelessWidget { bool isDirectory = file.statSync().type.toString() == 'directory'; return Slidable( key: Key(file.path), - actionPane: SlidableDrawerActionPane(key: UniqueKey()), - dismissal: SlidableDismissal( - dragDismissible: false, - child: SlidableDrawerDismissal(), + endActionPane: ActionPane( + key: UniqueKey(), + motion: ScrollMotion(), + children: [ + SlidableAction( + backgroundColor: + StyleMyFile.iconSlideActionModel.color ?? Colors.white, + autoClose: StyleMyFile.iconSlideActionModel.closeOnTap, + icon: StyleMyFile.iconSlideActionModel.icon, + foregroundColor: StyleMyFile.iconSlideActionModel.foregroundColor, + onPressed: (context) => + checkDeletingFiles(context, file.path, isDirectory), + ), + ], ), child: MyFilesItems( item: file, @@ -48,28 +58,18 @@ class SlidableMyFileItem extends StatelessWidget { onOpenDocument: (String path) => openDocument(path), onShared: (file) => onShared(file), ), - actions: [ - IconSlideAction( - color: StyleMyFile.iconSlideActionModel.color, - closeOnTap: StyleMyFile.iconSlideActionModel.closeOnTap, - onTap: () => checkDeletingFiles(context, file.path, isDirectory), - icon: StyleMyFile.iconSlideActionModel.icon, - foregroundColor: StyleMyFile.iconSlideActionModel.foregroundColor, - ), - ], ); } - onUnzipFile(String path) => extractZip(path: path, lastPath: lastPath, updateFilesList: () => onStateRemove()); + onUnzipFile(String path) => extractZip( + path: path, lastPath: lastPath, updateFilesList: () => onStateRemove()); - onStateRemove(){ + onStateRemove() { updateFilesList(); } openDocument(String path) async { - - return OpenDocument.openDocument(filePath: path); - + return OpenDocument.openDocument(filePath: path); } checkDeletingFiles(BuildContext context, String path, bool isDirectory) { @@ -86,29 +86,38 @@ class SlidableMyFileItem extends StatelessWidget { ); } - void onPressed(BuildContext context, String path, bool isDirectory, ) { + void onPressed( + BuildContext context, + String path, + bool isDirectory, + ) { onDeleteFile(context, path, isDirectory); Navigator.of(context).pop(); } - void onDeleteFile(BuildContext context,String path, bool isDirectory) async { + void onDeleteFile(BuildContext context, String path, bool isDirectory) async { var document = isDirectory ? Directory(path) : File(path); await document .delete(recursive: true) .then( - (value) => createSnackBar(context, - message: StyleMyFile.snackBarSuccessfullyDeleted, - backgroundColor: StyleMyFile.snackBarSuccessColor, - ), - ).catchError( - (error) => createSnackBar(context, - message: StyleMyFile.snackBarDeletingError, - backgroundColor: StyleMyFile.snackBarErrorColor, - ), - ).whenComplete(() => updateFilesList()); + (value) => createSnackBar( + context, + message: StyleMyFile.snackBarSuccessfullyDeleted, + backgroundColor: StyleMyFile.snackBarSuccessColor, + ), + ) + .catchError( + (error) => createSnackBar( + context, + message: StyleMyFile.snackBarDeletingError, + backgroundColor: StyleMyFile.snackBarErrorColor, + ), + ) + .whenComplete(() => updateFilesList()); } - createSnackBar(BuildContext context, {required String message, required Color backgroundColor}) { + createSnackBar(BuildContext context, + {required String message, required Color backgroundColor}) { return ScaffoldMessenger.of(context).showSnackBar( SnackBar( content: Text(message), @@ -117,5 +126,4 @@ class SlidableMyFileItem extends StatelessWidget { ), ); } - } diff --git a/lib/my_files/my_files_screen.dart b/lib/my_files/my_files_screen.dart index 361e823..74d16e1 100644 --- a/lib/my_files/my_files_screen.dart +++ b/lib/my_files/my_files_screen.dart @@ -1,10 +1,11 @@ import 'dart:async'; import 'dart:io'; + import 'package:flutter/material.dart'; import 'package:open_document/my_files/components/slidable_my_file_item.dart'; -import 'package:open_document/my_files/model/style_my_file.dart'; import 'package:open_document/open_document.dart'; -import 'package:share/share.dart'; +import 'package:share_plus/share_plus.dart'; + import 'init.dart'; class MyFilesScreen extends StatefulWidget { @@ -146,8 +147,6 @@ class _MyFilesScreenState extends State return widgets; } - - Future> getDocumentPath() async { var files = []; var completer = new Completer>(); @@ -156,7 +155,7 @@ class _MyFilesScreenState extends State if (widget.filePath != nameApp) { path = widget.filePath; } else { - path = await OpenDocument.getPathDocument(folderName: widget.filePath); + path = await OpenDocument.getPathDocument(folderName: widget.filePath); } Directory dir = new Directory(path); @@ -196,7 +195,6 @@ class _MyFilesScreenState extends State ); } - updateFilesList() { setState(() { lastPaths.removeLast(); @@ -226,5 +224,4 @@ class _MyFilesScreenState extends State }); Share.shareFiles(selectedFiles); } - } diff --git a/lib/open_document.dart b/lib/open_document.dart index 9963ce2..fe802ec 100644 --- a/lib/open_document.dart +++ b/lib/open_document.dart @@ -1,10 +1,8 @@ import 'dart:async'; import 'dart:io'; -import 'package:flutter/cupertino.dart'; import 'package:flutter/services.dart'; import 'package:open_document/windows_fun.dart'; -import 'package:path_provider_windows/path_provider_windows.dart'; class OpenDocument { static const MethodChannel _channel = const MethodChannel('open_document'); @@ -12,7 +10,7 @@ class OpenDocument { static Future openDocument({required String filePath}) async { try { if (Platform.isWindows) return await openDocumentWindows(path: filePath); - return await _channel.invokeMethod('openDocument', filePath); + return await _channel.invokeMethod('openDocument', filePath); } on PlatformException catch (e) { throw OpenDocumentException(e.stacktrace.toString()); } @@ -56,8 +54,6 @@ class OpenDocument { } } - - class OpenDocumentException implements Exception { final String errorMessage; diff --git a/pubspec.lock b/pubspec.lock index cf795a9..84d99f0 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -14,7 +14,7 @@ packages: name: async url: "https://pub.dartlang.org" source: hosted - version: "2.5.0" + version: "2.8.2" boolean_selector: dependency: transitive description: @@ -28,14 +28,14 @@ packages: name: characters url: "https://pub.dartlang.org" source: hosted - version: "1.1.0" + version: "1.2.0" charcode: dependency: transitive description: name: charcode url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "1.3.1" clock: dependency: transitive description: @@ -49,7 +49,7 @@ packages: name: collection url: "https://pub.dartlang.org" source: hosted - version: "1.15.0" + version: "1.16.0" crypto: dependency: transitive description: @@ -63,7 +63,7 @@ packages: name: fake_async url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "1.3.0" ffi: dependency: transitive description: @@ -71,6 +71,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.0" + file: + dependency: transitive + description: + name: file + url: "https://pub.dartlang.org" + source: hosted + version: "6.1.4" flutter: dependency: "direct main" description: flutter @@ -82,12 +89,17 @@ packages: name: flutter_slidable url: "https://pub.dartlang.org" source: hosted - version: "0.6.0-nullsafety.0" + version: "2.0.0" flutter_test: dependency: "direct dev" description: flutter source: sdk version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" intl: dependency: "direct main" description: @@ -95,34 +107,48 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.17.0" + js: + dependency: transitive + description: + name: js + url: "https://pub.dartlang.org" + source: hosted + version: "0.6.4" matcher: dependency: transitive description: name: matcher url: "https://pub.dartlang.org" source: hosted - version: "0.12.10" + version: "0.12.11" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.4" meta: dependency: transitive description: name: meta url: "https://pub.dartlang.org" source: hosted - version: "1.3.0" + version: "1.7.0" mime: dependency: transitive description: name: mime url: "https://pub.dartlang.org" source: hosted - version: "1.0.0" + version: "1.0.2" path: dependency: transitive description: name: path url: "https://pub.dartlang.org" source: hosted - version: "1.8.0" + version: "1.8.1" path_provider_platform_interface: dependency: transitive description: @@ -151,13 +177,48 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.0.0" - share: + share_plus: dependency: "direct main" description: - name: share + name: share_plus url: "https://pub.dartlang.org" source: hosted - version: "2.0.1" + version: "4.1.0" + share_plus_linux: + dependency: transitive + description: + name: share_plus_linux + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.0" + share_plus_macos: + dependency: transitive + description: + name: share_plus_macos + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" + share_plus_platform_interface: + dependency: transitive + description: + name: share_plus_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.3" + share_plus_web: + dependency: transitive + description: + name: share_plus_web + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" + share_plus_windows: + dependency: transitive + description: + name: share_plus_windows + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" sky_engine: dependency: transitive description: flutter @@ -169,7 +230,7 @@ packages: name: source_span url: "https://pub.dartlang.org" source: hosted - version: "1.8.0" + version: "1.8.2" stack_trace: dependency: transitive description: @@ -204,7 +265,7 @@ packages: name: test_api url: "https://pub.dartlang.org" source: hosted - version: "0.2.19" + version: "0.4.9" typed_data: dependency: transitive description: @@ -212,13 +273,69 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.3.0" + url_launcher: + dependency: transitive + description: + name: url_launcher + url: "https://pub.dartlang.org" + source: hosted + version: "6.1.3" + url_launcher_android: + dependency: transitive + description: + name: url_launcher_android + url: "https://pub.dartlang.org" + source: hosted + version: "6.0.17" + url_launcher_ios: + dependency: transitive + description: + name: url_launcher_ios + url: "https://pub.dartlang.org" + source: hosted + version: "6.0.17" + url_launcher_linux: + dependency: transitive + description: + name: url_launcher_linux + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" + url_launcher_macos: + dependency: transitive + description: + name: url_launcher_macos + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" + url_launcher_platform_interface: + dependency: transitive + description: + name: url_launcher_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.4" + url_launcher_web: + dependency: transitive + description: + name: url_launcher_web + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.13" + url_launcher_windows: + dependency: transitive + description: + name: url_launcher_windows + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" vector_math: dependency: transitive description: name: vector_math url: "https://pub.dartlang.org" source: hosted - version: "2.1.0" + version: "2.1.2" win32: dependency: transitive description: @@ -227,5 +344,5 @@ packages: source: hosted version: "2.0.3" sdks: - dart: ">=2.12.0 <3.0.0" - flutter: ">=1.20.0" + dart: ">=2.17.0 <3.0.0" + flutter: ">=3.0.0" diff --git a/pubspec.yaml b/pubspec.yaml index 409abdc..50159f8 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -12,9 +12,9 @@ dependencies: flutter: sdk: flutter archive: ^3.1.2 - flutter_slidable: ^0.6.0-nullsafety.0 + flutter_slidable: ^2.0.0 path_provider_windows: ^2.0.0 - share: ^2.0.1 + share_plus: ^4.1.0 intl: ^0.17.0 dev_dependencies: diff --git a/test/open_document_test.dart b/test/open_document_test.dart index fce3b2b..c3fdd18 100644 --- a/test/open_document_test.dart +++ b/test/open_document_test.dart @@ -1,7 +1,3 @@ -import 'package:flutter/services.dart'; -import 'package:flutter_test/flutter_test.dart'; -import 'package:open_document/open_document.dart'; - void main() { // const MethodChannel channel = MethodChannel('open_document'); // From 61c4a98be7661dbb4f5d45b98402325697eefaa6 Mon Sep 17 00:00:00 2001 From: Riccardo Lomazzi Date: Fri, 21 Mar 2025 12:57:29 +0100 Subject: [PATCH 2/4] fix share plus dep --- pubspec.lock | 8 ++++---- pubspec.yaml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pubspec.lock b/pubspec.lock index 36aa60a..9127635 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -372,18 +372,18 @@ packages: dependency: "direct main" description: name: share_plus - sha256: "3ef39599b00059db0990ca2e30fca0a29d8b37aae924d60063f8e0184cf20900" + sha256: fce43200aa03ea87b91ce4c3ac79f0cecd52e2a7a56c7a4185023c271fbfa6da url: "https://pub.dev" source: hosted - version: "7.2.2" + version: "10.1.4" share_plus_platform_interface: dependency: transitive description: name: share_plus_platform_interface - sha256: "251eb156a8b5fa9ce033747d73535bf53911071f8d3b6f4f0b578505ce0d4496" + sha256: cc012a23fc2d479854e6c80150696c4a5f5bb62cb89af4de1c505cf78d0a5d0b url: "https://pub.dev" source: hosted - version: "3.4.0" + version: "5.0.2" sky_engine: dependency: transitive description: flutter diff --git a/pubspec.yaml b/pubspec.yaml index c8a077c..aaa0941 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -17,7 +17,7 @@ dependencies: sdk: flutter archive: ^4.0.4 flutter_slidable: ^4.0.0 - share_plus: ^7.0.2 + share_plus: ^10.1.4 intl: ^0.18.1 plugin_platform_interface: ^2.1.4 From dcc6918e41a4c24cde936816b9826e08a3eebd27 Mon Sep 17 00:00:00 2001 From: Riccardo Lomazzi Date: Fri, 21 Mar 2025 14:56:27 +0100 Subject: [PATCH 3/4] various fixes for android compilation --- .vscode/launch.json | 31 ++++++++ .../fsconceicao/open_document/OpenDocument.kt | 9 ++- example/android/.gitignore | 2 + example/android/app/build.gradle | 18 ++--- .../android/app/src/debug/AndroidManifest.xml | 3 +- .../android/app/src/main/AndroidManifest.xml | 74 ++++++------------- .../com/example/example/MainActivity.kt | 6 -- .../app/src/profile/AndroidManifest.xml | 3 +- example/android/build.gradle | 25 +++---- example/android/gradle.properties | 4 +- example/android/settings.gradle | 33 ++++++--- example/pubspec.lock | 8 +- 12 files changed, 113 insertions(+), 103 deletions(-) create mode 100644 .vscode/launch.json delete mode 100644 example/android/app/src/main/kotlin/com/example/example/MainActivity.kt diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..9aa0b92 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,31 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "name": "example", + "cwd": "example", + "request": "launch", + "type": "dart", + "args": ["-v"], + }, + { + "name": "example (profile mode)", + "cwd": "example", + "request": "launch", + "type": "dart", + "flutterMode": "profile", + "args": ["-v"], + }, + { + "name": "example (release mode)", + "cwd": "example", + "request": "launch", + "type": "dart", + "flutterMode": "release", + "args": ["-v"], + } + ] +} \ No newline at end of file diff --git a/android/src/main/kotlin/com/fsconceicao/open_document/OpenDocument.kt b/android/src/main/kotlin/com/fsconceicao/open_document/OpenDocument.kt index 41ceb56..4b7f71b 100644 --- a/android/src/main/kotlin/com/fsconceicao/open_document/OpenDocument.kt +++ b/android/src/main/kotlin/com/fsconceicao/open_document/OpenDocument.kt @@ -98,14 +98,17 @@ class OpenDocument(context: Context, activity: FlutterActivity?) { applicationContext.packageName, PackageManager.PackageInfoFlags.of(0) ) - return applicationContext.packageManager?.getApplicationLabel(app.applicationInfo) - .toString() + app.applicationInfo?.let { + applicationContext.packageManager?.getApplicationLabel(it).toString() + } ?: "UnknownApp" } else { val app = applicationContext.packageManager?.getApplicationInfo( applicationContext.packageName, 0 ) - return applicationContext.packageManager?.getApplicationLabel(app!!).toString() + app?.let { + applicationContext.packageManager.getApplicationLabel(it).toString() + } ?: "UnknownApp" } } catch (e: Exception) { e.printStackTrace() diff --git a/example/android/.gitignore b/example/android/.gitignore index bc2100d..53b1f8b 100644 --- a/example/android/.gitignore +++ b/example/android/.gitignore @@ -5,3 +5,5 @@ gradle-wrapper.jar /gradlew.bat /local.properties GeneratedPluginRegistrant.java +/app/.cxx +/.kotlin \ No newline at end of file diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle index ce7ff35..1ce769e 100644 --- a/example/android/app/build.gradle +++ b/example/android/app/build.gradle @@ -1,3 +1,9 @@ +plugins { + id "com.android.application" + id "kotlin-android" + id "dev.flutter.flutter-gradle-plugin" +} + def localProperties = new Properties() def localPropertiesFile = rootProject.file('local.properties') if (localPropertiesFile.exists()) { @@ -6,11 +12,6 @@ if (localPropertiesFile.exists()) { } } -def flutterRoot = localProperties.getProperty('flutter.sdk') -if (flutterRoot == null) { - throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") -} - def flutterVersionCode = localProperties.getProperty('flutter.versionCode') if (flutterVersionCode == null) { flutterVersionCode = '1' @@ -21,11 +22,10 @@ if (flutterVersionName == null) { flutterVersionName = '1.0' } -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' -apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" - android { + + namespace "com.example.open_document_example" + compileSdkVersion 35 sourceSets { diff --git a/example/android/app/src/debug/AndroidManifest.xml b/example/android/app/src/debug/AndroidManifest.xml index 15521af..f880684 100644 --- a/example/android/app/src/debug/AndroidManifest.xml +++ b/example/android/app/src/debug/AndroidManifest.xml @@ -1,5 +1,4 @@ - + diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml index 57a5aed..3ded50c 100644 --- a/example/android/app/src/main/AndroidManifest.xml +++ b/example/android/app/src/main/AndroidManifest.xml @@ -1,29 +1,36 @@ - + - - + + -<<<<<<< HEAD - - + + - - - + @@ -31,43 +38,11 @@ - - - - -======= - - - - - - - - - - - + - ->>>>>>> upstream/master diff --git a/example/android/app/src/main/kotlin/com/example/example/MainActivity.kt b/example/android/app/src/main/kotlin/com/example/example/MainActivity.kt deleted file mode 100644 index e793a00..0000000 --- a/example/android/app/src/main/kotlin/com/example/example/MainActivity.kt +++ /dev/null @@ -1,6 +0,0 @@ -package com.example.example - -import io.flutter.embedding.android.FlutterActivity - -class MainActivity: FlutterActivity() { -} diff --git a/example/android/app/src/profile/AndroidManifest.xml b/example/android/app/src/profile/AndroidManifest.xml index 15521af..f880684 100644 --- a/example/android/app/src/profile/AndroidManifest.xml +++ b/example/android/app/src/profile/AndroidManifest.xml @@ -1,5 +1,4 @@ - + diff --git a/example/android/build.gradle b/example/android/build.gradle index 977a71b..809bc15 100644 --- a/example/android/build.gradle +++ b/example/android/build.gradle @@ -1,28 +1,23 @@ -buildscript { - ext.kotlin_version = '1.7.10' - repositories { - google() - mavenCentral() - } - - dependencies { - classpath 'com.android.tools.build:gradle:7.2.2' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - } -} - allprojects { repositories { google() mavenCentral() + gradlePluginPortal() } } rootProject.buildDir = '../build' subprojects { + afterEvaluate { project -> + if (project.hasProperty('android')) { + project.android { + if (namespace == null) { + namespace project.group + } + } + } + } project.buildDir = "${rootProject.buildDir}/${project.name}" -} -subprojects { project.evaluationDependsOn(':app') } diff --git a/example/android/gradle.properties b/example/android/gradle.properties index 73ec9fe..123b0c4 100644 --- a/example/android/gradle.properties +++ b/example/android/gradle.properties @@ -2,6 +2,8 @@ org.gradle.jvmargs=-Xmx4608m android.enableR8=true android.useAndroidX=true android.enableJetifier=true +android.suppressUnsupportedCompileSdk=35 # Plugin Versions +flutterPluginLoaderVersion=1.0.0 androidToolsBuildGradleVersion=8.5.0 -kotlinVersion=2.0.20 \ No newline at end of file +jetbrainsKotlinAndroidVersion=2.0.20 diff --git a/example/android/settings.gradle b/example/android/settings.gradle index d3b6a40..8aa3153 100644 --- a/example/android/settings.gradle +++ b/example/android/settings.gradle @@ -1,15 +1,26 @@ -// Copyright 2014 The Flutter Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. +pluginManagement { + def properties = new Properties() + file("local.properties").withInputStream { properties.load(it) } -include ':app' + def flutterSdkPath = { + def flutterSdkPath = properties.getProperty("flutter.sdk") + assert flutterSdkPath != null, "flutter.sdk not set in local.properties" + return flutterSdkPath + }() -def localPropertiesFile = new File(rootProject.projectDir, "local.properties") -def properties = new Properties() + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") -assert localPropertiesFile.exists() -localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) } + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} -def flutterSdkPath = properties.getProperty("flutter.sdk") -assert flutterSdkPath != null, "flutter.sdk not set in local.properties" -apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle" +plugins { + id "dev.flutter.flutter-plugin-loader" version "${flutterPluginLoaderVersion}" + id "com.android.application" version "${androidToolsBuildGradleVersion}" apply false + id "org.jetbrains.kotlin.android" version "${jetbrainsKotlinAndroidVersion}" apply false +} + +include ":app" \ No newline at end of file diff --git a/example/pubspec.lock b/example/pubspec.lock index a84d012..3ab0e69 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -355,18 +355,18 @@ packages: dependency: transitive description: name: share_plus - sha256: "3ef39599b00059db0990ca2e30fca0a29d8b37aae924d60063f8e0184cf20900" + sha256: fce43200aa03ea87b91ce4c3ac79f0cecd52e2a7a56c7a4185023c271fbfa6da url: "https://pub.dev" source: hosted - version: "7.2.2" + version: "10.1.4" share_plus_platform_interface: dependency: transitive description: name: share_plus_platform_interface - sha256: "251eb156a8b5fa9ce033747d73535bf53911071f8d3b6f4f0b578505ce0d4496" + sha256: cc012a23fc2d479854e6c80150696c4a5f5bb62cb89af4de1c505cf78d0a5d0b url: "https://pub.dev" source: hosted - version: "3.4.0" + version: "5.0.2" sky_engine: dependency: transitive description: flutter From 8d6d7b4f6ec065f84ea972b5a54a9ba78aec4d4f Mon Sep 17 00:00:00 2001 From: Riccardo Lomazzi Date: Fri, 21 Mar 2025 15:01:17 +0100 Subject: [PATCH 4/4] changelog and version updated --- CHANGELOG.md | 2 ++ pubspec.yaml | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4b258c8..1253a02 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,5 @@ +## 1.0.8 +- updated packages and compatibility with Flutter 3.29 ## 1.0.7 - updating package versions * archive: ^3.3.7 diff --git a/pubspec.yaml b/pubspec.yaml index aaa0941..e36b1aa 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,7 +1,7 @@ name: open_document description: OpenDocument generate a local folder, for file and document storage, also can open pdf, xlsx, docs, ppt and zip files. You can also locate your files by implementing MyFilesScreen you can change folder styles and colors using StyleMyFile -version: 1.0.7 +version: 1.0.8 homepage: https://github.com/fabio21