Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature request: Duplicate objects #5787

Closed
cyberchrime opened this issue Aug 4, 2024 · 6 comments
Closed

Feature request: Duplicate objects #5787

cyberchrime opened this issue Aug 4, 2024 · 6 comments
Labels
wontfix idea rejected because it is out of scope or because required work is not matching expected benefits

Comments

@cyberchrime
Copy link

Use case
I sometimes find places where I create multiple benches, all of them having the same properties. Currently, I have to create each bench separately and solve the same quest for different benches, which is quite cumbersome. Instead, I would rather like to simply duplicate the previous bench and place it at the correct position.

Proposed Solution
A very nice feature would be the possibility in Things overlay (possibly in other overlays too) to select and object, duplicate it by pressing an easily accessible button and move the duplicated object to the correct position. It would help saving a lot of time while mapping the same object multiple times at slightly different positions.

@HolgerJeromin
Copy link
Contributor

You could try https://vespucci.io/

@cyberchrime
Copy link
Author

@westnordost I am currently thinking of implementing this myself. Is there a chance that a pull request with this feature will be merged into StreetComplete?

My approach would be to add a new button next to the check button. When the user presses it, the current object remains where it is, but a new object with the same properties appears in the crosshairs and can be placed somewhere. See attached screenshot for my first UI design approach.

Screenshot from 2024-08-08 16-12-59

@westnordost
Copy link
Member

westnordost commented Aug 8, 2024

The feature as suggested by you would be quite problematic, because StreetComplete does not show what else is tagged on a POI, it only shows the type of feature.

However, to enable a sort of "duplicate this object" functionality, it would be necessary for the user to review the tags.
E.g. there's a tree and the user wants to duplicate that tree also onto the other side of the path. But that tree could have the genus specified, or the trunk circumference, the year it was planted or have some fixme etc etc and any of these tags may not be accurate for that other tree on the other side of the path.

So, to duplicate the whole object, with all of its tags, won't work in StreetComplete, because the app never confronts its users with the tags or expects its users to understand them. But looking and understanding all the tags is necessary to avoid mistakes.

Now, copying just the type of object (e.g. a bench) without any further tags would in theory work in StreetComplete, but this is explicitly not what your use case is about, you want to avoid answering all those follow-up quests.

Not sure if we want to expand the discussion towards that (because it doesn't solve your use case)... ..but regarding this, I have some comments which may also make it hard to find an implementation that is a net plus:
  • UI in StreetComplete should be self-explanatory. Such a copy icon is not really self-explanatory, especially because it is unclear whether the whole object is copied or just the feature type.
  • In any case, the ✅ button is something like a primary action button, i.e. it should be alone, for clarity. Other buttons, if any, should be smaller and have different shapes, i.e. call less attention.
  • It could be possible to add an option to the "..." menu named "Create new feature of this type" or similar, but that would then be one more click, making it less useful
  • Finally, making it faster to add (certain) presets has already been discussed here Show most (recently) used POI types by default in Things overlay #5622 - IIRC it would be fine by me if it was implemented in the way described.

@Helium314
Copy link
Collaborator

@cyberchrime seeing you're already a user of SCEE: in SCEE you can (sort of) duplicate an object when creating it using the long-press -> add POI functionality. After selecting a feature, there is a "redo" button next at the bottom that sets the same tags as you had the last time when creating a feature of that type.
(Of course that's not part of any overlay, and will result in a very generic changeset comment)

@cyberchrime
Copy link
Author

alright, thanks for your comment on this. I see that a feature like a duplicate button is quite dangerous on StreetComplete, especially because of the missing tags editor. As I definitely want to copy the full object, it is important to see and edit the tags.

@Helium314 I did not know about the "redo" button yet. Although it is a relief, it's not as convenient as a duplicate button for my use case. As SCEE implements a tag editor, do you think a duplicate button would fit into SCEE? If so, we could move to the SCEE repo and discuss how it could be implemented there.

@westnordost westnordost closed this as not planned Won't fix, can't repro, duplicate, stale Aug 9, 2024
@Helium314
Copy link
Collaborator

Since for duplication you need to check the tags, such a button should probably be in the tag editor. You can certainly open an issue, but I can't promise anything.

@westnordost westnordost added the wontfix idea rejected because it is out of scope or because required work is not matching expected benefits label Sep 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
wontfix idea rejected because it is out of scope or because required work is not matching expected benefits
Projects
None yet
Development

No branches or pull requests

4 participants