﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
19285	[Patch] Ctrl+C (Copy) should keep the order of selection	GerdP	team	"Ctrl+C uses a HashSet to store selected elements and thus forgets the order.
It should keep the order as with this patch:

{{{
#!patch
Index: src/org/openstreetmap/josm/gui/datatransfer/data/PrimitiveTransferData.java
===================================================================
--- src/org/openstreetmap/josm/gui/datatransfer/data/PrimitiveTransferData.java (revision 16493)
+++ src/org/openstreetmap/josm/gui/datatransfer/data/PrimitiveTransferData.java (working copy)
@@ -6,9 +6,10 @@
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
-import java.util.HashSet;
+import java.util.LinkedHashSet;
 import java.util.LinkedList;
 import java.util.Queue;
+import java.util.Set;

 import org.openstreetmap.josm.data.ProjectionBounds;
 import org.openstreetmap.josm.data.coor.EastNorth;
@@ -63,7 +64,7 @@
      */
     private PrimitiveTransferData(Collection<? extends OsmPrimitive> primitives, ReferenceGetter referencedGetter) {
         // convert to hash set first to remove duplicates
-        HashSet<OsmPrimitive> visited = new HashSet<>(primitives);
+        Set<OsmPrimitive> visited = new LinkedHashSet<>(primitives);
         this.direct = new ArrayList<>(visited.size());

         this.referenced = new ArrayList<>();
}}}"	enhancement	closed	normal	20.05	Core		fixed		
