Daimolean
ac44f6d1e0
feat(mobile): asset face sync ( #20022 )
...
* feat(mobile): asset face sync
* fix: lint
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-07-22 17:17:52 +00:00
Alex
aa344a3989
feat: delete actions ( #20034 )
...
* chore: show delete local
* pr feedback
* restore and perm delete action
2025-07-22 16:36:00 +00:00
Brandon Wees
2efca67217
feat(mobile): beta sync stats page ( #19950 )
...
* show beta sync stats
* show status next to jobs
* use drift devtools reset database impl
* dcm fixes
* fix: hash count
* styling
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-07-22 16:24:32 +00:00
Alex
737e768212
feat: drift partners ( #20051 )
...
* feat: drift toggle partner in timeline
* partners operation
* fix: lint
2025-07-21 16:58:53 -05:00
Alex
4d27f187ea
feat: new upload (cont) ( #20029 )
...
* new upload button
* wip
* pr feedback
* fix: updateAll override album selection value
* feat: status box
* feat: handle upload resume
* re-enable websocket event
* fix: update state condition and upload status
* Better backup detail page
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-07-21 15:30:51 -05:00
Mert
261818ddd9
refactor(mobile): download button in new timeline ( #20010 )
...
* download button
* minor improvements
2025-07-19 12:34:17 +03:00
Alex
fafb88d31c
feat(mobile): new upload ( #18726 )
2025-07-19 04:58:53 +00:00
Alex
5d244c6fec
chore: finish drift locked page ( #20013 )
...
* feat: overlay mechanism
* handle merged asset local id extraction
* locked view asset viewer actions
* pr feedback
2025-07-18 18:16:22 +00:00
Daimolean
7bae49ebd5
feat(mobile): people sync ( #19777 )
...
* feat(mobile): drift people sync
* merge main
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-07-18 14:21:39 +00:00
Alex
2e63b9d951
chore: add sync indicator and better album state management ( #20004 )
...
* album list rerendering
* sync indicator
* sync indicator
* fix: lint
2025-07-18 13:39:28 +00:00
shenlong
f32cd74232
feat: show stacks in asset viewer ( #19935 )
...
* feat: show stacks in asset viewer
* fix: global key issue and flash on stack asset change
* feat(mobile): stack and unstack action (#19941 )
* feat(mobile): stack and unstack action
* add custom model
* use stackId from ActionSource
* Update mobile/lib/providers/infrastructure/action.provider.dart
Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com>
---------
Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com>
* fix: lint
* fix: bad merge
* fix: test
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
Co-authored-by: Daimolean <92239625+wuzihao051119@users.noreply.github.com>
Co-authored-by: wuzihao051119 <wuzihao051119@outlook.com>
2025-07-18 04:31:04 +00:00
Alex
546f841b2c
chore: migration continue button ( #20000 )
...
* feat: add toggle to switch between Isar and Sqlite
* reset sqlite on beta
* start sync on app open in new timeline
* fix lint
* migrate hashes when new timeline is selected
* migrate hashes immediately after beta is enabled
* show loading indicator in change timeline page
* some stylings
* fix some styling issue
* release resources on isolate close
* replace route and styling
* handle migration back to old timeline
* check if a provider is mounted before calling dispose on it
* styling
* styling and button
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-07-17 15:58:55 -05:00
Daimolean
8491fe459d
feat(mobile): drift search page ( #19811 )
...
* feat(mobile): drift search page
* migrate to drift page
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-07-17 15:25:25 -05:00
Brandon Wees
03ff425664
chore(mobile): update casting to new asset viewer ( #19994 )
...
* update casting to new asset viewer
* handle websocket
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-07-17 17:08:32 +00:00
Mert
055b930066
refactor(mobile): share action button in new timeline ( #19967 )
...
* share asset button
* include source
* move to repository
* formatting
2025-07-17 11:41:30 -05:00
shenlong
531515daf9
feat: add toggle to switch between Isar and Sqlite ( #19953 )
2025-07-17 11:12:29 -05:00
Mert
649221176c
refactor(mobile): delete local button in new timeline ( #19961 )
...
* delete local action button
* include source
* move prompt
* batch
2025-07-16 16:25:41 -05:00
Alex
34620e1e9a
feat: album edit ( #19936 )
2025-07-15 20:37:44 -05:00
Daimolean
ba262fbaa8
feat(mobile): drift place page ( #19914 )
...
* feat(mobile): drift place page
* merge main
* feat(mobile): drift place detail page (#19915 )
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-07-15 15:10:12 +00:00
Alex
59e7754bdc
feat: websocket background sync ( #19888 )
...
* feat: websocket background sync
* batch websocket
* pr feedback
2025-07-15 09:38:28 -05:00
Daimolean
0acbf1199a
feat(mobile): drift user metadata sync ( #19894 )
...
* feat(mobile): drift user metadata sync
* change text to jsonb
* update primary key
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-07-15 09:17:35 -05:00
Alex
2b07d7ac63
feat: remove from album action button ( #19884 )
...
* feat: remove from album action
* feat: remove from album action
2025-07-11 10:06:53 -05:00
Alex
68db17028b
feat: new create album page ( #19731 )
...
* feat: new create album page
* finished create album flow
* refactor into stateful widgets
* refactor
* focus fix
* lint
* default sort
* pr feedback
2025-07-10 11:59:15 -05:00
Alex
feff1899ee
feat: expanded sliver app bar ( #19827 )
...
* use mutex
* feat: cool app bar
* animation
* adapt to more pages
* animation
* better animation
* fix: asset count
* Revert "fix: asset count"
This reverts commit 673a5b264be0ae851aa63a28ecc316c27cfc412b.
* fix: asset count
* fix: shaky animation on Android
* tunning
* offset SizedBox to fix scroll jump on multiselect
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-07-10 10:13:46 -05:00
Daimolean
a556de67b0
feat(mobile): drift local albums page ( #19817 )
...
* feat(mobile): drift local albums page
* fix: lint
* refactor: use AsyncValue
* fix: lint
* local album thumbnail
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-07-08 15:37:57 +00:00
Alex
87dd09d103
feat: selection mode timeline ( #19734 )
...
* feat: new page
* force multi-selection state
* fix: provider scoping
* Return selected assets
* lint
* lint
* simplify provider scope and drop drilling
* selection styling
2025-07-08 10:11:37 +05:30
Daimolean
cc471806fe
feat(mobile): stack sync ( #19735 )
...
* feat(mobile): stack sync
* fix: lint
* Update mobile/lib/infrastructure/repositories/sync_api.repository.dart
Co-authored-by: Alex <alex.tran1502@gmail.com>
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-07-06 22:01:09 -05:00
shenlong
73733370a2
feat: adds bottom sheet map and actions ( #19726 )
...
* 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
* adds bottom sheet map and actions
* PR feedbacks
* refactor: use provider for viewer state
* feat: adds top and bottom app bar
* add safe area to bottom app bar
* change app and bottom bar color
* viewer - always have black background
* use the full width for the bottom sheet on landscape as well
* constraint the bottom sheet to not expand all the way
* add padding for location details in landscape
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-07-04 14:08:06 -05:00
Alex
4a2cf28882
feat: memories in new timeline ( #19720 )
...
* feat: memories sliver
* memories lane
* display and show memory
* fix: get correct memories
* naming
* pr feedback
* use equalsValue for visibility
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-07-04 13:49:15 -05:00
shenlong
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
Alex
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
shenlong
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
Daimolean
a644cabab6
feat(mobile): trash and delete action ( #19681 )
...
* feat(mobile): trash and delete action
* fix lint
2025-07-02 12:26:07 -05:00
shenlong
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
Daimolean
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
shenlong
15be3437bf
fix: timeline service uninitialised across routes ( #19544 )
2025-07-01 10:23:20 -05:00
Daimolean
f59b0bab5a
refactor(mobile): action provider ( #19669 )
...
* refactor action provider
* fix lint
2025-07-01 10:18:23 -05:00
Alex
fa418d778b
feat: lock folder action ( #19634 )
...
* feat: lock folder action
* refactor
2025-07-01 14:03:45 +00:00
shenlong
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
Alex
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
Daimolean
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
Alex
4c3fcdc745
feat: favorite action ( #19623 )
2025-06-30 12:21:09 -05:00
Alex
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
shenlong
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
shenlong
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
shenlong
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
shenlong
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
Alex
05064f87f0
feat: sliver appbar and snap scrubbing ( #19446 )
2025-06-24 20:02:46 -05:00
Brandon Wees
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
Alex
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