Index: trunk/src/org/openstreetmap/josm/gui/history/TagInfoViewer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/history/TagInfoViewer.java	(revision 15767)
+++ trunk/src/org/openstreetmap/josm/gui/history/TagInfoViewer.java	(revision 15768)
@@ -4,7 +4,6 @@
 import java.awt.event.FocusEvent;
 import java.awt.event.FocusListener;
-import java.util.Arrays;
 import java.util.Collection;
-import java.util.HashMap;
+import java.util.Collections;
 import java.util.Map;
 import java.util.function.IntFunction;
@@ -16,5 +15,4 @@
 
 import org.openstreetmap.josm.data.osm.Tagged;
-import org.openstreetmap.josm.data.osm.history.HistoryOsmPrimitive;
 import org.openstreetmap.josm.gui.dialogs.properties.CopyAllKeyValueAction;
 import org.openstreetmap.josm.gui.dialogs.properties.CopyKeyValueAction;
@@ -62,16 +60,15 @@
     @Override
     protected JTable buildReferenceTable() {
-        return buildTable(PointInTimeType.REFERENCE_POINT_IN_TIME, "table.referencetagtable", model::getReferencePointInTime);
+        return buildTable(PointInTimeType.REFERENCE_POINT_IN_TIME);
     }
 
     @Override
     protected JTable buildCurrentTable() {
-        return buildTable(PointInTimeType.CURRENT_POINT_IN_TIME, "table.currenttagtable", model::getCurrentPointInTime);
+        return buildTable(PointInTimeType.CURRENT_POINT_IN_TIME);
     }
 
-    private JTable buildTable(PointInTimeType pointInTime, String name, Supplier<HistoryOsmPrimitive> histoSp) {
+    private JTable buildTable(PointInTimeType pointInTime) {
         TagTableModel tagTableModel = model.getTagTableModel(pointInTime);
         JTable table = new JTable(tagTableModel, new TagTableColumnModel());
-        table.setName(name);
         table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
         selectionSynchronizer.participateInSynchronizedSelection(table.getSelectionModel());
@@ -82,12 +79,11 @@
         IntFunction<String> tagKeyFn = x -> (String) table.getValueAt(x, 0);
         IntFunction<Map<String, Integer>> tagValuesFn = x -> {
-            Map<String, Integer> map = new HashMap<>();
             String key = tagTableModel.getValue((String) table.getValueAt(x, 0));
             if (key != null) {
-                map.put(key, 1);
+                return Collections.singletonMap(key, 1);
             }
-            return map;
+            return Collections.emptyMap();
         };
-        Supplier<Collection<? extends Tagged>> objectSp = () -> Arrays.asList(histoSp.get());
+        Supplier<Collection<? extends Tagged>> objectSp = () -> Collections.singletonList(model.getPointInTime(pointInTime));
 
         tagMenu.add(trackJosmAction(new CopyValueAction(table, tagKeyFn, objectSp)));
