SCEE icon indicating copy to clipboard operation
SCEE copied to clipboard

Show abandoned nodes

Open blu256 opened this issue 5 months ago • 5 comments

Use case

When adding the abandoned: lifecycle prefix to a node it seems to disappear from the map.

Mapping abandoned nodes can be still useful to some extent since abandoned nodes can act as landmarks aiding navigation

Adding a custom overlay (~abandoned.*) provides a limited workaround which does not display node icons according to amenity/shop type and does not allow adding nodes.

Proposed Solution

Include nodes with abandoned: lifecycle prefixes in overlays such as "places", possibly colouring them differently to distinguish them from nodes in use.

blu256 avatar Aug 07 '25 04:08 blu256

Adding a custom overlay (~abandoned.*) provides a limited workaround which does not display node icons according to amenity/shop type

I agree with that; it would be much nicer if it would be visually directly clear what is being abandoned there without having to click on it...

and does not allow adding nodes.

Note that you can still add nodes by long-pressing and choosing "Add POI", even with custom overlays. With expert mode enabled, you can add/change any tags (including disused:* / abandoned:* ones).

Perhaps that might be good enough for you (it works for me; although I would too prefer nicer display of them)

Include nodes with abandoned: lifecycle prefixes in overlays such as "places", possibly colouring them differently to distinguish them from nodes in use.

Apparently it is not easy to do, see suggestion at https://github.com/streetcomplete/StreetComplete/issues/4912#issuecomment-1509894332

mnalis avatar Aug 08 '25 00:08 mnalis

Note that you can still add nodes by long-pressing and choosing "Add POI", even with custom overlays.

Thank you, I didn't know about that feature.

Apparently it is not easy to do, see suggestion at streetcomplete#4912 (comment)

Maybe using a single icon for everything abandoned would be easier?

Or what about using alpha? Android drawables support setting alpha and from what I have seen in the code the icons are vector drawables.

blu256 avatar Aug 08 '25 05:08 blu256

Maybe using a single icon for everything abandoned would be easier?

Isn't that ("single icon for everything abandoned") what the custom overlay for ~abandoned.* already does? Only thing is that the icon is always small circle (there is https://github.com/Helium314/SCEE/issues/809 about making that circle more useful, but I think it would need extra changes to work on abandoned:* too - see below).

Or what about using alpha? Android drawables support setting alpha and from what I have seen in the code the icons are vector drawables.

Dunno, I'm not really an Android devel... From user-perspective it would IMHO be more confusing / less desirable than overlaying a red "x" in a corner or over icon (or crossed red circle over it). Maybe if it was made veeery transparent, ghost-alike, so it is barely visible, it might be OK? But I don't know if that would be significantly less work than merging two drawables.

Elements showing in overlays (including their icons) AFAIK come from presets in id-tagging-schema, probably via osmfeatures library.

To implement different coloring of abandoned:*, I guess one should intercept calls to that library and check if element is one that is abandoned, and if so, fake lookup for non-abandoned version of element (e.g. change abandoned:shop to just shop), modify it's drawable, and restore to non-faked tag before proceeding.

But as noted before, I'm not that familiar with SC(EE) internals, so I have no idea how feasible or easy that is and what are possible roadblocks. If you have android devel experience, please do feel free to give it a try!

mnalis avatar Aug 08 '25 14:08 mnalis

Isn't that ("single icon for everything abandoned") what the custom overlay for ~abandoned.* already does?

Yes, but if you are in the places/things overlay for example, you don't see abandoned nodes and this might lead to mapping a duplicate of these nodes. From a usability perspective it makes more sense to show abandoned things in the things overlay and abandoned places in the places overlay.

Dunno, I'm not really an Android devel... From user-perspective it would IMHO be more confusing / less desirable than overlaying a red "x" in a corner or over icon (or crossed red circle over it). Maybe if it was made veeery transparent, ghost-alike, so it is barely visible, it might be OK? But I don't know if that would be significantly less work than merging two drawables.

I agree with either variant, whichever is easier to implement.

But as noted before, I'm not that familiar with SC(EE) internals, so I have no idea how feasible or easy that is and what are possible roadblocks. If you have android devel experience, please do feel free to give it a try!

I don't have much experience when it comes to Android, but I have been studying the source code and I want to give it a try, unless some experienced developer beats me to it :)

blu256 avatar Aug 08 '25 14:08 blu256

Apparently it is not easy to do, see suggestion at https://github.com/streetcomplete/StreetComplete/issues/4912#issuecomment-1509894332

That's for tangram, where icons are handled in a less flexible way. With MapLibre it should be easier, as the icons used for MapLibre are created on the fly. Might change though with the move to the MapLibre Compose library.

Helium314 avatar Aug 08 '25 16:08 Helium314