Ticket #6875: patch.diff

File patch.diff, 1.4 KB (added by Larry0ua, 12 years ago)

patch for josm\core\src\org\openstreetmap\josm\gui\MapFrame.java

  • MapFrame.java

     
    285285        }
    286286        return button;
    287287    }
    288    
     288
    289289    public void validateToolBarToggle() {
    290290        toolBarToggle.removeAll();
    291291        for (ToggleDialog dlg : allDialogs) {
     
    471471            MapMode newMapMode = lastMapMode.get(newLayer);
    472472            modeChanged = newMapMode != mapMode;
    473473            if (newMapMode != null) {
    474                 selectMapMode(newMapMode);
    475             } // it would be nice to select first supported mode when layer is first selected, but it don't work well with for example editgpx layer
     474                selectMapMode(newMapMode); // it would be nice to select first supported mode when layer is first selected, but it don't work well with for example editgpx layer
     475            } else {
     476                mapMode.exitMode(); // if new mode is null - simply exit from previous mode
     477            }
    476478        }
    477479        if (!modeChanged && mapMode != null) {
    478480            // Let mapmodes know about new active layer
     
    484486    }
    485487
    486488    @Override
    487     public void layerAdded(Layer newLayer) { }
     489    public void layerAdded(Layer newLayer) {
     490        if (!lastMapMode.containsKey(newLayer)) {
     491            lastMapMode.put(newLayer, null);
     492        }
     493    }
    488494
    489495    @Override
    490496    public void layerRemoved(Layer oldLayer) {