181efb9010
refactor: reduce timeline rebuilds ( #19704 )
...
* reduce timeline rebuilds
* feat: adds bottom sheet map and actions (#19692 )
* adds bottom sheet map and actions
* PR feedbacks
* only reload the asset viewer if asset is changed
* styling tweak
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
Co-authored-by: Alex <alex.tran1502@gmail.com >
* rename singleton and remove event prefix
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
Co-authored-by: Alex <alex.tran1502@gmail.com >
2025-07-04 10:30:34 -05:00
445f9174ea
feat: memories sync ( #19644 )
...
* feat: memories sync
* Update mobile/lib/infrastructure/repositories/sync_stream.repository.dart
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update mobile/lib/infrastructure/repositories/sync_stream.repository.dart
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* show sync information
* tests and pr feedback
* pr feedback
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-02 19:18:37 +00:00
7855974a29
feat(mobile): sqlite asset viewer ( #19552 )
...
* add full image provider and refactor thumb providers
* photo_view updates
* wip: asset-viewer
* fix controller dispose on page change
* wip: bottom sheet
* fix interactions
* more bottomsheet changes
* generate schema
* PR feedback
* refactor asset viewer
* never rotate and fix background on page change
* use photoview as the loading builder
* precache after delay
* claude: optimizing rebuild of image provider
* claude: optimizing image decoding and caching
* use proper cache for new full size image providers
* chore: load local HEIC fullsize for iOS
* make controller callbacks nullable
* remove imageprovider cache
* do not handle drag gestures when zoomed
* use loadOriginal setting for HEIC / larger images
* preload assets outside timer
* never use same controllers in photo-view gallery
* fix: cannot scroll down once swipe with bottom sheet
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
Co-authored-by: Alex <alex.tran1502@gmail.com >
2025-07-02 18:24:37 +00:00
ec603a008c
feat(mobile): unarchive and unfavorite action ( #19678 )
2025-07-02 12:27:30 -05:00
14276f41d8
fix: handle null bucket name during android sync ( #19685 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2025-07-02 12:26:42 -05:00
a644cabab6
feat(mobile): trash and delete action ( #19681 )
...
* feat(mobile): trash and delete action
* fix lint
2025-07-02 12:26:07 -05:00
b8e67d0ef9
fix(mobile): filter deleted assets ( #19683 )
2025-07-02 12:25:14 -05:00
f2f3db3a79
refactor: action provider ( #19677 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2025-07-01 23:08:52 -05:00
25efba8fe6
chore: remove share link success prompt ( #19671 )
2025-07-01 16:55:17 +00:00
83afd49f5c
feat(mobile): edit location action ( #19645 )
...
* change dto from integer to double
* feat(mobile): edit location action
* patch openapi
* refactor in provider
* fix lint
* chore: not showing success prompt if dimissed
* i18n
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2025-07-01 16:52:11 +00:00
15be3437bf
fix: timeline service uninitialised across routes ( #19544 )
2025-07-01 10:23:20 -05:00
f59b0bab5a
refactor(mobile): action provider ( #19669 )
...
* refactor action provider
* fix lint
2025-07-01 10:18:23 -05:00
fa418d778b
feat: lock folder action ( #19634 )
...
* feat: lock folder action
* refactor
2025-07-01 14:03:45 +00:00
a5c431fbf5
refactor: animate bottom sheet ( #19655 )
...
* refactor: animate bottom sheet
* rebase on main
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2025-06-30 22:23:38 -05:00
21f500191a
refactor: actions provider ( #19651 )
...
* refactor: actions provider
* chore: rename error and stack
* remove empty checks
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2025-07-01 08:10:25 +05:30
5011636d95
refactor: header - bulk select icon ( #19652 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2025-06-30 21:33:37 -05:00
3f330c6476
feat: drift album page ( #19564 )
...
* feat: drift album page
* feat: page renderred
* feat: asset count
* refactor: use statefulwidget
* refactor: private widgets
* refactor: service layer
* refactor: import
* feat: get owner name
* pr feedback
* pr feedback
* pr feedback
* pr feedback
2025-07-01 07:54:50 +05:30
bb8755021d
revert: timeout ( #19639 )
2025-06-30 17:02:50 -05:00
58ca1402ed
feat: sync partner stacks ( #19635 )
2025-06-30 16:41:06 -04:00
32a7087883
feat(mobile): archive action ( #19630 )
...
* feat(mobile): archive action
* fix: lint
* Update i18n/en.json
Co-authored-by: Alex <alex.tran1502@gmail.com >
* fix: lint
* fix: lint
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2025-06-30 14:38:15 -05:00
181a7e115f
feat: sync stacks ( #19629 )
2025-06-30 14:26:41 -05:00
095ace8687
feat: shared link action ( #19610 )
2025-06-30 17:32:18 +00:00
4c3fcdc745
feat: favorite action ( #19623 )
2025-06-30 12:21:09 -05:00
fa5f30d9ca
fix: timeline service mismatch state ( #19612 )
2025-06-30 12:20:13 -05:00
6feca56da8
feat: sync memories ( #19579 )
2025-06-27 12:20:13 -04:00
97aabe466e
feat: action buttons place holder ( #19561 )
...
* feat: action buttons place holder
* lint
* Update base_action_button.widget.dart
Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com >
---------
Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com >
2025-06-27 13:33:46 +00:00
72a53f43c8
feat: use sqlite timeline user provider ( #19577 )
...
use sqlite timeline user provider
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2025-06-27 08:29:27 -05:00
a43159f4ba
fix(mobile): skip widget updates if on android ( #19553 )
...
* fix: skip widget updates if on android
* remove dead line
2025-06-26 10:07:22 -05:00
ea3a14ed25
feat(mobile): add album asset sync ( #19522 )
...
* feat(mobile): add album asset sync
* add SyncAlbumToAssetDeleteV1 to openapi-spec
* update delete queries to use where in statements
* clear remote album when clear remote data
* fix: bad merge
* fix: bad merge
* fix: _SyncAckV1 return type
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
Co-authored-by: wuzihao051119 <wuzihao051119@outlook.com >
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2025-06-26 08:50:39 -05:00
24a4cba953
fix: enable photo manager custom filter by default ( #19520 )
...
enable photo manager custom filter by default
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2025-06-25 21:28:17 -05:00
65dce58aa4
refactor(mobile): do not skip iCloud albums during local sync ( #19231 )
...
do not skip cloud albums during local sync
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
Co-authored-by: Alex <alex.tran1502@gmail.com >
2025-06-25 16:46:31 +00:00
64cc7239fe
feat(mobile): ios widget deeplink to asset in app ( #19510 )
...
* feat: ios widget deeplinks to asset in app
* fix: casing
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2025-06-25 11:37:25 -05:00
881a96cdf9
feat: add album asset sync ( #19503 )
...
wip: fix album asset exif and some other refactorings
feat: add album assets sync
feat: album to assets relation sync
Co-authored-by: Zack Pollard <zackpollard@ymail.com >
2025-06-25 16:10:31 +00:00
b001ba44f5
feat: generic control bottom app bar ( #19524 )
...
* feat: sliver appbar
* feat: snapping segment
* Date label font size
* lint
* fix: scrollController reinitialize multiple times
* feat: tab navigation
* chore: refactor to private widget
* feat: new control bottom app bar
* bad merge
* feat: sliver control bottom app bar
2025-06-25 16:08:02 +00:00
027c4a8b34
ci: much faster mobile builds ( #19490 )
2025-06-25 10:40:53 -05:00
eca9b56847
feat(server): person delete ( #19511 )
...
feat(api): person delete
2025-06-25 11:12:36 -04:00
5b0575b956
refactor: DCM - const border radius, constructor & switch expressions ( #19515 )
...
* enable border radius, switch exp, const constructor
* regenerate provider
* more formatting
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2025-06-25 13:06:24 +05:30
05064f87f0
feat: sliver appbar and snap scrubbing ( #19446 )
2025-06-24 20:02:46 -05:00
522cdbac99
feat: sliver timeline selection optimization ( #19504 )
2025-06-24 19:34:30 -05:00
3751f8bc57
fix: android app link support ( #19501 )
...
* fix: android app link support
* add autoVerify tag
* adjust intent to have scheme separate
2025-06-24 12:52:15 -05:00
2e13543d5d
fix: ios widget webp support ( #19469 )
2025-06-24 10:33:38 -05:00
7d0e8f50f7
feat(mobile): deep links ( #19232 )
...
* add deep linking on ios app
* add deeplinking to android
* code review fixes
* lint
* cleanly handle malformed URIs when launching app
* refactor deep link builder/service, still have bug with navigation stack not containing TabControllerRoute
* fix: tab controller insertion conditions
* add my.immich.app app linking
* chore: remove one-liner if statement
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2025-06-24 09:20:24 -05:00
9ca31abae9
feat: new timeline multi-selection ( #19443 )
...
* feat: new timeline multiselection
* select all from bucket
* wip
* group multi-select
* group multi-select
* pr feedback
* pr feedback
* lint
2025-06-24 02:05:25 -05:00
1923f1a887
refactor(mobile): interfaces refactor ( #19415 )
...
* refactor(mobile): interfaces refactor
* generate files
2025-06-23 11:27:44 -05:00
20d9204ada
feat(mobile): enable Croatian (hr) translations ( #19428 )
2025-06-23 12:18:04 +01:00
ce8c80dad0
refactor(mobile): cast_destination.interface.dart ( #19346 )
2025-06-21 21:56:49 -05:00
81eb98d4e5
refactor(mobile): album.interface.dart ( #19354 )
2025-06-21 23:32:06 +00:00
2b03802e9c
refactor(mobile): asset_api.interface.dart ( #19353 )
2025-06-21 23:06:38 +00:00
484311e9bb
refactor(mobile): asset-media.interface.dart ( #19352 )
...
* refactor(mobile): asset-media.interface.dart
* refactor(mobile): asset-media.interface.dart
* refactor: asset media repo
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2025-06-21 22:47:16 +00:00
366539bc4c
refactor(mobile): asset.interface.dart ( #19351 )
...
* refactor(mobile): asset.interface.dart
* refactor(mobile): asset.interface.dart
2025-06-21 22:41:02 +00:00