diff --git a/Code/Visualization/otbArrowKeyMoveActionHandler.h b/Code/Visualization/otbArrowKeyMoveActionHandler.h
index 0454b115e70ae8cd557cd11a110c4a13510f4056..00b180803a8067a357da9c422b74604d8ab2903c 100644
--- a/Code/Visualization/otbArrowKeyMoveActionHandler.h
+++ b/Code/Visualization/otbArrowKeyMoveActionHandler.h
@@ -105,7 +105,7 @@ public:
             index[1] = static_cast<int>(imagePoint[1]);
 
             // Move
-            index[1] -= size[1];
+            index[1] -= size[1]/4;
 
             // Change scaled extract region center
             m_Model->SetExtractRegionCenter(index);
@@ -133,7 +133,7 @@ public:
             index[1] = static_cast<int>(imagePoint[1]);
 
             // Move
-            index[1] += size[1];
+            index[1] += size[1]/4;
 
             // Change scaled extract region center
             m_Model->SetExtractRegionCenter(index);
@@ -161,7 +161,7 @@ public:
             index[1] = static_cast<int>(imagePoint[1]);
 
             // Move
-            index[0] -= size[0];
+            index[0] -= size[0]/4;
 
             // Change scaled extract region center
             m_Model->SetExtractRegionCenter(index);
@@ -189,7 +189,7 @@ public:
             index[1] = static_cast<int>(imagePoint[1]);
 
             // Move
-            index[0] += size[0];
+            index[0] += size[0]/4;
 
             // Change scaled extract region center
             m_Model->SetExtractRegionCenter(index);