Index: /applications/editors/josm/plugins/imageryadjust/build.xml
===================================================================
--- /applications/editors/josm/plugins/imageryadjust/build.xml	(revision 33253)
+++ /applications/editors/josm/plugins/imageryadjust/build.xml	(revision 33254)
@@ -2,5 +2,5 @@
 <project name="imageryadjust" default="dist" basedir=".">
     <property name="commit.message" value="ImageryAdjust: Adjust while holding shortcut key"/>
-    <property name="plugin.main.version" value="10580"/>
+    <property name="plugin.main.version" value="11713"/>
 
     <property name="plugin.author" value="Upliner"/>
Index: /applications/editors/josm/plugins/imageryadjust/src/imageryadjust/ImageryAdjustMapMode.java
===================================================================
--- /applications/editors/josm/plugins/imageryadjust/src/imageryadjust/ImageryAdjustMapMode.java	(revision 33253)
+++ /applications/editors/josm/plugins/imageryadjust/src/imageryadjust/ImageryAdjustMapMode.java	(revision 33254)
@@ -6,5 +6,4 @@
 import java.awt.Cursor;
 import java.awt.GridBagLayout;
-import java.awt.event.ActionEvent;
 import java.awt.event.KeyEvent;
 import java.awt.event.MouseEvent;
@@ -35,5 +34,4 @@
 import org.openstreetmap.josm.tools.Shortcut;
 
-
 public class ImageryAdjustMapMode extends MapMode implements MouseListener, MouseMotionListener, MapFrame.MapModeChangeListener{
     boolean mouseDown;
@@ -41,12 +39,10 @@
     private ImageryLayer adjustingLayer;
     private MapMode oldMapMode;
-
-    
-    public ImageryAdjustMapMode(MapFrame mapFrame) {
+    
+    public ImageryAdjustMapMode() {
         super(tr("Adjust imagery"), "adjustimg",
                 tr("Adjust the position of the selected imagery layer"), 
                 Shortcut.registerShortcut("imageryadjust:adjustmode", tr("Mode: {0}", tr("Adjust imagery")),
                 KeyEvent.VK_Y, Shortcut.ALT_CTRL),
-                mapFrame,
                 ImageProvider.getCursor("normal", "move"));
         MapFrame.addMapModeChangeListener(this);
@@ -54,5 +50,5 @@
     
     private List<? extends Layer> getVisibleLayers() {
-        List<? extends Layer> all = new ArrayList<Layer>(Main.getLayerManager().getLayersOfType(ImageryLayer.class));
+        List<? extends Layer> all = new ArrayList<>(Main.getLayerManager().getLayersOfType(ImageryLayer.class));
         Iterator<? extends Layer> it = all.iterator();
         while (it.hasNext()) {
@@ -61,10 +57,4 @@
         return all;
     }
-
-    @Override
-    public void actionPerformed(ActionEvent e) {
-        super.actionPerformed(e);
-    }
-    
     
     TimedKeyReleaseListener listener;
@@ -93,12 +83,19 @@
                 protected void doKeyReleaseEvent(KeyEvent evt) {
                     if (releaseEvent.getKeyCode() == getShortcut().getKeyStroke().getKeyCode()) {
-                    if (oldMapMode!=null && !(oldMapMode instanceof ImageryAdjustMapMode))
-                    Main.map.selectMapMode(oldMapMode);
+                        if (oldMapMode!=null && !(oldMapMode instanceof ImageryAdjustMapMode)) {
+                            Main.map.selectMapMode(oldMapMode);
+                        }
+                    }
                 }
-            }
+
+                @Override
+                protected void doKeyPressEvent(KeyEvent evt) {
+                    // Do nothing ?
+                }
         };
     }
 
-    @Override public void exitMode() {
+    @Override
+    public void exitMode() {
         super.exitMode();
         Main.map.mapView.removeMouseListener(this);
@@ -108,5 +105,6 @@
     }
 
-    @Override public void mousePressed(MouseEvent e) {
+    @Override
+    public void mousePressed(MouseEvent e) {
         if (e.getButton() != MouseEvent.BUTTON1)
             return;
@@ -124,8 +122,10 @@
         EastNorth eastNorth=
             Main.map.mapView.getEastNorth(e.getX(),e.getY());
+        /* FIXME if this is needed. Comment from JOSM core when displace method has been deprecated:
+        // moved to AbstractTileSourceLayer/TileSourceDisplaySettings. Remains until all actions migrate.
         adjustingLayer.displace(
                 eastNorth.east()-prevEastNorth.east(),
                 eastNorth.north()-prevEastNorth.north()
-        );
+        );*/
         prevEastNorth = eastNorth;
         Main.map.mapView.repaint();
@@ -182,5 +182,5 @@
      */
     protected Layer askAdjustLayer(List<? extends Layer> adjustableLayers) {
-        if (adjustableLayers.size()==0) return null;
+        if (adjustableLayers.isEmpty()) return null;
         if (adjustableLayers.size()==1) return adjustableLayers.get(0);
         JComboBox<Layer> layerList = new JComboBox<>();
@@ -205,11 +205,9 @@
         if (decision != 1)
             return null;
-        Layer adjustLayer = (Layer) layerList.getSelectedItem();
-        return adjustLayer;
+        return (Layer) layerList.getSelectedItem();
     }
 
     /**
      * Displays a warning message if there are no imagery layers to adjust
-     *
      */
     protected void warnNoImageryLayers() {
@@ -224,5 +222,4 @@
     /**
      * Replies true if there is at least one imagery layer
-     *
      * @return true if there is at least one imagery layer
      */
@@ -230,13 +227,10 @@
         if (Main.map == null) return false;
         if (Main.map.mapView == null) return false;
-        boolean b = ! Main.getLayerManager().getLayersOfType(ImageryLayer.class).isEmpty();
-        return b;
+        return ! Main.getLayerManager().getLayersOfType(ImageryLayer.class).isEmpty();
     }
 
     @Override
     protected void updateEnabledState() {
-        
         setEnabled(hasImageryLayersToAdjust());
-        //setEnabled(hasImageryLayersToAdjust());
     }
 }
Index: /applications/editors/josm/plugins/imageryadjust/src/imageryadjust/ImageryAdjustPlugin.java
===================================================================
--- /applications/editors/josm/plugins/imageryadjust/src/imageryadjust/ImageryAdjustPlugin.java	(revision 33253)
+++ /applications/editors/josm/plugins/imageryadjust/src/imageryadjust/ImageryAdjustPlugin.java	(revision 33254)
@@ -15,5 +15,5 @@
     public void mapFrameInitialized(MapFrame oldFrame, MapFrame newFrame) {
         if (oldFrame == null && newFrame != null) {
-        newFrame.addMapMode(new IconToggleButton(new ImageryAdjustMapMode(newFrame)));
+            newFrame.addMapMode(new IconToggleButton(new ImageryAdjustMapMode()));
         }
     }
Index: /applications/editors/josm/plugins/imageryadjust/src/imageryadjust/TimedKeyReleaseListener.java
===================================================================
--- /applications/editors/josm/plugins/imageryadjust/src/imageryadjust/TimedKeyReleaseListener.java	(revision 33253)
+++ /applications/editors/josm/plugins/imageryadjust/src/imageryadjust/TimedKeyReleaseListener.java	(revision 33254)
@@ -4,11 +4,11 @@
 import java.awt.Toolkit;
 import java.awt.event.AWTEventListener;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
 import java.awt.event.KeyEvent;
 import java.util.TreeSet;
 import javax.swing.Timer;
 
-public class TimedKeyReleaseListener implements AWTEventListener {
+import org.openstreetmap.josm.Main;
+
+public abstract class TimedKeyReleaseListener implements AWTEventListener {
     private final TreeSet<Integer> set = new TreeSet<>();
     private Timer timer;
@@ -16,12 +16,9 @@
     
     public TimedKeyReleaseListener() {
-        timer = new Timer(0, new ActionListener() {
-            @Override
-            public void actionPerformed(ActionEvent ae) {
-                 timer.stop();
-                 if (set.remove(releaseEvent.getKeyCode())) {
-                  doKeyReleaseEvent(releaseEvent);
-                 }
-            }
+        timer = new Timer(0, ae -> {
+             timer.stop();
+             if (set.remove(releaseEvent.getKeyCode())) {
+                 doKeyReleaseEvent(releaseEvent);
+             }
         });
         
@@ -30,4 +27,5 @@
                     AWTEvent.KEY_EVENT_MASK);
         } catch (SecurityException ex) {
+            Main.error(ex);
         }
     }
@@ -59,11 +57,10 @@
             Toolkit.getDefaultToolkit().removeAWTEventListener(this);
         } catch (SecurityException ex) {
+            Main.error(ex);
         }
     }
     
-    protected void doKeyReleaseEvent(KeyEvent evt) {
-    }
+    protected abstract void doKeyReleaseEvent(KeyEvent evt);
 
-    protected void doKeyPressEvent(KeyEvent evt) {
-    }
+    protected abstract void doKeyPressEvent(KeyEvent evt);
 }
