Index: src/org/openstreetmap/josm/data/osm/Node.java
===================================================================
--- src/org/openstreetmap/josm/data/osm/Node.java	(revision 15582)
+++ src/org/openstreetmap/josm/data/osm/Node.java	(working copy)
@@ -385,7 +385,22 @@
 
     @Override
     public boolean isOutsideDownloadArea() {
-        if (isNewOrUndeleted() || getDataSet() == null)
+        return isOutsideDownloadArea(false);
+    }
+
+    /**
+     * Tests if this primitive lies outside of the downloaded area of its
+     * {@link DataSet}, possibly ignoring if the node is new or undeleted.
+     * 
+     * @param ignoreNewOrUndeleted if true, don't use
+     *                             {@link OsmPrimitive#isNewOrUndeleted} (if
+     *                             {@code true}, {@link Node#isOutsideDownloadArea}
+     *                             returns {@code false})
+     * @return {@code true} if this primitive lies outside of the downloaded area
+     * @see Node#isOutsideDownloadArea
+     */
+    public boolean isOutsideDownloadArea(boolean ignoreNewOrUndeleted) {
+        if ((!ignoreNewOrUndeleted && isNewOrUndeleted()) || getDataSet() == null)
             return false;
         Area area = getDataSet().getDataSourceArea();
         if (area == null)
