Skip to content

Warning dialog for photo deletion does not inform user about impact on other features sharing the same photo via Reuse Last Entered Value #4534

@IvaKuklica

Description

@IvaKuklica

Descripton

  • When the Reuse Last Entered Value functionality is enabled for a photo field, all subsequently created features share a reference to the same physical photo file. When the user attempts to delete a photo, a warning dialog is displayed with the following message:
    "Would you like to delete or unlink the photo? Deleting removes the photo from your project entirely, while unlinking keeps the photo in your project but removes it from this specific feature."
  • While this dialog exists, it is not sufficient for this scenario. The warning does not inform the user that deleting the photo will also affect all other features that reference the same photo file via Reuse Last Entered Value. This is a high-risk action that can result in irreversible data loss across multiple features with a single tap, without the user being aware of the full consequences.
  • Additionally, after deletion, all affected features display a broken photo icon instead of an appropriate missing photo indicator.
  • This behavior is not documented in the Mergin Maps documentation,** specifically on the How to Reuse Last Entered Values

Application:

Device/OS/APP: Samsung Galaxy A53 / Android 15 / MM app. 2026.3.0 build 818751
Device/OS/APP: IPhone 15 / iOS 26.5 / MM app. 2026.3.0 - build 26.6.912911

Project & Layer

Project: tc04_recording
Layer: Multiphoto layer
Feature form setting: Reuse Last Entered Value enabled for photo field

Steps to Reproduce

  1. Open the project tc04_recording in the Mergin Maps mobile app.
  2. Navigate to Settings and enable Reuse Last Entered Value.
  3. Create Feature 1: add two photos, check the checkbox next to the photo field to enable reuse, and save.
  4. Create Feature 2: photo fields are pre-filled automatically. Save without changes.
  5. Create Feature 3: photo fields are pre-filled automatically. Tap on a photo and select Delete photo from the dialog.
  6. Open Feature 1 and Feature 2 and observe the photo fields.

Actual Result

The warning dialog is displayed but only describes the general difference between Delete and Unlink. It does not mention that other features (Feature 1 and Feature 2) share the same photo reference and will also be affected. After confirming deletion:

  • The photo is permanently removed from the project
  • Feature 1 and Feature 2 display a broken photo icon instead of the original image
  • The user has no way to recover the deleted photos

Expected Result

  • The warning dialog clearly states that deleting the photo will permanently remove the file from the project and will affect all other features that reference the same photo, including previously created features where Reuse Last Entered Value was used.
  • The dialog should explicitly list the risk of data loss across multiple features and require a stronger confirmation (e.g. a separate confirmation step or displaying the number of affected features).
    - The high-risk action (Delete photo) should be positioned as the last option in the dialog hierarchy — below the lower-risk option (Unlink photo) to reduce the chance of accidental irreversible deletion. Currently, Delete photo is displayed as the primary/first action button, which increases the risk of unintended data loss.

Attachments

Screen recording showing the deletion of photos from Feature 3 and the resulting empty photo fields in Feature 1 and Feature 2.

605678586-85ad66a3-269c-41c1-98e1-8c33b0b76eb5.mp4

Metadata

Metadata

Assignees

No one assigned

    Labels

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions