iD icon indicating copy to clipboard operation
iD copied to clipboard

Add a way to undo a specific change just before saving?

Open helmo opened this issue 7 years ago • 9 comments

When working in iD you get a list of changes below the 'Changeset comment' field when you try to save.

Is there a way to undo a deletion without using the undo button?

Example:

  1. deleted address,
  2. create poi,
  3. modify street,
  4. more ...

When I click a 'create' of 'modify' change that change is highlighted, letting me correct it (if you still know what changed). But the deletion... there is nothing to highlight.

A little 'x' in the list of changes to remove that one change would be a solution for me.

I asked this a few days ago on the help site but was directed here.

helmo avatar Sep 21 '16 06:09 helmo

There are a few cases where this is easy to do, and a lot of cases where this is difficult or impossible to do. I'll think about more about this issue, but my gut is telling me :no_good_man:

bhousel avatar Oct 14 '16 15:10 bhousel

Previously: #537.

jfirebaugh avatar Oct 14 '16 16:10 jfirebaugh

Yes, I was also thinking about exposing the revert action for this. But need to wrap my head around the limitations of where it's safe to use.

bhousel avatar Oct 14 '16 16:10 bhousel

I just edited the map for 2 hours. Upon saving I realized I must have made a mistake and moved a road. I wish doing this would immediately trigger a warning. Not being able to select that change and remove it is devastating. I just added a whole apartment complex.

EvanCarroll avatar Aug 19 '22 03:08 EvanCarroll

Not being able to select that change and remove it is devastating.

Oof, I know how this feels. Hopefully it wasn’t a problem to move the road back. But in the future, if you run into a situation where you really need to save your hard work but accidentally made an unrelated change, you can export your changes and selectively save them outside of iD:

  1. Click Save, then click “Download osmChange file” at the bottom of the panel.
  2. Open the .osc file in JOSM or Level0. In Level0, choose the file, then click “Add to editor”.
  3. Selectively remove the edits you don’t want to save. Level0 has a special syntax that’s easier than the raw XML in the .osc file. Remove the entries for the nodes you accidentally moved, based on their node IDs. You may also find the affected way in the file, but as long as you didn’t make any other accidental changes, you can leave that way’s entry untouched.
  4. Upload your changes.

1ec5 avatar Aug 22 '22 22:08 1ec5

This is what I did, but ideally, this functionality would be in the web app and users wouldn't have to download Java and another tool. Thankfully this method worked out great.

EvanCarroll avatar Aug 23 '22 04:08 EvanCarroll

Where is the .osc file of my last changeset? I want to undo one thing.

Kogacarlo avatar Sep 17 '22 13:09 Kogacarlo

The option to download an .osc only exists until you upload the changeset. After that, if you want to undo anything, you need to undo it manually or use a tool like JOSM’s reverter plugin or RevertUI.

1ec5 avatar Sep 17 '22 15:09 1ec5

Thanks. By using the reverter plugin the old nodes were visible in a second layer. I moved some nodes back to their old position, deleted the second layer and uploaded. It worked well :-)

Kogacarlo avatar Sep 17 '22 15:09 Kogacarlo