Index: trunk/src/org/openstreetmap/josm/gui/MapView.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/MapView.java	(revision 13142)
+++ trunk/src/org/openstreetmap/josm/gui/MapView.java	(revision 13143)
@@ -910,4 +910,14 @@
     }
 
+    @Override
+    protected void refreshMouse() {
+        if (lastMEvent.getWhen() > 0) {
+            // This fake movement allows to keep consistent state between mouse position and hilighted primitives, status bar, etc.
+            // When the map is not moved by mouse (for example with keyboard shortcuts)
+            dispatchEvent(new MouseEvent(this, MouseEvent.MOUSE_MOVED, System.currentTimeMillis(), 0,
+                    lastMEvent.getX(), lastMEvent.getY(), 0, false));
+        }
+    }
+
     /**
      * Returns the layer manager.
Index: trunk/src/org/openstreetmap/josm/gui/NavigatableComponent.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/NavigatableComponent.java	(revision 13142)
+++ trunk/src/org/openstreetmap/josm/gui/NavigatableComponent.java	(revision 13143)
@@ -697,6 +697,11 @@
         if (!initial) {
             repaint();
+            refreshMouse();
             fireZoomChanged();
         }
+    }
+
+    protected void refreshMouse() {
+        // To be overriden by subclasses handling mouse events
     }
 
