immich/mobile/lib/providers
Toni b71039e83c
perf(mobile): remove small thumbnail and cache generated thumbnails (#17682)
* Remove small thumbnail and cache generated thumbnails

* Creating the small thumbnails takes quite some time, which should not be underestimated.
* The time needed to generate the small or big thumbnail is not too different from each other. Therefore there is no real benefit of the small thumbnail and it only adds frustration to the end user experience. That is because the image appeared to have loaded (the visual move from blur to something better) but it's still so bad that it is basically a blur. The better solution is therefore to stay at the blur until the actual thumbnail has loaded.
* Additionaly to the faster generation of the thumbnail, it now also gets cached similarly to the remote thumbnail which already gets cached. This further speeds up the all over usage of the app and prevents a repeatet thumbnail generation when opening the app.

* Decrease quality and use try catch

* Decreased the quality from the default 95 to 80 to provide similar quality with much reduces thumbnail size.
* Use try catch around the read of the cache file.

* Replace ImmutableBuffer.fromUint8List with ImmutableBuffer.fromFilePath

* Removed unnecessary comment

* Replace debugPrint with log.severe for catch of error

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-04-21 12:51:37 -05:00
..
album feat(mobile): use Weblate for i18n (2) (#17620) 2025-04-15 15:54:26 +00:00
asset_viewer chore(mobile): generated files and ci check (#16798) 2025-03-11 12:22:31 +00:00
backup feat(mobile): use Weblate for i18n (2) (#17620) 2025-04-15 15:54:26 +00:00
image perf(mobile): remove small thumbnail and cache generated thumbnails (#17682) 2025-04-21 12:51:37 -05:00
infrastructure feat: user sync stream (#16862) 2025-04-17 10:25:27 -05:00
map chore(mobile): generated files and ci check (#16798) 2025-03-11 12:22:31 +00:00
search chore(mobile): generated files and ci check (#16798) 2025-03-11 12:22:31 +00:00
activity.provider.dart chore: flutter 3.29.1 (#16730) 2025-03-10 21:46:36 -05:00
activity.provider.g.dart chore(mobile): upgrade riverpod (#16742) 2025-03-09 20:30:58 -05:00
activity_service.provider.dart chore(mobile): upgrade riverpod (#16742) 2025-03-09 20:30:58 -05:00
activity_service.provider.g.dart chore(mobile): generated files and ci check (#16798) 2025-03-11 12:22:31 +00:00
activity_statistics.provider.dart chore: flutter 3.29.1 (#16730) 2025-03-10 21:46:36 -05:00
activity_statistics.provider.g.dart chore(mobile): upgrade riverpod (#16742) 2025-03-09 20:30:58 -05:00
api.provider.dart chore(mobile): upgrade riverpod (#16742) 2025-03-09 20:30:58 -05:00
api.provider.g.dart chore(mobile): generated files and ci check (#16798) 2025-03-11 12:22:31 +00:00
app_life_cycle.provider.dart fix(mobile): show new local assets in offline mode (#16817) 2025-03-24 16:56:18 +00:00
app_settings.provider.dart chore(mobile): upgrade riverpod (#16742) 2025-03-09 20:30:58 -05:00
app_settings.provider.g.dart chore(mobile): generated files and ci check (#16798) 2025-03-11 12:22:31 +00:00
asset.provider.dart fix(mobile): show new local assets in offline mode (#16817) 2025-03-24 16:56:18 +00:00
auth.provider.dart refactor(mobile): remove int user id (#16814) 2025-03-18 11:05:37 -05:00
background_sync.provider.dart feat: user sync stream (#16862) 2025-04-17 10:25:27 -05:00
db.provider.dart refactor(mobile): services and providers (#9232) 2024-05-02 15:59:14 -05:00
folder.provider.dart feat(mobile): Folder View for mobile (#15047) 2025-03-06 17:27:43 +00:00
gallery_permission.provider.dart fix(mobile): fix typos (#16456) 2025-03-01 20:06:47 +00:00
haptic_feedback.provider.dart refactor(mobile): services and providers (#9232) 2024-05-02 15:59:14 -05:00
immich_logo_provider.dart chore(mobile): upgrade riverpod (#16742) 2025-03-09 20:30:58 -05:00
immich_logo_provider.g.dart chore(mobile): generated files and ci check (#16798) 2025-03-11 12:22:31 +00:00
locale_provider.dart feat(mobile): exclude locales from overpass font (#14158) 2024-11-19 09:36:46 -06:00
memory.provider.dart refactor(mobile): services and providers (#9232) 2024-05-02 15:59:14 -05:00
multiselect.provider.dart refactor(mobile): services and providers (#9232) 2024-05-02 15:59:14 -05:00
network.provider.dart feat(mobile): Auto switching server URLs (#14437) 2024-12-05 09:11:48 -06:00
notification_permission.provider.dart refactor(mobile): services and providers (#9232) 2024-05-02 15:59:14 -05:00
oauth.provider.dart refactor(mobile): services and providers (#9232) 2024-05-02 15:59:14 -05:00
partner.provider.dart refactor: user entity (#16655) 2025-03-12 08:56:56 -05:00
server_info.provider.dart feat(mobile): Auto switching server URLs (#14437) 2024-12-05 09:11:48 -06:00
shared_link.provider.dart refactor(mobile): services and providers (#9232) 2024-05-02 15:59:14 -05:00
tab.provider.dart feat(mobile): new mobile UI (#12582) 2024-10-10 15:44:14 +07:00
theme.provider.dart refactor(mobile): refactor theme management (#14415) 2024-12-11 16:30:56 +00:00
timeline.provider.dart refactor(mobile): remove int user id (#16814) 2025-03-18 11:05:37 -05:00
trash.provider.dart refactor(mobile): render list (#16239) 2025-02-21 09:01:46 -06:00
upload_profile_image.provider.dart refactor(mobile): move user service to domain (#16782) 2025-03-13 22:20:26 -05:00
user.provider.dart fix(mobile): prevent unnecessary reload on multi user timeline (#17418) 2025-04-06 22:04:13 -05:00
websocket.provider.dart feat: opt-in sync of deletes and restores from web to Android (#16732) 2025-04-08 08:50:40 -05:00