diff options
author | Michael Jurka <mikejurka@google.com> | 2011-03-09 15:53:49 -0800 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2011-03-09 15:53:49 -0800 |
commit | 9496cf9d9e030bb04180afa031e9661650b218c8 (patch) | |
tree | 453469ec920bcdce52e86ced2717aebb64096b7f | |
parent | 370379f931427ec9234835107a5121538f14abc2 (diff) | |
parent | 92c1faec0bc4a3e67bf7984bf4d14d4317ac0b7a (diff) | |
download | android_packages_apps_Trebuchet-9496cf9d9e030bb04180afa031e9661650b218c8.tar.gz android_packages_apps_Trebuchet-9496cf9d9e030bb04180afa031e9661650b218c8.tar.bz2 android_packages_apps_Trebuchet-9496cf9d9e030bb04180afa031e9661650b218c8.zip |
am 92c1faec: Merge "Fix reported wallpaper offset in portrait mode for live wallpapers" into honeycomb-mr1
* commit '92c1faec0bc4a3e67bf7984bf4d14d4317ac0b7a':
Fix reported wallpaper offset in portrait mode for live wallpapers
-rw-r--r-- | src/com/android/launcher2/Workspace.java | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java index 5a230eb90..5f70bfbeb 100644 --- a/src/com/android/launcher2/Workspace.java +++ b/src/com/android/launcher2/Workspace.java @@ -733,11 +733,15 @@ public class Workspace extends SmoothPagedView private float wallpaperOffsetForCurrentScroll() { Display display = mLauncher.getWindowManager().getDefaultDisplay(); + final boolean isStaticWallpaper = (mWallpaperManager.getWallpaperInfo() == null); // The wallpaper travel width is how far, from left to right, the wallpaper will move // at this orientation (for example, in portrait mode we don't move all the way to the // edges of the wallpaper, or otherwise the parallax effect would be too strong) int wallpaperTravelWidth = (int) (display.getWidth() * wallpaperTravelToScreenWidthRatio(display.getWidth(), display.getHeight())); + if (!isStaticWallpaper) { + wallpaperTravelWidth = mWallpaperWidth; + } // Set wallpaper offset steps (1 / (number of screens - 1)) // We have 3 vertical offset states (centered, and then top/bottom aligned @@ -751,7 +755,6 @@ public class Workspace extends SmoothPagedView // you overscroll as far as you can in landscape mode. Only do this for static wallpapers // because live wallpapers (and probably 3rd party wallpaper providers) rely on the offset // being even intervals from 0 to 1 (eg [0, 0.25, 0.5, 0.75, 1]) - final boolean isStaticWallpaper = (mWallpaperManager.getWallpaperInfo() == null); if (isStaticWallpaper) { int overscrollOffset = (int) (maxOverScroll() * display.getWidth()); scrollProgressOffset += overscrollOffset / (float) getScrollRange(); @@ -761,7 +764,7 @@ public class Workspace extends SmoothPagedView float scrollProgress = mScrollX / (float) scrollRange + scrollProgressOffset; float offsetInDips = wallpaperTravelWidth * scrollProgress + - (mWallpaperWidth - wallpaperTravelWidth) / 2; + (mWallpaperWidth - wallpaperTravelWidth) / 2; // center it float offset = offsetInDips / (float) mWallpaperWidth; return offset; } |