diff --git a/app/src/main/java/de/westnordost/streetcomplete/Prefs.kt b/app/src/main/java/de/westnordost/streetcomplete/Prefs.kt index a765c82a57c..010de63814e 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/Prefs.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/Prefs.kt @@ -70,6 +70,7 @@ object Prefs { const val REALLY_ALL_NOTES = "really_all_notes" const val ROTATE_WHILE_ZOOMING = "rotate_while_zooming" const val ROTATE_ANGLE_THRESHOLD = "rotate_angle_threshold" + const val OVERRIDE_COUNTRY_RESTRICTIONS = "override_country_restrictions" enum class DayNightBehavior(val titleResId: Int) { IGNORE(R.string.day_night_ignore), diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/building_entrance_reference/AddEntranceReference.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/building_entrance_reference/AddEntranceReference.kt index 2762738a6ca..e0d8084b393 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/quests/building_entrance_reference/AddEntranceReference.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/quests/building_entrance_reference/AddEntranceReference.kt @@ -1,5 +1,6 @@ package de.westnordost.streetcomplete.quests.building_entrance_reference +import de.westnordost.streetcomplete.Prefs import de.westnordost.streetcomplete.R import de.westnordost.streetcomplete.data.elementfilter.toElementFilterExpression import de.westnordost.streetcomplete.data.osm.geometry.ElementGeometry @@ -10,6 +11,7 @@ import de.westnordost.streetcomplete.data.osm.mapdata.Node import de.westnordost.streetcomplete.data.osm.mapdata.Relation import de.westnordost.streetcomplete.data.osm.mapdata.Way import de.westnordost.streetcomplete.data.osm.osmquests.OsmElementQuestType +import de.westnordost.streetcomplete.data.quest.AllCountries import de.westnordost.streetcomplete.data.quest.NoCountriesExcept import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement.BLIND import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement.CITIZEN @@ -45,7 +47,7 @@ class AddEntranceReference : OsmElementQuestType { override val wikiLink = "Key:ref" override val icon = R.drawable.ic_quest_door_address override val achievements = listOf(CITIZEN, BLIND) - override val enabledInCountries = NoCountriesExcept( + override val enabledInCountries = if (prefs.getBoolean(Prefs.OVERRIDE_COUNTRY_RESTRICTIONS, false)) AllCountries else NoCountriesExcept( "PL", // Poland - own knowledge of Mateusz Konieczny https://github.com/streetcomplete/StreetComplete/issues/3064#issuecomment-879447168 "RU", // Russia - https://github.com/streetcomplete/StreetComplete/issues/3064#issuecomment-880231076 "MK", // North Macedonia https://github.com/streetcomplete/StreetComplete/issues/3064#issuecomment-1158016740 diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/bus_stop_ref/AddBusStopRef.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/bus_stop_ref/AddBusStopRef.kt index e154a699f89..a5287753e37 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/quests/bus_stop_ref/AddBusStopRef.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/quests/bus_stop_ref/AddBusStopRef.kt @@ -1,8 +1,10 @@ package de.westnordost.streetcomplete.quests.bus_stop_ref +import de.westnordost.streetcomplete.Prefs import de.westnordost.streetcomplete.R import de.westnordost.streetcomplete.data.osm.geometry.ElementGeometry import de.westnordost.streetcomplete.data.osm.osmquests.OsmFilterQuestType +import de.westnordost.streetcomplete.data.quest.AllCountries import de.westnordost.streetcomplete.data.quest.NoCountriesExcept import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement.PEDESTRIAN import de.westnordost.streetcomplete.osm.Tags @@ -19,7 +21,7 @@ class AddBusStopRef : OsmFilterQuestType() { and access !~ no|private and !ref and noref != yes and ref:signed != no and !~"ref:.*" """ - override val enabledInCountries = NoCountriesExcept( + override val enabledInCountries = if (prefs.getBoolean(Prefs.OVERRIDE_COUNTRY_RESTRICTIONS, false)) AllCountries else NoCountriesExcept( "AU", // https://github.com/streetcomplete/StreetComplete/issues/4487 "CA", "CO", // https://github.com/streetcomplete/StreetComplete/issues/5124 diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/fire_hydrant_diameter/AddFireHydrantDiameter.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/fire_hydrant_diameter/AddFireHydrantDiameter.kt index 7ad1f0c79da..714d4fe29cf 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/quests/fire_hydrant_diameter/AddFireHydrantDiameter.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/quests/fire_hydrant_diameter/AddFireHydrantDiameter.kt @@ -1,11 +1,13 @@ package de.westnordost.streetcomplete.quests.fire_hydrant_diameter +import de.westnordost.streetcomplete.Prefs import de.westnordost.streetcomplete.R import de.westnordost.streetcomplete.data.osm.geometry.ElementGeometry import de.westnordost.streetcomplete.data.osm.mapdata.Element import de.westnordost.streetcomplete.data.osm.mapdata.MapDataWithGeometry import de.westnordost.streetcomplete.data.osm.mapdata.filter import de.westnordost.streetcomplete.data.osm.osmquests.OsmFilterQuestType +import de.westnordost.streetcomplete.data.quest.AllCountries import de.westnordost.streetcomplete.data.quest.NoCountriesExcept import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement.LIFESAVER import de.westnordost.streetcomplete.osm.Tags @@ -29,7 +31,7 @@ class AddFireHydrantDiameter : OsmFilterQuestType() { /* NOTE: if any countries that (sometimes) use anything else than millimeters as hydrant diameters are added, the code in the form needs to be adapted */ // source: https://commons.wikimedia.org/wiki/Category:Fire_hydrant_signs_by_country - override val enabledInCountries = NoCountriesExcept( + override val enabledInCountries = if (prefs.getBoolean(Prefs.OVERRIDE_COUNTRY_RESTRICTIONS, false)) AllCountries else NoCountriesExcept( "DE", "BE", "LU", // not "AT", - see https://community.openstreetmap.org/t/streetcomplete-quest-zu-hydrantendurchmesser-in-osterreich/108899 "GB", "IE", diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/fire_hydrant_ref/AddFireHydrantRef.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/fire_hydrant_ref/AddFireHydrantRef.kt index af91dba2cc8..84538fd1a75 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/quests/fire_hydrant_ref/AddFireHydrantRef.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/quests/fire_hydrant_ref/AddFireHydrantRef.kt @@ -3,9 +3,11 @@ package de.westnordost.streetcomplete.quests.fire_hydrant_ref import de.westnordost.streetcomplete.R import de.westnordost.streetcomplete.data.osm.geometry.ElementGeometry import de.westnordost.streetcomplete.data.osm.osmquests.OsmFilterQuestType +import de.westnordost.streetcomplete.data.quest.AllCountries import de.westnordost.streetcomplete.data.quest.NoCountriesExcept import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement import de.westnordost.streetcomplete.osm.Tags +import de.westnordost.streetcomplete.Prefs class AddFireHydrantRef : OsmFilterQuestType() { @@ -19,7 +21,7 @@ class AddFireHydrantRef : OsmFilterQuestType() { override val icon = R.drawable.ic_quest_fire_hydrant_ref override val achievements = listOf(EditTypeAchievement.LIFESAVER) override val isDeleteElementEnabled = true - override val enabledInCountries = NoCountriesExcept( + override val enabledInCountries = if (prefs.getBoolean(Prefs.OVERRIDE_COUNTRY_RESTRICTIONS, false)) AllCountries else NoCountriesExcept( "CH", "FR", "LI" ) diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/postbox_collection_times/AddPostboxCollectionTimes.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/postbox_collection_times/AddPostboxCollectionTimes.kt index e3fa7719de6..55c6bbef10e 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/quests/postbox_collection_times/AddPostboxCollectionTimes.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/quests/postbox_collection_times/AddPostboxCollectionTimes.kt @@ -1,6 +1,7 @@ package de.westnordost.streetcomplete.quests.postbox_collection_times import de.westnordost.osm_opening_hours.parser.toOpeningHoursOrNull +import de.westnordost.streetcomplete.Prefs import de.westnordost.streetcomplete.R import de.westnordost.streetcomplete.data.elementfilter.toElementFilterExpression import de.westnordost.streetcomplete.data.osm.geometry.ElementGeometry @@ -8,6 +9,7 @@ import de.westnordost.streetcomplete.data.osm.mapdata.Element import de.westnordost.streetcomplete.data.osm.mapdata.MapDataWithGeometry import de.westnordost.streetcomplete.data.osm.mapdata.filter import de.westnordost.streetcomplete.data.osm.osmquests.OsmElementQuestType +import de.westnordost.streetcomplete.data.quest.AllCountries import de.westnordost.streetcomplete.data.quest.NoCountriesExcept import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement.POSTMAN import de.westnordost.streetcomplete.osm.Tags @@ -37,7 +39,7 @@ class AddPostboxCollectionTimes : OsmElementQuestType { // https://www.itinerantspirit.com/home/2016/5/22/post-boxes-from-around-the-world // https://commons.wikimedia.org/wiki/Category:Post_boxes_by_country // http://wanderlustexplorers.com/youve-got-mail-23-international-postal-boxes/ - override val enabledInCountries = NoCountriesExcept( + override val enabledInCountries = if (prefs.getBoolean(Prefs.OVERRIDE_COUNTRY_RESTRICTIONS, false)) AllCountries else NoCountriesExcept( // definitely, seen pictures: "AU", "NZ", "VU", "MY", "SG", "TH", "VN", "LA", "MM", "IN", "BD", "NP", "LK", "BT", "PK", "TW", "HK", "MO", "CN", "KR", "JP", "RU", "BY", "LT", "LV", "FI", "SE", "NO", "DK", "GB", "IE", "IS", "NL", "BE", diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/postbox_ref/AddPostboxRef.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/postbox_ref/AddPostboxRef.kt index a490bd91d14..c0da259a186 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/quests/postbox_ref/AddPostboxRef.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/quests/postbox_ref/AddPostboxRef.kt @@ -1,11 +1,13 @@ package de.westnordost.streetcomplete.quests.postbox_ref +import de.westnordost.streetcomplete.Prefs import de.westnordost.streetcomplete.R import de.westnordost.streetcomplete.data.osm.geometry.ElementGeometry import de.westnordost.streetcomplete.data.osm.mapdata.Element import de.westnordost.streetcomplete.data.osm.mapdata.MapDataWithGeometry import de.westnordost.streetcomplete.data.osm.mapdata.filter import de.westnordost.streetcomplete.data.osm.osmquests.OsmFilterQuestType +import de.westnordost.streetcomplete.data.quest.AllCountries import de.westnordost.streetcomplete.data.quest.NoCountriesExcept import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement.POSTMAN import de.westnordost.streetcomplete.osm.Tags @@ -23,7 +25,7 @@ class AddPostboxRef : OsmFilterQuestType() { override val isDeleteElementEnabled = true override val achievements = listOf(POSTMAN) // source: https://commons.wikimedia.org/wiki/Category:Post_boxes_by_country - override val enabledInCountries = NoCountriesExcept( + override val enabledInCountries = if (prefs.getBoolean(Prefs.OVERRIDE_COUNTRY_RESTRICTIONS, false)) AllCountries else NoCountriesExcept( "FR", "GB", "GG", "IM", "JE", "MT", "IE", "SG", "CZ", "SK", "CH", "US" ) diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/railway_platform_ref/AddRailwayPlatformRef.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/railway_platform_ref/AddRailwayPlatformRef.kt index 379ef5de792..06b39d0c6a2 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/quests/railway_platform_ref/AddRailwayPlatformRef.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/quests/railway_platform_ref/AddRailwayPlatformRef.kt @@ -3,6 +3,7 @@ package de.westnordost.streetcomplete.quests.railway_platform_ref import android.content.Context import androidx.appcompat.app.AlertDialog import androidx.core.content.edit +import de.westnordost.streetcomplete.Prefs import de.westnordost.streetcomplete.R import de.westnordost.streetcomplete.data.elementfilter.toElementFilterExpression import de.westnordost.streetcomplete.data.osm.geometry.ElementGeometry @@ -11,6 +12,7 @@ import de.westnordost.streetcomplete.data.osm.geometry.ElementPolylinesGeometry import de.westnordost.streetcomplete.data.osm.mapdata.Element import de.westnordost.streetcomplete.data.osm.mapdata.MapDataWithGeometry import de.westnordost.streetcomplete.data.osm.osmquests.OsmElementQuestType +import de.westnordost.streetcomplete.data.quest.AllCountries import de.westnordost.streetcomplete.data.quest.NoCountriesExcept import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement import de.westnordost.streetcomplete.osm.Tags @@ -78,7 +80,9 @@ class AddRailwayPlatformRef : OsmElementQuestType { override val wikiLink = "Tag:railway=platform" override val icon = R.drawable.ic_quest_railway_platform_ref override val achievements = listOf(EditTypeAchievement.CITIZEN) - override val enabledInCountries = NoCountriesExcept("DE", "FR", "CH", "AT") + override val enabledInCountries = if (prefs.getBoolean(Prefs.OVERRIDE_COUNTRY_RESTRICTIONS, false)) AllCountries else NoCountriesExcept( + "DE", "FR", "CH", "AT" + ) override val defaultDisabledMessage = R.string.quest_disabled_msg_railway_platform_ref override fun getTitle(tags: Map) = R.string.quest_railwayPlatformRef_title diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/summit/AddSummitCross.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/summit/AddSummitCross.kt index 9177cf3435d..7ca09dfc482 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/quests/summit/AddSummitCross.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/quests/summit/AddSummitCross.kt @@ -1,11 +1,13 @@ package de.westnordost.streetcomplete.quests.summit +import de.westnordost.streetcomplete.Prefs import de.westnordost.streetcomplete.R import de.westnordost.streetcomplete.data.elementfilter.toElementFilterExpression import de.westnordost.streetcomplete.data.osm.geometry.ElementGeometry import de.westnordost.streetcomplete.data.osm.mapdata.Element import de.westnordost.streetcomplete.data.osm.mapdata.MapDataWithGeometry import de.westnordost.streetcomplete.data.osm.osmquests.OsmElementQuestType +import de.westnordost.streetcomplete.data.quest.AllCountries import de.westnordost.streetcomplete.data.quest.NoCountriesExcept import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement.OUTDOORS import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement.RARE @@ -28,7 +30,7 @@ class AddSummitCross : OsmElementQuestType { override val wikiLink = "Key:summit:cross" override val icon = R.drawable.ic_quest_summit_cross override val achievements = listOf(RARE, OUTDOORS) - override val enabledInCountries = NoCountriesExcept( + override val enabledInCountries = if (prefs.getBoolean(Prefs.OVERRIDE_COUNTRY_RESTRICTIONS, false)) AllCountries else NoCountriesExcept( // Europe "AT", // https://de.wikipedia.org/wiki/Gipfelkreuz "CH", // https://de.wikipedia.org/wiki/Gipfelkreuz diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/summit/AddSummitRegister.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/summit/AddSummitRegister.kt index 30229431669..ddf2a3318d0 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/quests/summit/AddSummitRegister.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/quests/summit/AddSummitRegister.kt @@ -1,11 +1,13 @@ package de.westnordost.streetcomplete.quests.summit +import de.westnordost.streetcomplete.Prefs import de.westnordost.streetcomplete.R import de.westnordost.streetcomplete.data.elementfilter.toElementFilterExpression import de.westnordost.streetcomplete.data.osm.geometry.ElementGeometry import de.westnordost.streetcomplete.data.osm.mapdata.Element import de.westnordost.streetcomplete.data.osm.mapdata.MapDataWithGeometry import de.westnordost.streetcomplete.data.osm.osmquests.OsmElementQuestType +import de.westnordost.streetcomplete.data.quest.AllCountries import de.westnordost.streetcomplete.data.quest.NoCountriesExcept import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement.OUTDOORS import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement.RARE @@ -28,7 +30,7 @@ class AddSummitRegister : OsmElementQuestType { override val wikiLink = "Key:summit:register" override val icon = R.drawable.ic_quest_peak override val achievements = listOf(RARE, OUTDOORS) - override val enabledInCountries = NoCountriesExcept( + override val enabledInCountries = if (prefs.getBoolean(Prefs.OVERRIDE_COUNTRY_RESTRICTIONS, false)) AllCountries else NoCountriesExcept( // regions gathered in // https://github.com/streetcomplete/StreetComplete/issues/561#issuecomment-325623974 diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/tactile_paving/AddTactilePavingBusStop.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/tactile_paving/AddTactilePavingBusStop.kt index dd6e0f91268..0233517d6f3 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/quests/tactile_paving/AddTactilePavingBusStop.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/quests/tactile_paving/AddTactilePavingBusStop.kt @@ -1,8 +1,10 @@ package de.westnordost.streetcomplete.quests.tactile_paving +import de.westnordost.streetcomplete.Prefs import de.westnordost.streetcomplete.R import de.westnordost.streetcomplete.data.osm.geometry.ElementGeometry import de.westnordost.streetcomplete.data.osm.osmquests.OsmFilterQuestType +import de.westnordost.streetcomplete.data.quest.AllCountries import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement.BLIND import de.westnordost.streetcomplete.osm.Tags import de.westnordost.streetcomplete.osm.updateWithCheckDate @@ -27,7 +29,7 @@ class AddTactilePavingBusStop : OsmFilterQuestType() { override val changesetComment = "Specify whether public transport stops have tactile paving" override val wikiLink = "Key:tactile_paving" override val icon = R.drawable.ic_quest_blind_bus - override val enabledInCountries = COUNTRIES_WHERE_TACTILE_PAVING_IS_COMMON + override val enabledInCountries = if (prefs.getBoolean(Prefs.OVERRIDE_COUNTRY_RESTRICTIONS, false)) AllCountries else COUNTRIES_WHERE_TACTILE_PAVING_IS_COMMON override val achievements = listOf(BLIND) override val hint = R.string.quest_generic_looks_like_this diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/tactile_paving/AddTactilePavingCrosswalk.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/tactile_paving/AddTactilePavingCrosswalk.kt index fb5b6e943e4..971059b4642 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/quests/tactile_paving/AddTactilePavingCrosswalk.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/quests/tactile_paving/AddTactilePavingCrosswalk.kt @@ -1,11 +1,13 @@ package de.westnordost.streetcomplete.quests.tactile_paving +import de.westnordost.streetcomplete.Prefs import de.westnordost.streetcomplete.R import de.westnordost.streetcomplete.data.elementfilter.toElementFilterExpression import de.westnordost.streetcomplete.data.osm.geometry.ElementGeometry import de.westnordost.streetcomplete.data.osm.mapdata.Element import de.westnordost.streetcomplete.data.osm.mapdata.MapDataWithGeometry import de.westnordost.streetcomplete.data.osm.osmquests.OsmElementQuestType +import de.westnordost.streetcomplete.data.quest.AllCountries import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement.BLIND import de.westnordost.streetcomplete.osm.Tags import de.westnordost.streetcomplete.osm.isCrossing @@ -37,7 +39,7 @@ class AddTactilePavingCrosswalk : OsmElementQuestType { override val changesetComment = "Specify whether kerbs have tactile paving" override val wikiLink = "Key:tactile_paving" override val icon = R.drawable.ic_quest_kerb_tactile_paving - override val enabledInCountries = COUNTRIES_WHERE_TACTILE_PAVING_IS_COMMON + override val enabledInCountries = if (prefs.getBoolean(Prefs.OVERRIDE_COUNTRY_RESTRICTIONS, false)) AllCountries else COUNTRIES_WHERE_TACTILE_PAVING_IS_COMMON override val achievements = listOf(BLIND) override val hint = R.string.quest_generic_looks_like_this diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/tactile_paving/AddTactilePavingSteps.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/tactile_paving/AddTactilePavingSteps.kt index a1dcd43a5a0..55b832a0065 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/quests/tactile_paving/AddTactilePavingSteps.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/quests/tactile_paving/AddTactilePavingSteps.kt @@ -1,8 +1,10 @@ package de.westnordost.streetcomplete.quests.tactile_paving +import de.westnordost.streetcomplete.Prefs import de.westnordost.streetcomplete.R import de.westnordost.streetcomplete.data.osm.geometry.ElementGeometry import de.westnordost.streetcomplete.data.osm.osmquests.OsmFilterQuestType +import de.westnordost.streetcomplete.data.quest.AllCountries import de.westnordost.streetcomplete.data.user.achievements.EditTypeAchievement.BLIND import de.westnordost.streetcomplete.osm.Tags import de.westnordost.streetcomplete.osm.surface.PAVED_SURFACES @@ -27,7 +29,7 @@ class AddTactilePavingSteps : OsmFilterQuestType() { override val changesetComment = "Survey tactile paving on steps" override val wikiLink = "Key:tactile_paving" override val icon = R.drawable.ic_quest_steps_tactile_paving - override val enabledInCountries = COUNTRIES_WHERE_TACTILE_PAVING_IS_COMMON + override val enabledInCountries = if (prefs.getBoolean(Prefs.OVERRIDE_COUNTRY_RESTRICTIONS, false)) AllCountries else COUNTRIES_WHERE_TACTILE_PAVING_IS_COMMON override val achievements = listOf(BLIND) override val hint = R.string.quest_generic_looks_like_this diff --git a/app/src/main/java/de/westnordost/streetcomplete/screens/settings/QuestSettingsScreen.kt b/app/src/main/java/de/westnordost/streetcomplete/screens/settings/QuestSettingsScreen.kt index fabe52531ab..586a9b9dfe3 100644 --- a/app/src/main/java/de/westnordost/streetcomplete/screens/settings/QuestSettingsScreen.kt +++ b/app/src/main/java/de/westnordost/streetcomplete/screens/settings/QuestSettingsScreen.kt @@ -111,6 +111,14 @@ fun QuestSettingsScreen( default = false, onCheckedChange = { scope.launch(Dispatchers.IO) { visibleEditTypeController.onVisibilitiesChanged() } } ) + if (prefs.expertMode) + SwitchPreference( + name = stringResource(R.string.pref_override_country_restrictions_title), + description = stringResource(R.string.pref_override_country_restrictions_summary), + pref = Prefs.OVERRIDE_COUNTRY_RESTRICTIONS, + default = false, + onCheckedChange = { OsmQuestController.reloadQuestTypes() }, + ) Preference( name = stringResource(R.string.pref_quest_monitor_title), onClick = { questMonitorDialog(prefs, ctx) }, diff --git a/app/src/main/res/values/strings_ee.xml b/app/src/main/res/values/strings_ee.xml index 9a2b5d243a1..93859db1b60 100644 --- a/app/src/main/res/values/strings_ee.xml +++ b/app/src/main/res/values/strings_ee.xml @@ -162,6 +162,8 @@ When enabled, quest settings are only valid for the current quest preset Create quests dynamically Quests are created when loading the viewed area. Somewhat slow, but immediately applies changed quest settings. + Override country restrictions + Allow quests to be asked everywhere, even if originally disabled in some countries because they are mostly useless or spammy. Please be considerate when answering those quests. Note that some quests still may not be overridden due to community consensus. For properly applying all changed quest settings, re-scanning for quests is necessary. Notify about nearby quests Monitors location when the app is in background, except if backgrounded using back button