streetcomplete / StreetComplete

Easy to use OpenStreetMap editor for Android
https://streetcomplete.app
GNU General Public License v3.0
3.9k stars 355 forks source link

"What kind of Car Wash is this?" Quest needs to have an option for multiple combinations #5740

Closed CurlingMan13 closed 3 months ago

CurlingMan13 commented 3 months ago

Use case "What kind of Car Wash is this?" Quest needs to have an option for multiple combinations. For example some car washes in the US have both Self-Service and Automated options. They used different tags, such that they can simultaneously exist: self_service=yes automated=yes. Often, I am left choosing one or the other, which is incorrect. Often notes are left to indicate that they can't answer it since it is multiple.

Proposed Solution The user should be presented with options, where they can select multiple choices. For example, they can select "Automated", "Self-Service" and "Staff cleans car" or any combination of 2 or even just 1. If it has both "Self-Service" and "Staff cleans car", it should have "self_service=both".

westnordost commented 3 months ago

Did you try selecting multiple choices?

Enovale commented 3 months ago

I was experiencing the same confusion with the completion screen for this question because I also thought you could only select one answer. I just tried it again and indeed, you can actually select multiple. I do think the UX does not communicate this properly, as the answer screen looks like other questions that do not allow you to select multiple (Fire hydrant type/location, bike stall type, etc).

CurlingMan13 commented 3 months ago

@Enovale is correct. I wasn't aware you could select multiple. I think it is indeed a UI issue where it needs to be better communicated to the user that multiple options can be selected. It looks just like all the other quests where you can only select 1 answer (surface type, roof type, etc).

Quick fix would probably be to add wording on to the question or subtext that says something along the lines of "Select all that apply."

westnordost commented 3 months ago

Yeah, the wording should be changed to be more clear. IIRC the wording currently is fust "Select:".

kmpoppe commented 3 months ago

Would that be as easy as changing R.string.quest_select_hint from "Select" to "Select one or more" or "Select all that apply"?

Will the text be offered for translation again when it is changed or would it be better to create a new string var for that?

matkoniecz commented 3 months ago

Would that be as easy as changing R.string.quest_select_hint from "Select" to "Select one or more" or "Select all that apply"?

And checking where it is also used (is it seen in any place where multiselect is not an option?)

Will the text be offered for translation again when it is changed

it will continue to be offered, with new text, existing translation would not be invalidated

Switching to quest_select_hint2 or other new code would invalidate existing translations. (quest_multiselect_hint ?)

kmpoppe commented 3 months ago

And checking where it is also used (is it seen in any place where multiselect is not an option?)

https://github.com/streetcomplete/StreetComplete/blob/8dbc858de7caa529a60e60d7007689dd94478026/app/src/main/java/de/westnordost/streetcomplete/quests/AImageListQuestForm.kt#L62-L64

Is the one where I guess this Issue stems from (Image List) - can also be seen with "What can be recycled here?". Also: Marvel at the use of quest_roofShape_select_one which clearly now is used for multiple other variants ;-)

quest_select_hint is also used here: https://github.com/streetcomplete/StreetComplete/blob/8dbc858de7caa529a60e60d7007689dd94478026/app/src/main/java/de/westnordost/streetcomplete/view/controller/FeatureViewController.kt#L51 (None of the implementations of FeatureViewController do reset the hint, so that would need to be looked at)

and here: https://github.com/streetcomplete/StreetComplete/blob/8dbc858de7caa529a60e60d7007689dd94478026/app/src/main/java/de/westnordost/streetcomplete/view/image_select/ImageListPickerDialog.kt#L18 With none of the Implementations of ImageListPickerDialog apart from overlays/street_parking/StreetParkingOverlayForm.kt not overwriting the title.

Switching to quest_select_hint2 or other new code would invalidate existing translations. (quest_multiselect_hint ?)

Yet, creating quest_multiselect_hint and using that in the code would create a new translation, the other one wouldn't be invalidated and could be used in parallel, correct?

matkoniecz commented 3 months ago

Yet, creating quest_multiselect_hint and using that in the code would create a new translation, the other one wouldn't be invalidated and could be used in parallel, correct?

Yes.

Marvel at the use of quest_roofShape_select_one which clearly now is used for multiple other variants ;-)

Well, technically it can be renamed but then migration of what was translated at poeditor would be needed (likely manually, writing script for that would take even more effort)

kmpoppe commented 3 months ago

Well, technically it can be renamed but then migration of what was translated at poeditor would be needed (likely manually, writing script for that would take even more effort)

That was just a smirky side-note. There are far more important things to consider than changing a resource's name :)

mnalis commented 3 months ago

Not a native English speaker, but "Select all that apply" would sound better to me than "Select any that apply" for that new text, in order to emphasize that multiple values not only can, but in fact should, be selected?