diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java
index bfda303..c960412 100644
--- a/src/com/android/launcher2/Workspace.java
+++ b/src/com/android/launcher2/Workspace.java
@@ -272,6 +272,7 @@
         clearVacantCache();
         mCurrentScreen = Math.max(0, Math.min(currentScreen, getChildCount() - 1));
         scrollTo(mCurrentScreen * getWidth(), 0);
+        updateWallpaperOffset();
         invalidate();
     }
 
@@ -456,9 +457,11 @@
     }
 
     private void updateWallpaperOffset() {
-        int scrollRange = getChildAt(getChildCount()-1).getRight()-getWidth();
-        mWallpaperManager.setWallpaperOffsets(getWindowToken(),
-                mScrollX/(float)scrollRange, 0);
+        updateWallpaperOffset(getChildAt(getChildCount() - 1).getRight() - (mRight - mLeft));
+    }
+
+    private void updateWallpaperOffset(int scrollRange) {
+        mWallpaperManager.setWallpaperOffsets(getWindowToken(), mScrollX / (float) scrollRange, 0);
     }
     
     @Override
@@ -548,6 +551,7 @@
 
         if (mFirstLayout) {
             scrollTo(mCurrentScreen * width, 0);
+            updateWallpaperOffset(width * (getChildCount() - 1));
             mFirstLayout = false;
         }
     }
