summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Jurka <mikejurka@google.com>2011-03-09 15:53:49 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2011-03-09 15:53:49 -0800
commit9496cf9d9e030bb04180afa031e9661650b218c8 (patch)
tree453469ec920bcdce52e86ced2717aebb64096b7f
parent370379f931427ec9234835107a5121538f14abc2 (diff)
parent92c1faec0bc4a3e67bf7984bf4d14d4317ac0b7a (diff)
downloadandroid_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.java7
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;
}