     ptk/UpdateEvent
     (update [_ state]
       (assoc-in state [:workspace-local :selected]
-                (map #(get-in % [:obj :id]) rchanges)))))
+                (into #{} (map #(get-in % [:obj :id])) rchanges)))))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;; Page Changes Reactions


(defn extract-numeric-suffix
  [basename]
  (let [result (re-find #"(.*)-([0-9]+)$" basename)]
    (if result
      [(get result 1) (+ 1 (js/parseInt (get result 2)))]
      [basename 1])))

(defn impl-generate-unique-name
  "A unique name generator"

                  (let [result (prepare-change id existing-objs delta)
                        result (if (vector? result) result [result])]
                    (recur
                     (reduce #(assoc %1 (:id %2) (:obj %2)) existing-objs result)
                     (into chgs result)
                     (first ids)
                     (rest ids)))))))
