Index: /applications/editors/josm/plugins/piclayer/build.xml
===================================================================
--- /applications/editors/josm/plugins/piclayer/build.xml	(revision 27289)
+++ /applications/editors/josm/plugins/piclayer/build.xml	(revision 27290)
@@ -22,6 +22,6 @@
 -->
 <project name="PicLayer" default="dist" basedir=".">
-    <property name="commit.message" value="PicLayer - changed marker icon to make it more visible; #5451; #7124 - first stage"/>
-    <property name="plugin.main.version" value="4549"/>
+    <property name="commit.message" value="PicLayer - fix of #7171"/>
+    <property name="plugin.main.version" value="4669"/>
     <!--
       ************************************************
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/PicLayerPlugin.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/PicLayerPlugin.java	(revision 27289)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/PicLayerPlugin.java	(revision 27290)
@@ -59,5 +59,5 @@
 public class PicLayerPlugin extends Plugin implements LayerChangeListener {
 
-    public static List<PicToggleButton> buttonList = null;
+    public static List<IconToggleButton> buttonList = null;
 
     // Plugin menu
@@ -104,13 +104,13 @@
             // Create plugin buttons and add them to the toolbar
 
-            buttonList = new ArrayList<PicToggleButton>(7);
-            buttonList.add(new PicToggleButton(movePictureAction, tr("Move Picture"), "piclayer.actionvisibility.move", true));
-            buttonList.add(new PicToggleButton(movePointAction, tr("Move Point"), "piclayer.actionvisibility.movepoint", true));
-            buttonList.add(new PicToggleButton(transformPointAction, tr("Transform Point"), "piclayer.actionvisibility.transformpoint", true));
-            buttonList.add(new PicToggleButton(rotatePictureAction, tr("Rotate"), "piclayer.actionvisibility.rotate", false));
-            buttonList.add(new PicToggleButton(scaleXYPictureAction, tr("Scale"), "piclayer.actionvisibility.scale", false));
-            buttonList.add(new PicToggleButton(scaleXPictureAction, tr("Scale X"), "piclayer.actionvisibility.scalex", false));
-            buttonList.add(new PicToggleButton(scaleYPictureAction, tr("Scale Y"), "piclayer.actionvisibility.scaley", false));
-            buttonList.add(new PicToggleButton(shearPictureAction, tr("Shear"), "piclayer.actionvisibility.shear", false));
+            buttonList = new ArrayList<IconToggleButton>(7);
+            buttonList.add(new IconToggleButton(movePictureAction));
+            buttonList.add(new IconToggleButton(movePointAction));
+            buttonList.add(new IconToggleButton(transformPointAction));
+            buttonList.add(new IconToggleButton(rotatePictureAction));
+            buttonList.add(new IconToggleButton(scaleXYPictureAction));
+            buttonList.add(new IconToggleButton(scaleXPictureAction));
+            buttonList.add(new IconToggleButton(scaleYPictureAction));
+            buttonList.add(new IconToggleButton(shearPictureAction));
 
             for(IconToggleButton btn : buttonList) {
@@ -128,15 +128,9 @@
         boolean newPic = newLayer instanceof PicLayerAbstract;
         // actually that should be not enough - JOSM should hide all buttons that are disabled for current layer!
-        if (oldPic && !newPic || oldLayer == null && !newPic) { // leave picture layer - hide all controls
-            for (PicToggleButton btn : buttonList) {
-                btn.writeVisible();
-                btn.setVisible(false);
-            }
-            if (oldLayer != null)
-                ((PicLayerAbstract)oldLayer).setDrawPoints(false);
+        if (oldPic) { // leave picture layer            if (oldLayer != null)
+            ((PicLayerAbstract)oldLayer).setDrawPoints(false);
         }
-        if (!oldPic && newPic) { // enter picture layer - reset visibility of controls
-            for (PicToggleButton btn : buttonList)
-                btn.readVisible();
+        if (newPic) {
+        	((PicLayerAbstract)newLayer).setDrawPoints(true);
         }
     }
Index: plications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/PicToggleButton.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/PicToggleButton.java	(revision 27289)
+++ 	(revision )
@@ -1,40 +1,0 @@
-package org.openstreetmap.josm.plugins.piclayer;
-
-import javax.swing.Action;
-
-import org.openstreetmap.josm.Main;
-import org.openstreetmap.josm.gui.IconToggleButton;
-
-@SuppressWarnings("serial")
-public class PicToggleButton extends IconToggleButton {
-
-
-    public PicToggleButton(Action action, String btnName, String visibilityKey, boolean defVisibility) {
-        super(action);
-        this.btnName = btnName;
-        this.visibilityKey = visibilityKey;
-        this.defVisibility = defVisibility;
-    }
-
-    private final String visibilityKey;
-    protected final String btnName;
-    private boolean defVisibility;
-
-    public String getVisibilityKey() {
-        return visibilityKey;
-    }
-    public String getBtnName() {
-        return btnName;
-    }
-    public boolean getDefVisibility() {
-        return defVisibility;
-    }
-
-    public void readVisible() {
-        setVisible(Main.pref.getBoolean(getVisibilityKey(), getDefVisibility()));
-    }
-    public void writeVisible() {
-        Main.pref.put(getVisibilityKey(), isVisible());
-    }
-
-}
