[PR #4505] [MERGED] feat(mobile): separate delete buttons #10407

Closed
opened 2026-02-05 14:21:22 +03:00 by OVERLORD · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/immich-app/immich/pull/4505
Author: @shenlong-tanwen
Created: 10/17/2023
Status: Merged
Merged: 1/17/2024
Merged by: @alextran1502

Base: mainHead: feat/mobile-delete-local-only


📝 Commits (10+)

  • ddc457e feat(mobile): delete assets from device only
  • b885f72 mobile: add backed up only toggle for delete device only
  • e8a8e19 remove toggle inside alert and show different content
  • 3bd0579 mobile: change content color for local only
  • 3ec708e mobile: delete local only button to dialog
  • baf5ae4 style: display bottom action in two lines
  • 8a6f0f2 feat: separate delete buttons
  • e6962b1 fix: incorrect error message for ownedRemoteSelection
  • 6ced397 fix: handle remoteOnly from delete everywhere
  • 75fbae3 request confirmation for local only only when non-backed assets are in selection

📊 Changes

7 files changed (+327 additions, -53 deletions)

View changed files

📝 mobile/assets/i18n/en-US.json (+10 -1)
📝 mobile/lib/modules/home/ui/control_bottom_app_bar.dart (+75 -22)
📝 mobile/lib/modules/home/ui/delete_dialog.dart (+68 -4)
📝 mobile/lib/shared/providers/asset.provider.dart (+90 -3)
📝 mobile/lib/shared/ui/asset_grid/multiselect_grid.dart (+69 -13)
📝 mobile/lib/shared/ui/confirm_dialog.dart (+11 -8)
📝 mobile/lib/shared/ui/drag_sheet.dart (+4 -2)

📄 Description

Closes #2190 , #4453

Changes made in this PR

  • The delete buttons are separated into 3 different buttons - Delete From Immich, Delete From device and Delete everywhere to reduce confusion when deleting assets.
  • Delete local only will put the local assets into the OS trash. The delete prompt includes a button to either remove only backed up assets or to local files of all assets under selection
  • Delete from Immich will either trash or permanently remove an asset based on whether trash has been enabled or not.
  • Delete everywhere retains the current behavior where removing a file would remove it from both Immich and the local device

Note

  • Deleting assets will not permanently remove them from the device yet. They are moved to the System's internal trash and will be accessible through Google photo's bin feature.
  • This got changed recently in the upstream photo_manager plugin. Updating to it will permanently remove the assets instead of trashing them

Screenshots

Delete buttons Local only deletion
Delete-buttons Local-only-deletion

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/immich-app/immich/pull/4505 **Author:** [@shenlong-tanwen](https://github.com/shenlong-tanwen) **Created:** 10/17/2023 **Status:** ✅ Merged **Merged:** 1/17/2024 **Merged by:** [@alextran1502](https://github.com/alextran1502) **Base:** `main` ← **Head:** `feat/mobile-delete-local-only` --- ### 📝 Commits (10+) - [`ddc457e`](https://github.com/immich-app/immich/commit/ddc457e911c7580b6b04302e00f4707fdc4c6b00) feat(mobile): delete assets from device only - [`b885f72`](https://github.com/immich-app/immich/commit/b885f72e42f61028e2ad4ba5ae356f9f9f2c77ee) mobile: add backed up only toggle for delete device only - [`e8a8e19`](https://github.com/immich-app/immich/commit/e8a8e1951a3bd461c68f201dbddc7f04db92cc77) remove toggle inside alert and show different content - [`3bd0579`](https://github.com/immich-app/immich/commit/3bd0579f58e58b685290d4666be628f2c1578841) mobile: change content color for local only - [`3ec708e`](https://github.com/immich-app/immich/commit/3ec708ec2b21301ab681e9848477928474850842) mobile: delete local only button to dialog - [`baf5ae4`](https://github.com/immich-app/immich/commit/baf5ae449df030bfe7e60e47553a9b59ab447621) style: display bottom action in two lines - [`8a6f0f2`](https://github.com/immich-app/immich/commit/8a6f0f2fd8561a13ff3c447516cea8a45fd17491) feat: separate delete buttons - [`e6962b1`](https://github.com/immich-app/immich/commit/e6962b18cbe348b44ea9c2fa080c40559e7579eb) fix: incorrect error message for ownedRemoteSelection - [`6ced397`](https://github.com/immich-app/immich/commit/6ced39769f3a80c865924cd5589b6bc7feefa122) fix: handle remoteOnly from delete everywhere - [`75fbae3`](https://github.com/immich-app/immich/commit/75fbae38a3de5a48dd7089c19e7262b4520aef4c) request confirmation for local only only when non-backed assets are in selection ### 📊 Changes **7 files changed** (+327 additions, -53 deletions) <details> <summary>View changed files</summary> 📝 `mobile/assets/i18n/en-US.json` (+10 -1) 📝 `mobile/lib/modules/home/ui/control_bottom_app_bar.dart` (+75 -22) 📝 `mobile/lib/modules/home/ui/delete_dialog.dart` (+68 -4) 📝 `mobile/lib/shared/providers/asset.provider.dart` (+90 -3) 📝 `mobile/lib/shared/ui/asset_grid/multiselect_grid.dart` (+69 -13) 📝 `mobile/lib/shared/ui/confirm_dialog.dart` (+11 -8) 📝 `mobile/lib/shared/ui/drag_sheet.dart` (+4 -2) </details> ### 📄 Description Closes #2190 , #4453 #### Changes made in this PR - The delete buttons are separated into 3 different buttons - Delete From Immich, Delete From device and Delete everywhere to reduce confusion when deleting assets. - Delete local only will put the local assets into the OS trash. The delete prompt includes a button to either remove only backed up assets or to local files of all assets under selection - Delete from Immich will either trash or permanently remove an asset based on whether trash has been enabled or not. - Delete everywhere retains the current behavior where removing a file would remove it from both Immich and the local device >[!Note] > - Deleting assets will not permanently remove them from the device yet. They are moved to the System's internal trash and will be accessible through Google photo's bin feature. > - This got changed recently in the upstream `photo_manager` plugin. Updating to it will permanently remove the assets instead of trashing them #### Screenshots | Delete buttons | Local only deletion | | :-: | :-: | ![Delete-buttons](https://github.com/immich-app/immich/assets/139912620/18025770-bd62-45f2-a062-6881ee9fa6e3) | ![Local-only-deletion](https://github.com/immich-app/immich/assets/139912620/eacdedd0-0e7b-4529-a81e-bc396b43c469) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
OVERLORD added the pull-request label 2026-02-05 14:21:22 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#10407