Index: /trunk/src/org/openstreetmap/josm/actions/ImageryAdjustAction.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/actions/ImageryAdjustAction.java	(revision 15732)
+++ /trunk/src/org/openstreetmap/josm/actions/ImageryAdjustAction.java	(revision 15733)
@@ -15,5 +15,4 @@
 import java.awt.event.KeyEvent;
 import java.awt.event.MouseEvent;
-import java.util.Formatter;
 import java.util.Locale;
 
@@ -316,13 +315,6 @@
         private void updateOffsetIntl() {
             if (layer != null) {
-                // Support projections with very small numbers (e.g. 4326)
-                int precision = ProjectionRegistry.getProjection().getDefaultZoomInPPD() >= 1.0 ? 2 : 7;
-                // US locale to force decimal separator to be '.'
-                try (Formatter us = new Formatter(Locale.US)) {
-                    EastNorth displacement = layer.getDisplaySettings().getDisplacement();
-                    tOffset.setText(us.format(new StringBuilder()
-                        .append("%1.").append(precision).append("f; %1.").append(precision).append('f').toString(),
-                        displacement.east(), displacement.north()).toString());
-                }
+                // ROOT locale to force decimal separator to be '.'
+                tOffset.setText(layer.getDisplaySettings().getDisplacementString(Locale.ROOT));
             }
         }
Index: /trunk/src/org/openstreetmap/josm/gui/dialogs/LayerListDialog.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/dialogs/LayerListDialog.java	(revision 15732)
+++ /trunk/src/org/openstreetmap/josm/gui/dialogs/LayerListDialog.java	(revision 15733)
@@ -21,4 +21,5 @@
 import java.util.Arrays;
 import java.util.List;
+import java.util.Locale;
 import java.util.concurrent.CopyOnWriteArrayList;
 
@@ -73,4 +74,5 @@
 import org.openstreetmap.josm.gui.layer.MainLayerManager.ActiveLayerChangeListener;
 import org.openstreetmap.josm.gui.layer.NativeScaleLayer;
+import org.openstreetmap.josm.gui.layer.imagery.TileSourceDisplaySettings;
 import org.openstreetmap.josm.gui.layer.imagery.TileSourceDisplaySettings.DisplaySettingsChangeEvent;
 import org.openstreetmap.josm.gui.layer.imagery.TileSourceDisplaySettings.DisplaySettingsChangeListener;
@@ -651,5 +653,6 @@
             Layer layer = (Layer) value;
             if (layer instanceof AbstractTileSourceLayer<?>) {
-                if (EastNorth.ZERO.equals(((AbstractTileSourceLayer<?>) layer).getDisplaySettings().getDisplacement())) {
+                final TileSourceDisplaySettings displaySettings = ((AbstractTileSourceLayer<?>) layer).getDisplaySettings();
+                if (EastNorth.ZERO.equals(displaySettings.getDisplacement())) {
                     cb.setSelected(false);
                     cb.setEnabled(false); // TODO: allow reselecting checkbox and thereby setting the old offset again
@@ -658,5 +661,6 @@
                     cb.setSelected(true);
                     cb.setEnabled(true);
-                    cb.setToolTipText(tr("layer has a user-defined offset (click to remove offset)"));
+                    cb.setToolTipText(tr("layer has an offset of {0} (click to remove offset)",
+                            displaySettings.getDisplacementString(Locale.getDefault())));
                 }
 
Index: /trunk/src/org/openstreetmap/josm/gui/layer/imagery/TileSourceDisplaySettings.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/layer/imagery/TileSourceDisplaySettings.java	(revision 15732)
+++ /trunk/src/org/openstreetmap/josm/gui/layer/imagery/TileSourceDisplaySettings.java	(revision 15733)
@@ -3,4 +3,5 @@
 
 import java.util.HashMap;
+import java.util.Locale;
 import java.util.Map;
 import java.util.concurrent.CopyOnWriteArrayList;
@@ -197,4 +198,17 @@
 
     /**
+     * Gets the displacement of the image formatted as a string
+     * @param locale the locale used to format the decimals
+     * @return the displacement string
+     * @see #getDisplacement()
+     * @since 15733
+     */
+    public String getDisplacementString(final Locale locale) {
+        // Support projections with very small numbers (e.g. 4326)
+        int precision = ProjectionRegistry.getProjection().getDefaultZoomInPPD() >= 1.0 ? 2 : 7;
+        return String.format(locale, "%1." + precision + "f; %1." + precision + "f", getDx(), getDy());
+    }
+
+    /**
      * Sets an offset bookmark to use. Loads the displacement from the bookmark.
      *
