Changeset 18422 in josm for trunk


Ignore:
Timestamp:
2022-03-29T08:02:07+02:00 (2 years ago)
Author:
GerdP
Message:

fix #21967: Keep OSM layer activated when loading GPX layer
Patch by Bjoeni

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/io/importexport/GpxImporter.java

    r18287 r18422  
    1717import org.openstreetmap.josm.gui.layer.GpxRouteLayer;
    1818import org.openstreetmap.josm.gui.layer.ImageryLayer;
     19import org.openstreetmap.josm.gui.layer.Layer;
     20import org.openstreetmap.josm.gui.layer.MainLayerManager;
    1921import org.openstreetmap.josm.gui.layer.OsmDataLayer;
    2022import org.openstreetmap.josm.gui.layer.markerlayer.MarkerLayer;
     
    140142        // FIXME: remove UI stuff from the IO subsystem
    141143        GuiHelper.runInEDT(() -> {
     144            MainLayerManager manager = MainApplication.getLayerManager();
    142145            if (data.markerLayer != null) {
    143                 MainApplication.getLayerManager().addLayer(data.markerLayer);
     146                manager.addLayer(data.markerLayer);
    144147            }
    145148            if (data.gpxRouteLayer != null) {
    146                 MainApplication.getLayerManager().addLayer(data.gpxRouteLayer);
     149                manager.addLayer(data.gpxRouteLayer);
    147150            }
    148151            if (data.gpxLayer != null) {
    149                 MainApplication.getLayerManager().addLayer(data.gpxLayer);
    150                 MainApplication.getLayerManager().setActiveLayer(data.gpxLayer);
     152                manager.addLayer(data.gpxLayer);
     153                Layer activeLayer = manager.getActiveLayer();
     154                if (activeLayer == null || activeLayer instanceof GpxLayer || activeLayer instanceof MarkerLayer) {
     155                    manager.setActiveLayer(data.gpxLayer);
     156                }
    151157            }
    152158            data.postLayerTask.run();
Note: See TracChangeset for help on using the changeset viewer.