Index: /applications/editors/josm/plugins/photoadjust/src/org/openstreetmap/josm/plugins/photoadjust/PhotoAdjustWorker.java
===================================================================
--- /applications/editors/josm/plugins/photoadjust/src/org/openstreetmap/josm/plugins/photoadjust/PhotoAdjustWorker.java	(revision 36187)
+++ /applications/editors/josm/plugins/photoadjust/src/org/openstreetmap/josm/plugins/photoadjust/PhotoAdjustWorker.java	(revision 36188)
@@ -2,4 +2,5 @@
 package org.openstreetmap.josm.plugins.photoadjust;
 
+import java.awt.event.InputEvent;
 import java.awt.event.MouseEvent;
 import java.util.List;
@@ -26,6 +27,6 @@
     // the photo is moved very far.
     private EastNorth dragOffset;
-    private boolean centerViewIsDisabled = false;
-    private boolean centerViewNeedsEnable = false;
+    private boolean centerViewIsDisabled;
+    private boolean centerViewNeedsEnable;
 
     /**
@@ -82,7 +83,7 @@
             // Check if modifier key is pressed and change to
             // image viewer photo if it is.
-            final boolean isAlt = (evt.getModifiersEx() & MouseEvent.ALT_DOWN_MASK) == MouseEvent.ALT_DOWN_MASK;
-            final boolean isCtrl = (evt.getModifiersEx() & MouseEvent.CTRL_DOWN_MASK) == MouseEvent.CTRL_DOWN_MASK;
-            final boolean isShift = (evt.getModifiersEx() & MouseEvent.SHIFT_DOWN_MASK) == MouseEvent.SHIFT_DOWN_MASK;
+            final boolean isAlt = (evt.getModifiersEx() & InputEvent.ALT_DOWN_MASK) == InputEvent.ALT_DOWN_MASK;
+            final boolean isCtrl = (evt.getModifiersEx() & InputEvent.CTRL_DOWN_MASK) == InputEvent.CTRL_DOWN_MASK;
+            final boolean isShift = (evt.getModifiersEx() & InputEvent.SHIFT_DOWN_MASK) == InputEvent.SHIFT_DOWN_MASK;
             // ignore key press with shift, to not conflict with selection
             if (isShift) {
@@ -112,5 +113,5 @@
                                         changeDirection(img, layer.getImageData(), evt);
                                     }
-                                } else if (isCtrl && isAlt) {
+                                } else if (isCtrl) {
                                     movePhoto(img, layer.getImageData(), evt);
                                 }
@@ -155,5 +156,5 @@
     public void doMouseDragged(MouseEvent evt) {
         if (dragData != null && dragPhoto != null) {
-            if ((evt.getModifiersEx() & MouseEvent.CTRL_DOWN_MASK) == MouseEvent.CTRL_DOWN_MASK) {
+            if ((evt.getModifiersEx() & InputEvent.CTRL_DOWN_MASK) == InputEvent.CTRL_DOWN_MASK) {
                 if (dragData.isImageSelected(dragPhoto)) {
                     for (ImageEntry photo: dragData.getSelectedImages()) {
@@ -200,5 +201,5 @@
      * @param evt Mouse event from one of the mouse adapters.
      */
-    private void movePhoto(ImageEntry photo, ImageData data, MouseEvent evt) {
+    private static void movePhoto(ImageEntry photo, ImageData data, MouseEvent evt) {
         LatLon newPos = MainApplication.getMap().mapView.getLatLon(evt.getX(), evt.getY());
         data.updateImagePosition(photo, newPos);
@@ -214,6 +215,5 @@
         final EastNorth newPosEN = startEN.add(translation);
         final LatLon newPos = MainApplication.getMap().mapView.getProjection().eastNorth2latlon(newPosEN);
-        photo.setPos(newPos);
-        photo.flagNewGpsData();
+        dragData.updateImagePosition(photo, newPos);
     }
 
