inaturalist / INaturalistIOS

iNaturalist iOS app
MIT License
151 stars 50 forks source link

Confirmation of Cancel Edits on Ob Detail Screen #258

Open joellebel opened 8 years ago

joellebel commented 8 years ago

When the user is in the Edit view of the Ob Detail Screen, makes changes and taps "Cancel" I recommend presenting them with a confirmation dialogue box with the following question: "Are you sure you want to discard unsaved changes? (Yes, No)

This will prevent any mistakes in saving changes.

alexshepard commented 8 years ago

I'm fine with this.

@kueda can you comment? I replaced the old back behavior with this cancel button largely on your request.

joellebel commented 8 years ago

On the Conf. screen during the ob flow, I would make the Cancel button a Back button because it is part of a flow that people typically move back and forward through. Instagram's flow is a nice example of this.

alexshepard commented 8 years ago

make the Cancel button a Back button

I responded to that here. https://github.com/inaturalist/design/issues/47#issuecomment-166838114

joellebel commented 8 years ago

@kueda Thoughts on this change?

Here's more of history on this issue as well, if needed (https://github.com/inaturalist/design/issues/47) ...but it's probably not necessary to read this entire issue.

alexshepard commented 8 years ago

This is in conflict with #134, which requests the opposite behavior, and which is why the change was made.

kueda commented 8 years ago

Sorry for not replying for the better part of a year. I am the worst. There are at least two issues here:

  1. Displaying a confirmation dialog when canceling an observation that you've made changes too (e.g. added a name, description, photo, etc): this seems useful to me and I think we should do it regardless of whether your backing out or canceling. So far I don't think anyone in this thread has expressed any dislike for this change.
  2. Canceling the entire flow vs. backing out to the camera: this seems more contentious. Personally, I prefer a "Cancel" interaction that stops the entire flow, the reason being that we have a 2-step flow vs. Instagram's 3-step flow. In Instagram you might be on the last step tagging people and realize you wanted to use a different filter, so it makes sense to go back, change that, and go forward (with all changes saved). In iNat, you can't change decisions made on the previous screen by going back, so I don't see the benefit to doing so. You can't edit the pic you took, and if you want to take a new pic that seems like an additional step in the flow, not a re-do of a previous step. Maybe you decide your picture sucks and you want to replace it with a new one, but to me, it seems more natural to do that by deleting my old photo and adding a new one. That's totally subjective though. Do we have any evidence that people cancel out of the obs flow because they wanted to take a new picture?
joellebel commented 8 years ago

In efforts to move this forward I'm fine with a Cancel button as long as their is a confirmation modal like the Android app...

image

I don't think we need the "Edit Observation" title.

alexshepard commented 7 years ago

All that's left to do is add the alert about discarding changes.