Updating All Apps background

- Making background of All Apps black
- Drawing background within All Apps (perf gains)

Change-Id: I164274235bc347de04fab0702b7e7075e499e6c0
This commit is contained in:
Michael Jurka
2011-08-04 15:37:22 -07:00
parent 46180f8132
commit 7bdb25a989
3 changed files with 33 additions and 48 deletions
+2 -1
View File
@@ -15,7 +15,8 @@
-->
<com.android.launcher2.AppsCustomizeTabHost
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher">
xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"
android:background="#FF000000">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
+5
View File
@@ -2173,7 +2173,12 @@ public final class Launcher extends Activity
@Override
public void run() {
exitSpringLoadedDragMode();
if (successfulDrop) {
// Before we show workspace, hide all apps again because
// exitSpringLoadedDragMode made it visible. This is a bit hacky; we should
// clean up our state transition functions
mAppsCustomizeTabHost.setVisibility(View.GONE);
showWorkspace(true);
}
}
+26 -47
View File
@@ -1000,37 +1000,7 @@ public class Workspace extends SmoothPagedView
mDrawBackground = true;
}
private void showBackgroundGradientForAllApps(boolean animated) {
showBackgroundGradient(animated);
}
private void showBackgroundGradient(boolean animated) {
if (mBackground == null) return;
if (mBackgroundFadeOutAnimation != null) {
mBackgroundFadeOutAnimation.cancel();
mBackgroundFadeOutAnimation = null;
}
if (mBackgroundFadeInAnimation != null) {
mBackgroundFadeInAnimation.cancel();
mBackgroundFadeInAnimation = null;
}
final float finalAlpha = 1f;
if (animated) {
mBackgroundFadeInAnimation = ValueAnimator.ofFloat(getBackgroundAlpha(), finalAlpha);
mBackgroundFadeInAnimation.addUpdateListener(new AnimatorUpdateListener() {
public void onAnimationUpdate(ValueAnimator animation) {
setBackgroundAlpha(((Float) animation.getAnimatedValue()).floatValue());
}
});
mBackgroundFadeInAnimation.setInterpolator(new DecelerateInterpolator(1.5f));
mBackgroundFadeInAnimation.setDuration(BACKGROUND_FADE_IN_DURATION);
mBackgroundFadeInAnimation.start();
} else {
setBackgroundAlpha(finalAlpha);
}
}
private void hideBackgroundGradient(float finalAlpha, boolean animated) {
private void animateBackgroundGradient(float finalAlpha, boolean animated) {
if (mBackground == null) return;
if (mBackgroundFadeInAnimation != null) {
mBackgroundFadeInAnimation.cancel();
@@ -1040,18 +1010,21 @@ public class Workspace extends SmoothPagedView
mBackgroundFadeOutAnimation.cancel();
mBackgroundFadeOutAnimation = null;
}
if (animated) {
mBackgroundFadeOutAnimation = ValueAnimator.ofFloat(getBackgroundAlpha(), finalAlpha);
mBackgroundFadeOutAnimation.addUpdateListener(new AnimatorUpdateListener() {
public void onAnimationUpdate(ValueAnimator animation) {
setBackgroundAlpha(((Float) animation.getAnimatedValue()).floatValue());
}
});
mBackgroundFadeOutAnimation.setInterpolator(new DecelerateInterpolator(1.5f));
mBackgroundFadeOutAnimation.setDuration(BACKGROUND_FADE_OUT_DURATION);
mBackgroundFadeOutAnimation.start();
} else {
setBackgroundAlpha(finalAlpha);
float startAlpha = getBackgroundAlpha();
if (finalAlpha != startAlpha) {
if (animated) {
mBackgroundFadeOutAnimation = ValueAnimator.ofFloat(startAlpha, finalAlpha);
mBackgroundFadeOutAnimation.addUpdateListener(new AnimatorUpdateListener() {
public void onAnimationUpdate(ValueAnimator animation) {
setBackgroundAlpha(((Float) animation.getAnimatedValue()).floatValue());
}
});
mBackgroundFadeOutAnimation.setInterpolator(new DecelerateInterpolator(1.5f));
mBackgroundFadeOutAnimation.setDuration(BACKGROUND_FADE_OUT_DURATION);
mBackgroundFadeOutAnimation.start();
} else {
setBackgroundAlpha(finalAlpha);
}
}
}
@@ -1552,8 +1525,6 @@ public class Workspace extends SmoothPagedView
updateWallpaperOffsetImmediately();
}
setChildrenDrawnWithCacheEnabled(true);
showBackgroundGradientForAllApps(animated);
}
@Override
@@ -1925,8 +1896,16 @@ public class Workspace extends SmoothPagedView
}
}
hideBackgroundGradient(springLoaded ? getResources().getInteger(
R.integer.config_appsCustomizeSpringLoadedBgAlpha) / 100f : 0f, animated);
if (springLoaded) {
// Right now we're covered by Apps Customize
// Show the background gradient immediately, so the gradient will
// be showing once AppsCustomize disappears
animateBackgroundGradient(getResources().getInteger(
R.integer.config_appsCustomizeSpringLoadedBgAlpha) / 100f, false);
} else {
// Fade the background gradient away
animateBackgroundGradient(0f, true);
}
}
/**