From 3bda85d919fafc46944845450b0cc13772ba9b68 Mon Sep 17 00:00:00 2001 From: DatDang Date: Tue, 27 Feb 2024 10:05:51 +0700 Subject: [PATCH] TF-2628 Create open file in new browser tab function --- .../data/network/download/download_manager.dart | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/core/lib/data/network/download/download_manager.dart b/core/lib/data/network/download/download_manager.dart index c86eae4ad..b4b015514 100644 --- a/core/lib/data/network/download/download_manager.dart +++ b/core/lib/data/network/download/download_manager.dart @@ -104,6 +104,20 @@ class DownloadManager { } } + void openDownloadedFileWeb(Uint8List bytes, String? mimeType) { + try { + final blob = html.Blob([bytes], mimeType); + final url = html.Url.createObjectUrlFromBlob(blob); + + html.window.open(url, '_blank'); + + html.Url.revokeObjectUrl(url); + } catch (exception) { + logError('DownloadManager::openDownloadedFileWeb(): ERROR: $exception'); + rethrow; + } + } + MediaType? _extractMediaTypeFromResponse(ResponseBody responseBody) { try { final contentType = responseBody.headers[Headers.contentTypeHeader];