immich/mobile/lib
Claude 2feee111fd
feat(mobile): choose JPEG preview or original quality when sharing
Add a mechanism to share either the server-generated JPEG preview or the
full original file. When the selection contains at least one asset that can
provide a preview (a remote image), a bottom sheet lets the user pick the
quality; otherwise sharing falls back to the original as before.

The share-source resolution is extracted into pure, unit-tested business
logic that handles all three asset states (local, remote, merged):
- preview requires a remote image; videos and local-only assets fall back
  to the original
- original prefers the on-device file, but edited assets are downloaded
  since edits only exist on the server
- preview filenames are normalized to a .jpg extension

Add unit tests covering the resolution, gating and filename helpers.
2026-05-30 18:39:01 +00:00
..
constants feat(mobile): improve downloading algorithm for sharing (#27312) 2026-05-27 17:00:49 +00:00
domain feat(mobile): choose JPEG preview or original quality when sharing 2026-05-30 18:39:01 +00:00
entities refactor: yeet old timeline (#27666) 2026-04-15 23:00:27 +05:30
extensions refactor: migrate network config (#28471) 2026-05-18 16:22:42 +00:00
infrastructure refactor: rename metadata to settings (#28691) 2026-05-30 10:27:55 -05:00
interfaces refactor(mobile): interfaces refactor (#19415) 2025-06-23 11:27:44 -05:00
mixins chore: flutter 3.29.1 (#16730) 2025-03-10 21:46:36 -05:00
models chore: add always_put_control_body_on_new_line lint (#28352) 2026-05-11 13:47:24 -04:00
pages refactor: rename metadata to settings (#28691) 2026-05-30 10:27:55 -05:00
platform feat(mobile): add manage media APIs to NativeSyncApi (#28441) 2026-05-22 17:40:11 +05:30
presentation feat(mobile): choose JPEG preview or original quality when sharing 2026-05-30 18:39:01 +00:00
providers feat(mobile): choose JPEG preview or original quality when sharing 2026-05-30 18:39:01 +00:00
repositories feat(mobile): choose JPEG preview or original quality when sharing 2026-05-30 18:39:01 +00:00
routing feat(mobile): slideshow view (#28421) 2026-05-15 18:12:04 -05:00
services feat(mobile): choose JPEG preview or original quality when sharing 2026-05-30 18:39:01 +00:00
theme fix(mobile): mismatch between system and app color when using low-chroma system color scheme (#27282) 2026-03-27 09:21:43 -05:00
utils feat(mobile): choose JPEG preview or original quality when sharing 2026-05-30 18:39:01 +00:00
widgets refactor: rename metadata to settings (#28691) 2026-05-30 10:27:55 -05:00
main.dart refactor: rename metadata to settings (#28691) 2026-05-30 10:27:55 -05:00
wm_executor.dart chore: add always_put_control_body_on_new_line lint (#28352) 2026-05-11 13:47:24 -04:00