am 340c5f3a: Restore wallpaper parallax
* commit '340c5f3a708efa280a120708594247952ca65182': Restore wallpaper parallax
This commit is contained in:
@@ -550,12 +550,12 @@ public final class Launcher extends Activity
|
||||
WallpaperManager wpm = (WallpaperManager)getSystemService(WALLPAPER_SERVICE);
|
||||
|
||||
Display display = getWindowManager().getDefaultDisplay();
|
||||
// TODO: Put back when we decide about scrolling the wallpaper
|
||||
// boolean isPortrait = display.getWidth() < display.getHeight();
|
||||
// final int width = isPortrait ? display.getWidth() : display.getHeight();
|
||||
// final int height = isPortrait ? display.getHeight() : display.getWidth();
|
||||
wpm.suggestDesiredDimensions(Math.max(display.getWidth(), display.getHeight()),
|
||||
Math.max(display.getWidth(), display.getHeight()));
|
||||
boolean isPortrait = display.getWidth() < display.getHeight();
|
||||
// find width and height when in portrait mode
|
||||
final int width = isPortrait ? display.getWidth() : display.getHeight();
|
||||
final int height = isPortrait ? display.getHeight() : display.getWidth();
|
||||
wpm.suggestDesiredDimensions((int) (Math.max(width, height) * 1.5f),
|
||||
Math.max(width, height));
|
||||
}
|
||||
|
||||
// Note: This doesn't do all the client-id magic that BrowserProvider does
|
||||
|
||||
@@ -394,7 +394,7 @@ public class Workspace extends SmoothPagedView
|
||||
@Override
|
||||
void setCurrentPage(int currentPage) {
|
||||
super.setCurrentPage(currentPage);
|
||||
updateWallpaperOffset(mScrollX);
|
||||
updateWallpaperOffset();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -558,19 +558,25 @@ public class Workspace extends SmoothPagedView
|
||||
Launcher.setScreen(mCurrentPage);
|
||||
};
|
||||
|
||||
private void updateWallpaperOffset(int scrollRange) {
|
||||
final boolean isStaticWallpaper = (mWallpaperManager != null) &&
|
||||
(mWallpaperManager.getWallpaperInfo() == null);
|
||||
if (LauncherApplication.isScreenXLarge() && !isStaticWallpaper) {
|
||||
private void updateWallpaperOffset() {
|
||||
if (LauncherApplication.isScreenXLarge()) {
|
||||
IBinder token = getWindowToken();
|
||||
int scrollRange = getChildOffset(getChildCount() - 1) - getChildOffset(0);
|
||||
if (token != null) {
|
||||
mWallpaperManager.setWallpaperOffsetSteps(1.0f / (getChildCount() - 1), 0 );
|
||||
mWallpaperManager.setWallpaperOffsetSteps(1.0f / (getChildCount() - 1), 0);
|
||||
float offset = mScrollX / (float) scrollRange;
|
||||
mWallpaperManager.setWallpaperOffsets(getWindowToken(),
|
||||
Math.max(0.f, Math.min(mScrollX/(float)scrollRange, 1.f)), 0);
|
||||
Math.max(0.f, Math.min(offset, 1.0f)), 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void computeScroll() {
|
||||
super.computeScroll();
|
||||
updateWallpaperOffset();
|
||||
}
|
||||
|
||||
public void showOutlines() {
|
||||
if (!mIsSmall && !mIsInUnshrinkAnimation) {
|
||||
if (mChildrenOutlineFadeOutAnimation != null) mChildrenOutlineFadeOutAnimation.cancel();
|
||||
|
||||
Reference in New Issue
Block a user