Index: trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesDialog.java	(revision 12419)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesDialog.java	(revision 12420)
@@ -1231,11 +1231,11 @@
             if (tagTable.getSelectedRowCount() == 1) {
                 final int row = tagTable.getSelectedRow();
-                final String key = Utils.encodeUrl(editHelper.getDataKey(row));
+                final String key = Utils.encodeUrl(editHelper.getDataKey(row)).replaceAll("\\+", "%20");
                 Map<String, Integer> values = editHelper.getDataValues(row);
                 if (values.size() == 1) {
-                    url = TAGINFO_URL_PROP.get() + "tags/" + key /* do not URL encode key, otherwise addr:street does not work */
-                            + '=' + Utils.encodeUrl(values.keySet().iterator().next());
+                    url = TAGINFO_URL_PROP.get() + "tags/" + key
+                            + '=' + Utils.encodeUrl(values.keySet().iterator().next()).replaceAll("\\+", "%20");
                 } else {
-                    url = TAGINFO_URL_PROP.get() + "keys/" + key; /* do not URL encode key, otherwise addr:street does not work */
+                    url = TAGINFO_URL_PROP.get() + "keys/" + key;
                 }
             } else if (membershipTable.getSelectedRowCount() == 1) {
