-
-
Notifications
You must be signed in to change notification settings - Fork 359
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
Sidewalk surface quest #3735
Sidewalk surface quest #3735
Conversation
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
Ok, I think my concerns are partly refuted and partly not a reason (enough) to not include this in the app. Let's continue with this then, I'll hide the discussion about my concerns as "resolved". |
Thanks! I did think I was probably missing something obvious |
Looks much better now, and the last answer button works well too I don't have any particular opinions on the icon, the one from @krisdoodle45 looks good to me though. My other question was:
|
I think that note is fine. Though after release I would encourage looking at https://github.com/streetcomplete/StreetComplete/blob/master/CONTRIBUTING.md#solving-notes and checking is there large volume of notes caused by such issue. |
I guess I also meant whether there should be an other answers item that says "Sidewalk is wrong" and then leads user to leave a note? |
If it would do anything, then it could remove sidewalk tags. Though skipping it is fine and leaving regular way of leaving note is likely fine. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Man, ... this is a lot of code, and complexity! Whew!
And that must all be maintained ... I have a bad feeling about if one dwelved even deeper here - e.g. cycle track obligatory or not, cycle track segregated from sidewalk or not, smoothness of sidewalk, smoothness of cycle track, ...
Let's add this quest but let's not add any further detailing quests for street-sides for now.
I didn't look through everything now, but here are already some comments:
app/src/test/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurfaceTest.kt
Outdated
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurfaceForm.kt
Show resolved
Hide resolved
fun onlyLeftSideClickable() { | ||
binding.leftSideContainer.isClickable = true | ||
binding.rightSideContainer.isClickable = false | ||
} | ||
|
||
fun onlyRightSideClickable() { | ||
binding.rightSideContainer.isClickable = true | ||
binding.leftSideContainer.isClickable = false | ||
} | ||
|
||
fun bothSidesClickable() { | ||
binding.rightSideContainer.isClickable = true | ||
binding.leftSideContainer.isClickable = true | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, the public interface explosion in StreetSideSelectPuzzle
could be solved by only having one method to set one StreetSideSelectItem
(or similar) that contains all that information (text, image, floating icon, visible or not, clickable or not, ...) since all of that stuff is set at the same time anyway. Or maybe expose an object on the interface so one can call puzzle.left.clickable = true
etc.
But this needn't be part of this PR.
app/src/main/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurface.kt
Outdated
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurface.kt
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurface.kt
Outdated
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurface.kt
Outdated
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurface.kt
Outdated
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurface.kt
Outdated
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurfaceForm.kt
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurface.kt
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurface.kt
Outdated
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurface.kt
Outdated
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurfaceForm.kt
Show resolved
Hide resolved
# Conflicts: # app/src/main/java/de/westnordost/streetcomplete/quests/QuestModule.kt # app/src/main/java/de/westnordost/streetcomplete/quests/sidewalk/AddSidewalkForm.kt
let me know if you have no idea how to solve THAT |
Thanks for the offer, but I've managed it. So, I think this is all sorted, it all runs as expected and the tests all pass. I believe I've fixed everything from reviews (except for things noted as not needed in this PR). |
app/src/main/java/de/westnordost/streetcomplete/osm/sidewalk/SidewalkParser.kt
Outdated
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/quests/surface/AddSidewalkSurface.kt
Outdated
Show resolved
Hide resolved
Maybe I'm missing something obvious, but I didn't find any explicit comment on this: |
For which it is missing? It is likely done this way to avoid asking on say |
I don't actually miss the quest anywhere, I was just curious. |
Allow to add the surface of sidewalks tagged on the road, fixes #1593
Shows up for any suitable road with valid and complete sidewalk tagging. If there's no sidewalk or it's separately mapped for one side then that side is not selectable.
Images:
Todo/questions:
Two possible solutions: