diff options
author | nebkat <nebkat@gmail.com> | 2011-12-22 19:49:22 +0000 |
---|---|---|
committer | Ricardo Cerqueira <cyanogenmod@cerqueira.org> | 2012-08-13 14:23:50 +0100 |
commit | 581ab43494c1ff7bc0ef7562e66475744190ec07 (patch) | |
tree | ba4a9d0e098e8d3068ca426e3690d7f989f72207 /src/com/cyanogenmod/trebuchet/Workspace.java | |
parent | 680efbe9a173a761570b2d7a6e5df39f32b3d1e4 (diff) | |
download | android_packages_apps_Trebuchet-581ab43494c1ff7bc0ef7562e66475744190ec07.tar.gz android_packages_apps_Trebuchet-581ab43494c1ff7bc0ef7562e66475744190ec07.tar.bz2 android_packages_apps_Trebuchet-581ab43494c1ff7bc0ef7562e66475744190ec07.zip |
Preferences: Scroll Wallpaper
Change-Id: If20b0f45cc773f7e03565b638ae745ced3070d5c
Diffstat (limited to 'src/com/cyanogenmod/trebuchet/Workspace.java')
-rw-r--r-- | src/com/cyanogenmod/trebuchet/Workspace.java | 34 |
1 files changed, 28 insertions, 6 deletions
diff --git a/src/com/cyanogenmod/trebuchet/Workspace.java b/src/com/cyanogenmod/trebuchet/Workspace.java index cd60d5cff..6845cd1ca 100644 --- a/src/com/cyanogenmod/trebuchet/Workspace.java +++ b/src/com/cyanogenmod/trebuchet/Workspace.java @@ -263,6 +263,7 @@ public class Workspace extends SmoothPagedView private int mDefaultHomescreen; private boolean mShowSearchBar; private boolean mResizeAnyWidget; + private boolean mScrollWallpaper; private boolean mShowScrollingIndicator; /** @@ -338,6 +339,7 @@ public class Workspace extends SmoothPagedView } mShowSearchBar = PreferencesProvider.Interface.Homescreen.getShowSearchBar(context); mResizeAnyWidget = PreferencesProvider.Interface.Homescreen.getResizeAnyWidget(context); + mScrollWallpaper = PreferencesProvider.Interface.Homescreen.getScrollWallpaper(context); mShowScrollingIndicator = PreferencesProvider.Interface.Homescreen.getShowScrollingIndicator(context); mLauncher = (Launcher) context; @@ -480,8 +482,10 @@ public class Workspace extends SmoothPagedView mWallpaperOffset = new WallpaperOffsetInterpolator(); Display display = mLauncher.getWindowManager().getDefaultDisplay(); display.getSize(mDisplaySize); - mWallpaperTravelWidth = (int) (mDisplaySize.x * - wallpaperTravelToScreenWidthRatio(mDisplaySize.x, mDisplaySize.y)); + if (mScrollWallpaper) { + mWallpaperTravelWidth = (int) (mDisplaySize.x * + wallpaperTravelToScreenWidthRatio(mDisplaySize.x, mDisplaySize.y)); + } mMaxDistanceForFolderCreation = (0.55f * res.getDimensionPixelSize(R.dimen.app_icon_size)); mFlingThresholdVelocity = (int) (FLING_THRESHOLD_VELOCITY * mDensity); @@ -963,6 +967,13 @@ public class Workspace extends SmoothPagedView } } + private void centerWallpaperOffset() { + if (mWindowToken != null) { + mWallpaperManager.setWallpaperOffsetSteps(0.5f, 0); + mWallpaperManager.setWallpaperOffsets(mWindowToken, 0.5f, 0); + } + } + public void updateWallpaperOffsetImmediately() { mUpdateWallpaperOffsetImmediately = true; } @@ -992,13 +1003,17 @@ public class Workspace extends SmoothPagedView @Override protected void updateCurrentPageScroll() { super.updateCurrentPageScroll(); - computeWallpaperScrollRatio(mCurrentPage); + if (mScrollWallpaper) { + computeWallpaperScrollRatio(mCurrentPage); + } } @Override protected void snapToPage(int whichPage) { super.snapToPage(whichPage); - computeWallpaperScrollRatio(whichPage); + if (mScrollWallpaper) { + computeWallpaperScrollRatio(whichPage); + } } @Override @@ -1145,7 +1160,9 @@ public class Workspace extends SmoothPagedView @Override public void computeScroll() { super.computeScroll(); - syncWallpaperOffsetWithScroll(); + if (mScrollWallpaper) { + syncWallpaperOffsetWithScroll(); + } } void showOutlines() { @@ -1373,7 +1390,9 @@ public class Workspace extends SmoothPagedView @Override protected void onDraw(Canvas canvas) { - updateWallpaperOffsets(); + if (mScrollWallpaper) { + updateWallpaperOffsets(); + } // Draw the background gradient if necessary if (mBackground != null && mBackgroundAlpha > 0.0f && mDrawBackground) { @@ -3376,6 +3395,9 @@ public class Workspace extends SmoothPagedView // needed updateChildrenLayersEnabled(); setWallpaperDimension(); + if (!mScrollWallpaper) { + centerWallpaperOffset(); + } } /** |