From 57e283697af0bea8334f4dcbd5ff8cb44b407c6b Mon Sep 17 00:00:00 2001 From: Emux Date: Mon, 1 Dec 2025 13:56:49 +0200 Subject: [PATCH] Negative rule improvement --- docs/Changelog.md | 1 + vtm/src/org/oscim/theme/rule/Rule.java | 16 +++++++++++----- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/docs/Changelog.md b/docs/Changelog.md index 41413895a..80b7d4b85 100644 --- a/docs/Changelog.md +++ b/docs/Changelog.md @@ -2,6 +2,7 @@ ## Next version +- Negative rule improvement [#1270](https://github.com/mapsforge/vtm/pull/1270) - Render themes: `map-background-outside` [#1262](https://github.com/mapsforge/vtm/pull/1262) - `ThemeCallback.getColor` method [#1251](https://github.com/mapsforge/vtm/pull/1251) - Map theme improvements diff --git a/vtm/src/org/oscim/theme/rule/Rule.java b/vtm/src/org/oscim/theme/rule/Rule.java index f03d80f53..a87d5d51b 100644 --- a/vtm/src/org/oscim/theme/rule/Rule.java +++ b/vtm/src/org/oscim/theme/rule/Rule.java @@ -3,7 +3,7 @@ * Copyright 2016 devemux86 * * This file is part of the OpenScienceMap project (http://www.opensciencemap.org). - * + * * This program is free software: you can redistribute it and/or modify it under the * terms of the GNU Lesser General Public License as published by the Free Software * Foundation, either version 3 of the License, or (at your option) any later version. @@ -318,10 +318,16 @@ public boolean matchesTags(Tag[] tags) { if (!containsKeys(tags)) return true; - for (Tag tag : tags) - for (String value : values) - if (Utils.equals(value, tag.value)) - return !exclusive; + for (Tag tag : tags) { + for (String key : keys) { + if (Utils.equals(key, tag.key)) { + for (String value : values) { + if (Utils.equals(value, tag.value)) + return !exclusive; + } + } + } + } return exclusive; }