forked from MapComplete/MapComplete
Feature: add user preference to remember disabling/enabling layers; see #2442
This commit is contained in:
parent
721e8e89c3
commit
87583586d5
3 changed files with 62 additions and 42 deletions
|
|
@ -74,7 +74,6 @@ export default class FilteredLayer {
|
|||
public static queryParameterKey(layer: LayerConfig) {
|
||||
return "layer-" + layer.id
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a FilteredLayer which is tied into the QueryParameters and/or user preferences
|
||||
*/
|
||||
|
|
@ -85,18 +84,22 @@ export default class FilteredLayer {
|
|||
enabledByDefault?: Store<boolean>
|
||||
) {
|
||||
let isDisplayed: UIEventSource<boolean>
|
||||
if (layer.syncSelection === "local") {
|
||||
let syncSelection: string = layer.syncSelection
|
||||
const userpreference: "default" | "no" | "local" | "theme-only" | "global" | string = osmConnection.getPreference("layer-override-sync-selection").data
|
||||
console.log("Userpreference is", userpreference)
|
||||
syncSelection = userpreference ?? syncSelection
|
||||
if (syncSelection === "local") {
|
||||
isDisplayed = LocalStorageSource.getParsed(
|
||||
context + "-layer-" + layer.id + "-enabled",
|
||||
layer.shownByDefault
|
||||
)
|
||||
} else if (layer.syncSelection === "theme-only" && osmConnection) {
|
||||
} else if (syncSelection === "theme-only" && osmConnection) {
|
||||
isDisplayed = FilteredLayer.getPref(
|
||||
osmConnection,
|
||||
context + "-layer-" + layer.id + "-enabled",
|
||||
layer
|
||||
)
|
||||
} else if (layer.syncSelection === "global" && osmConnection) {
|
||||
} else if (syncSelection === "global" && osmConnection) {
|
||||
isDisplayed = FilteredLayer.getPref(
|
||||
osmConnection,
|
||||
"layer-" + layer.id + "-enabled",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue