Index: /trunk/build.xml
===================================================================
--- /trunk/build.xml	(revision 15962)
+++ /trunk/build.xml	(revision 15963)
@@ -43,4 +43,5 @@
         <property name="error_prone_core.jar" location="${tools.dir}/error_prone_core.jar"/>
         <property name="error_prone_javac.jar" location="${tools.dir}/error_prone_javac.jar"/>
+        <property name="auto-value-annotations.jar" location="${tools.dir}/auto-value-annotations.jar"/>
         <property name="dataflow.jar" location="${tools.dir}/dataflow.jar"/>
         <property name="javacutil.jar" location="${tools.dir}/javacutil.jar"/>
@@ -102,4 +103,5 @@
             <pathelement location="${guava.jar}"/>
             <pathelement location="${jformatstring.jar}"/>
+            <pathelement location="${auto-value-annotations.jar}"/>
         </path>
     </target>
@@ -357,5 +359,5 @@
             <!-- Undocumented argument to ignore "Sun internal proprietary API" warning, see http://stackoverflow.com/a/13862308/2257172 -->
             <compilerarg value="-XDignore.symbol.file"/>
-            <compilerarg value="-Xplugin:ErrorProne -Xep:CatchAndPrintStackTrace:OFF -Xep:ReferenceEquality:OFF -Xep:StringSplitter:OFF"/>
+            <compilerarg value="-Xplugin:ErrorProne -Xep:CatchAndPrintStackTrace:OFF -Xep:ReferenceEquality:OFF -Xep:StringSplitter:OFF -Xep:BadImport:OFF"/>
             <compilerarg line="-Xmaxwarns 1000"/>
         </javac>
@@ -383,5 +385,5 @@
             <!-- Undocumented argument to ignore "Sun internal proprietary API" warning, see http://stackoverflow.com/a/13862308/2257172 -->
             <compilerarg value="-XDignore.symbol.file"/>
-            <compilerarg value="-Xplugin:ErrorProne -Xep:ReferenceEquality:OFF -Xep:ImmutableEnumChecker:OFF -Xep:FutureReturnValueIgnored:OFF -Xep:FloatingPointLiteralPrecision:OFF -Xep:ShortCircuitBoolean:OFF -Xep:StringSplitter:OFF -Xep:JdkObsolete:OFF -Xep:UnnecessaryParentheses:OFF -Xep:EqualsGetClass:OFF -Xep:ThreadPriorityCheck:OFF -Xep:UndefinedEquals:OFF -Xep:MixedMutabilityReturnType:OFF -Xep:OverrideThrowableToString:OFF -Xep:JavaTimeDefaultTimeZone:OFF -Xep:UnusedVariable:OFF -Xep:EqualsUsingHashCode:OFF"/>
+            <compilerarg value="-Xplugin:ErrorProne -Xep:ReferenceEquality:OFF -Xep:ImmutableEnumChecker:OFF -Xep:FutureReturnValueIgnored:OFF -Xep:FloatingPointLiteralPrecision:OFF -Xep:ShortCircuitBoolean:OFF -Xep:StringSplitter:OFF -Xep:JdkObsolete:OFF -Xep:UnnecessaryParentheses:OFF -Xep:EqualsGetClass:OFF -Xep:ThreadPriorityCheck:OFF -Xep:UndefinedEquals:OFF -Xep:MixedMutabilityReturnType:OFF -Xep:OverrideThrowableToString:OFF -Xep:JavaTimeDefaultTimeZone:OFF -Xep:UnusedVariable:OFF -Xep:EqualsUsingHashCode:OFF -Xep:BadImport:OFF -Xep:UnnecessaryLambda:OFF -Xep:AnnotateFormatMethod:OFF -Xep:MutablePublicArray:OFF"/>
             <compilerarg line="-Xmaxwarns 1000"/>
             <exclude name="org/openstreetmap/josm/io/audio/fx/*.java" if:set="noJavaFX"/>
Index: /trunk/src/org/openstreetmap/josm/actions/AutoScaleAction.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/actions/AutoScaleAction.java	(revision 15962)
+++ /trunk/src/org/openstreetmap/josm/actions/AutoScaleAction.java	(revision 15963)
@@ -33,4 +33,5 @@
 import org.openstreetmap.josm.gui.MapFrameListener;
 import org.openstreetmap.josm.gui.MapView;
+import org.openstreetmap.josm.gui.NavigatableComponent.ZoomChangeListener;
 import org.openstreetmap.josm.gui.dialogs.ConflictDialog;
 import org.openstreetmap.josm.gui.dialogs.LayerListDialog;
@@ -444,5 +445,5 @@
      * Adapter for zoom change events
      */
-    private class ZoomChangeAdapter implements MapView.ZoomChangeListener {
+    private class ZoomChangeAdapter implements ZoomChangeListener {
         @Override
         public void zoomChanged() {
Index: /trunk/src/org/openstreetmap/josm/gui/bbox/SlippyMapBBoxChooser.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/bbox/SlippyMapBBoxChooser.java	(revision 15962)
+++ /trunk/src/org/openstreetmap/josm/gui/bbox/SlippyMapBBoxChooser.java	(revision 15963)
@@ -36,5 +36,10 @@
 import org.openstreetmap.josm.gui.MainApplication;
 import org.openstreetmap.josm.gui.layer.ImageryLayer;
+import org.openstreetmap.josm.gui.layer.LayerManager.LayerAddEvent;
+import org.openstreetmap.josm.gui.layer.LayerManager.LayerChangeListener;
+import org.openstreetmap.josm.gui.layer.LayerManager.LayerOrderChangeEvent;
+import org.openstreetmap.josm.gui.layer.LayerManager.LayerRemoveEvent;
 import org.openstreetmap.josm.gui.layer.MainLayerManager;
+import org.openstreetmap.josm.gui.layer.MainLayerManager.ActiveLayerChangeListener;
 import org.openstreetmap.josm.spi.preferences.Config;
 import org.openstreetmap.josm.tools.Logging;
@@ -43,6 +48,5 @@
  * This panel displays a map and lets the user chose a {@link BBox}.
  */
-public class SlippyMapBBoxChooser extends JosmMapViewer implements BBoxChooser, ChangeListener,
-    MainLayerManager.ActiveLayerChangeListener, MainLayerManager.LayerChangeListener {
+public class SlippyMapBBoxChooser extends JosmMapViewer implements BBoxChooser, ChangeListener, ActiveLayerChangeListener, LayerChangeListener {
 
     /**
@@ -335,5 +339,5 @@
 
     @Override
-    public void layerAdded(MainLayerManager.LayerAddEvent e) {
+    public void layerAdded(LayerAddEvent e) {
         if (e.getAddedLayer() instanceof ImageryLayer) {
             this.refreshTileSources();
@@ -342,5 +346,5 @@
 
     @Override
-    public void layerRemoving(MainLayerManager.LayerRemoveEvent e) {
+    public void layerRemoving(LayerRemoveEvent e) {
         if (e.getRemovedLayer() instanceof ImageryLayer) {
             this.refreshTileSources();
@@ -349,5 +353,5 @@
 
     @Override
-    public void layerOrderChanged(MainLayerManager.LayerOrderChangeEvent e) {
+    public void layerOrderChanged(LayerOrderChangeEvent e) {
         // Do nothing
     }
Index: /trunk/src/org/openstreetmap/josm/gui/layer/AbstractTileSourceLayer.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/layer/AbstractTileSourceLayer.java	(revision 15962)
+++ /trunk/src/org/openstreetmap/josm/gui/layer/AbstractTileSourceLayer.java	(revision 15963)
@@ -12,5 +12,4 @@
 import java.awt.GridBagLayout;
 import java.awt.Image;
-import java.awt.Point;
 import java.awt.Shape;
 import java.awt.Toolkit;
@@ -994,6 +993,6 @@
     private void drawImageInside(Graphics2D g, BufferedImage toDrawImg, TileAnchor anchorImage, TileAnchor anchorScreen, Shape clip) {
         AffineTransform imageToScreen = anchorImage.convert(anchorScreen);
-        Point2D screen0 = imageToScreen.transform(new Point.Double(0, 0), null);
-        Point2D screen1 = imageToScreen.transform(new Point.Double(
+        Point2D screen0 = imageToScreen.transform(new Point2D.Double(0, 0), null);
+        Point2D screen1 = imageToScreen.transform(new Point2D.Double(
                 toDrawImg.getWidth(), toDrawImg.getHeight()), null);
 
@@ -1113,5 +1112,5 @@
             return ((ReprojectionTile) tile).getAnchor();
         } else if (image != null) {
-            return new TileAnchor(new Point.Double(0, 0), new Point.Double(image.getWidth(), image.getHeight()));
+            return new TileAnchor(new Point2D.Double(0, 0), new Point2D.Double(image.getWidth(), image.getHeight()));
         } else {
             return null;
