shenlong
cb1af3a8ec
feat: favorite bottom sheet action ( #29320 )
...
* chore: cleanup partner action test
* feat: favorite bottom sheet action
* review suggestions
* implicit favorite handling
* feat: viewer favorite icon to action (#29321 )
* feat: viewer favorite icon to action
* feat: advance info action
* implicit favorite handling
* feat: viewer favorite icon to action
# Conflicts:
# mobile/lib/presentation/widgets/asset_viewer/viewer_top_app_bar.widget.dart
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
* chore: timeline action test (#29324 )
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
* clear selection only on success
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-25 16:55:06 -04:00
Yaros
4099fa6b4a
fix(mobile): app doesn't exit full-screen mode ( #29301 )
...
* fix(mobile): app doesn't exit full-screen mode
* chore: rename restoreSystemUI to restoreEdgeToEdge
2026-06-24 20:48:01 -05:00
Santo Shakil
e5b50a55a4
fix(mobile): blank notifications page after enabling notifications ( #29232 )
...
the old notification toggles were removed in a cleanup, so once notifications were enabled the page had nothing left and went blank. show a "notifications enabled" status tile with a shortcut to the system notification settings instead.
2026-06-24 09:15:28 -05:00
shenlong
9d6c219276
fix: current viewer asset reactivity ( #29282 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-23 18:40:24 +00:00
shenlong
f29f86542c
feat: partner actions ( #29281 )
...
* feat: partner actions
# Conflicts:
# i18n/en.json
* cleanup
* fix tests
* ci fix
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-23 23:50:59 +05:30
okxint
5165cf1d2f
fix(mobile): force AssetViewerPage recreation on repeated view intents ( #29235 )
...
* fix(mobile): force AssetViewerPage recreation on repeated view intents
When View in Immich is triggered a second time while the viewer is
already open, auto_route's replaceAll reuses the existing route (same
type, null key) and Flutter keeps the old ConsumerState alive. The
PageController and preloader inside _AssetViewerState are late final,
so they never reset — the viewer stays frozen on the previous asset.
Passing UniqueKey() to AssetViewerRoute ensures each view intent
creates a fresh widget element, so initState runs, the PageController
is initialised from scratch, and the new TimelineService from the
updated ProviderScope override is picked up correctly.
Fixes #29230
* clean up
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2026-06-23 17:43:56 +00:00
shenlong
f4c8459484
feat: mobile actions ( #29280 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-23 16:50:57 +00:00
Daniel Dietzler
c3092b1c2c
chore: basque was missing on mobile ( #29284 )
2026-06-23 08:57:05 -04:00
shenlong
30a73c1105
feat: mobile-ui snackbar ( #29260 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-22 16:22:26 -04:00
Brandon Wees
a5198e23a8
refactor: use SemVer classes for version compatability message ( #29056 )
...
* refactor: use SemVer classes for version compatability message
* chore: readd major version compatabilty messages
* fix: remove 1.106.0 check
(we dont support v1 servers anymore)
2026-06-22 11:28:56 -04:00
Santo Shakil
9a5e7a8e47
fix(mobile): endless spinner on album selection when device has no albums ( #28994 )
...
* fix(mobile): endless spinner on album selection when device has no albums
* use a page scoped future provider for the loading state
* refactor(mobile): decide album selection empty state in the parent
2026-06-18 21:38:15 +05:30
Santo Shakil
c35abb2f66
fix(mobile): re-lock locked folder when the app is backgrounded ( #29089 )
...
* fix(mobile): re-lock locked folder when the app is backgrounded
* fix(mobile): simplify locked folder overlay condition
* fix(mobile): lock locked folder on pause instead of resume
2026-06-18 21:10:18 +05:30
Santo Shakil
793487e52c
fix(mobile): refresh memories on resume and day change ( #28983 )
...
* fix(mobile): refresh memories on resume and day change
* fix(mobile): invalidate memories once after the resume sync
2026-06-18 20:46:20 +05:30
Ebin Santhosh
769c4015d3
fix(mobile): prevent duplicate login pages for unauthenticated share intent warm start ( #29054 )
2026-06-18 20:45:35 +05:30
Santo Shakil
cda499f2b5
fix(mobile): keep toasts off the dynamic island when keyboard is open ( #29159 )
2026-06-16 18:51:29 +00:00
Santo Shakil
12b7cd066b
fix(mobile): show memories with no showAt/hideAt in the timeline lane ( #29158 )
2026-06-16 18:46:52 +00:00
shenlong
83b4dc1733
fix: scrolling state update after unmounted ( #29149 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-16 13:14:09 -05:00
shenlong
0f49bcbd27
chore: do not optimize on cleanup ( #29118 )
2026-06-16 12:42:12 -04:00
Santo Shakil
9ee412110f
fix(mobile): stop sync albums crashing on the main isolate ( #29133 )
...
the album sync provider read cancellationProvider, which only exists in the background isolate and throws on the main one. moved the cancel signal onto the isolate call path.
fixes #29125
fixes #29119
2026-06-16 09:14:33 -05:00
Brandon Wees
010220d588
fix: video thumbnail quality sharing ( #29104 )
2026-06-16 09:13:31 -05:00
shenlong
10fddf2d51
fix: resize map after scroll ( #29112 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-16 09:13:28 -05:00
Mees Frensel
1fa034125c
fix(web): language selector ( #29065 )
2026-06-16 15:49:47 +02:00
Alex
622a330d82
chore: slideshow transition improvement ( #29079 )
...
* chore: better slideshow transition
* chore: tune
* simplify setup
* better default
* fix: correctly zoom alternatively
* lint
2026-06-15 10:10:05 -05:00
Daniel Dietzler
c273ccf2e2
feat: languages ( #29088 )
2026-06-15 16:01:09 +02:00
Santo Shakil
abd62d9295
fix(mobile): show like and comment options on album photo deep links ( #29020 )
2026-06-12 14:55:26 -05:00
shenlong
296cd40da9
refactor: nullable settings key ( #28988 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-11 18:05:50 -05:00
Alex
a17276fd1e
chore: remove incompatibility message warning ( #28993 )
...
* chore: remove incompatibility message warning
* lint
2026-06-11 18:05:19 -05:00
Santo Shakil
e2954b6411
fix(mobile): show albums whose assets are all trashed ( #28985 )
2026-06-11 09:41:02 -05:00
Santo Shakil
d227ba2d51
fix(mobile): stale details after editing asset date ( #28977 )
2026-06-10 21:32:02 -05:00
Santo Shakil
9cb94343d1
fix(mobile): keep timezone when editing asset date time ( #28978 )
...
* fix(mobile): keep timezone when editing asset date time
* fix(mobile): negative utc offsets with minutes off by an hour
2026-06-10 21:31:31 -05:00
Santo Shakil
07813135b5
fix(mobile): deduplicate people in asset details panel ( #28972 )
2026-06-10 14:37:45 +00:00
Alex
8132e8a38c
feat: image quality option in sharing ( #28918 )
...
* feat: share with quality options
* merge main
* clean up
* refactor
* translation
* translation
* add settings and default behavior
* fix: lint
* cleanup
* merge main
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-10 09:26:09 -05:00
Yaros
43f2f56530
fix(mobile): map timeline layout crash ( #28878 )
2026-06-10 14:02:36 +00:00
Pedro Vieira
a7b5f81701
fix: normalize diacritics in person name search in Web & Mobile ( #28887 )
2026-06-10 12:05:07 +02:00
shenlong
4bc411b7c7
revert: clear album description sends null instead of empty string ( #28956 )
...
Revert "fix(mobile): clear album description sends null instead of empty string (#28817 )"
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-09 22:05:37 -05:00
Santo Shakil
11c1025271
fix(mobile): add album picker to archive bottom sheet ( #28953 )
2026-06-09 14:45:32 -05:00
Alex
d3438cf4a7
chore: improve OCR button and display on mobile ( #28926 )
...
* chore: improve OCR button and display on mobile
* Refactor
* format
* simplify ocr toggle button
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-09 13:20:18 -05:00
Alex
6c5c6a1035
fix: realign badge icon ( #28951 )
2026-06-09 11:44:29 -05:00
Santo Shakil
c928787b3e
fix(mobile): show error when creating an album fails ( #28942 )
...
it failed silently when the server was down. also disable create for blank titles.
2026-06-09 16:41:32 +00:00
Santo Shakil
fe9ca4f40a
fix(mobile): show memory and folder dates in local time ( #28941 )
2026-06-09 10:55:43 -05:00
shenlong
e222b19576
fix: do not handle drag without enough scrub area ( #28921 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-08 16:47:08 -05:00
shenlong
3c108a8d22
fix: reload timeline on group by setting change ( #28864 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-05 19:08:39 +00:00
Yaros
346b98ed4f
feat(mobile): min face count per-user ( #28805 )
2026-06-05 13:16:07 -04:00
shenlong
60683bd91e
fix: cross isolate drift watchers ( #28862 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-05 12:15:41 -05:00
Daniel Dietzler
b6938614b2
feat: latest language requests ( #28858 )
2026-06-05 18:01:27 +02:00
shenlong
216d0ba365
fix: notify timeline updates after sync ( #28846 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-04 18:17:04 -05:00
Timon
28e42f7e29
refactor(mobile): use Optional only on API boundary ( #28845 )
2026-06-05 04:29:13 +05:30
Yaros
733373c0ca
feat(mobile): ocr support ( #26523 )
2026-06-05 04:29:03 +05:30
shenlong
58528cad08
refactor: replace drift_flutter with drift_sqlite_async ( #28440 )
...
replace drift_flutter with drift_sqlite_async
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-06-05 00:01:50 +05:30
Mees Frensel
99281de6ab
refactor!: disallow star rating < 1 ( #27896 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
Co-authored-by: timonrieger <mail@timonrieger.de >
2026-06-04 17:06:28 +00:00