openFile method
- BuildContext context,
- FilePickerConfig config,
- FileWrapper file
Opens the provided file.
Opens links in an InAppWebView, otherwise opens the file using the native viewer.
Implementation
Future<void> openFile(BuildContext context, FilePickerConfig config, FileWrapper file) async {
if (file.content != null && file.content is XFile) {
final XFile fileToOpen = file.content as XFile;
if (file.isImage()) {
// Edit the file
final ZdsFileEditPostProcessor editPostProcessor = ZdsFileEditPostProcessor(() => context);
final FileWrapper editedFile = await editPostProcessor.process(config, file);
if (editedFile.content != file.content) {
const ZdsFileCompressPostProcessor compressPostProcessor = ZdsFileCompressPostProcessor();
final FileWrapper compressedFile = await compressPostProcessor.process(config, editedFile);
final int index = removeFile(file);
items.insert(index, compressedFile);
notifyListeners();
}
} else {
await OpenFilex.open(fileToOpen.path);
}
}
}