From 75e2d3918cec7353d1b7284b6d10d53acdc94d6c Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Fri, 9 Jul 2021 03:51:34 +0100 Subject: [PATCH 1/4] Allow handrail quest to split the way Because handrails may not exist the whole way along a staircase. --- .../de/westnordost/streetcomplete/quests/handrail/AddHandrail.kt | 1 + 1 file changed, 1 insertion(+) diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/handrail/AddHandrail.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/handrail/AddHandrail.kt index 373030a0fe..a8f848d419 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/quests/handrail/AddHandrail.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/quests/handrail/AddHandrail.kt @@ -25,6 +25,7 @@ class AddHandrail : OsmFilterQuestType() { override val commitMessage = "Add whether steps have a handrail" override val wikiLink = "Key:handrail" override val icon = R.drawable.ic_quest_steps_handrail + override val isSplitWayEnabled = true override fun getTitle(tags: Map) = R.string.quest_handrail_title From 7a7b53b6be0fc39b041e1717783dfe50c309864d Mon Sep 17 00:00:00 2001 From: Tobias Zwick Date: Wed, 14 Jul 2021 01:58:24 +0200 Subject: [PATCH 2/4] quest presets changelog --- app/src/main/res/raw/changelog.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/src/main/res/raw/changelog.yml b/app/src/main/res/raw/changelog.yml index 3fc43d1c91..431f6a313d 100644 --- a/app/src/main/res/raw/changelog.yml +++ b/app/src/main/res/raw/changelog.yml @@ -1,3 +1,15 @@ +v34.0-beta1: | +

🚌🚴 Quest presets

+
    +
  • Show quests that are quick and easy to solve (from a distance) first by default. This makes + contributing more efficient and diverse while also easier to do f.e. as a passenger (#2944, ...)
  • +
  • You can now save different quest presets for different situations, f.e. one preset when you + only want a solve some important quests while on a bus, or on a bike tour etc.
    This was + a much requested feature: (#1301, #1654, #1746, #1987, #2054, #2069, #2279, #2565, #2308, #3034, ...)
  • +
  • Inform new users once about the possibility to change quest presets
  • +
  • Added search/filter function for the quest presets settings (#3008)
  • +
+ v33.0-beta1: |

New Quests

    From 61b58024ebd1be1101f65a35ab5fe60d254339f4 Mon Sep 17 00:00:00 2001 From: Tobias Zwick Date: Wed, 14 Jul 2021 02:20:47 +0200 Subject: [PATCH 3/4] dialog --- .../settings/questselection/QuestPresetsAdapter.kt | 10 +++++----- app/src/main/res/values/strings.xml | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/de/westnordost/streetcomplete/settings/questselection/QuestPresetsAdapter.kt b/app/src/main/java/de/westnordost/streetcomplete/settings/questselection/QuestPresetsAdapter.kt index dea91f368a..5d4c82d599 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/settings/questselection/QuestPresetsAdapter.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/settings/questselection/QuestPresetsAdapter.kt @@ -83,7 +83,7 @@ class QuestPresetsAdapter @Inject constructor( } itemView.deleteButton.isEnabled = true itemView.deleteButton.isInvisible = with.id == 0L - itemView.deleteButton.setOnClickListener { onClickDeleteQuestPreset(with.id) } + itemView.deleteButton.setOnClickListener { onClickDeleteQuestPreset(with) } } fun onSelectQuestPreset(presetId: Long) { @@ -92,10 +92,10 @@ class QuestPresetsAdapter @Inject constructor( } } - fun onClickDeleteQuestPreset(presetId: Long) { - AlertDialog.Builder(itemView.context) - .setMessage(R.string.quest_presets_delete_message) - .setPositiveButton(R.string.delete_confirmation) { _,_ -> deleteQuestPreset(presetId) } + fun onClickDeleteQuestPreset(preset: QuestPreset) { + AlertDialog.Builder(itemView.context, R.style.Theme_Bubble_Dialog_Alert) + .setMessage(itemView.context.getString(R.string.quest_presets_delete_message, preset.name)) + .setPositiveButton(R.string.delete_confirmation) { _,_ -> deleteQuestPreset(preset.id) } .setNegativeButton(android.R.string.cancel, null) .show() } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 5073111f12..a4bd99b723 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1068,5 +1068,5 @@ Otherwise, you can download another keyboard in the app store. Popular keyboards If you are overwhelmed by the number of quests, you can always fine-tune what quests are displayed to you and in what order in the settings. New preset name Default - Delete this preset? The quest selection and order for it will be irrevocably lost. + "Delete preset \"%s\"? The quest selection and order for it will be irrevocably lost." From 5b1fee3b90aa14537575e9810bc1ae6af86d7537 Mon Sep 17 00:00:00 2001 From: Tobias Zwick Date: Wed, 14 Jul 2021 15:17:04 +0200 Subject: [PATCH 4/4] fix presets being displayed duplicate --- .../settings/questselection/QuestPresetsAdapter.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/de/westnordost/streetcomplete/settings/questselection/QuestPresetsAdapter.kt b/app/src/main/java/de/westnordost/streetcomplete/settings/questselection/QuestPresetsAdapter.kt index 5d4c82d599..258e67e1fc 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/settings/questselection/QuestPresetsAdapter.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/settings/questselection/QuestPresetsAdapter.kt @@ -23,7 +23,7 @@ class QuestPresetsAdapter @Inject constructor( private val questPresetsController: QuestPresetsController ) : RecyclerView.Adapter(), LifecycleObserver { - private val presets: MutableList = mutableListOf() + private var presets: MutableList = mutableListOf() private val lifecycleScope = CoroutineScope(SupervisorJob() + Dispatchers.Main) @@ -46,6 +46,7 @@ class QuestPresetsAdapter @Inject constructor( @OnLifecycleEvent(Lifecycle.Event.ON_START) fun onStart() { + presets = mutableListOf() presets.add(QuestPreset(0, context.getString(R.string.quest_presets_default_name))) presets.addAll(questPresetsController.getAllQuestPresets())