From b4b7fa7c0383b6af58d73d3e024b91d586148cf8 Mon Sep 17 00:00:00 2001 From: Winson Chung Date: Thu, 18 Nov 2010 14:38:53 -0800 Subject: Proper fix for missing resource in other devices. Change-Id: Ie164e42a4c5efce763160dae86b8fe3a9da51fd9 --- res/drawable-xlarge/all_apps_bg_gradient.9.png | Bin 0 -> 268 bytes res/drawable/all_apps_bg_gradient.9.png | Bin 268 -> 0 bytes src/com/android/launcher2/Workspace.java | 12 +++++++++--- 3 files changed, 9 insertions(+), 3 deletions(-) create mode 100644 res/drawable-xlarge/all_apps_bg_gradient.9.png delete mode 100644 res/drawable/all_apps_bg_gradient.9.png diff --git a/res/drawable-xlarge/all_apps_bg_gradient.9.png b/res/drawable-xlarge/all_apps_bg_gradient.9.png new file mode 100644 index 000000000..8d88a7ec5 Binary files /dev/null and b/res/drawable-xlarge/all_apps_bg_gradient.9.png differ diff --git a/res/drawable/all_apps_bg_gradient.9.png b/res/drawable/all_apps_bg_gradient.9.png deleted file mode 100644 index 8d88a7ec5..000000000 Binary files a/res/drawable/all_apps_bg_gradient.9.png and /dev/null differ diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java index a8981775b..7a264e35a 100644 --- a/src/com/android/launcher2/Workspace.java +++ b/src/com/android/launcher2/Workspace.java @@ -245,8 +245,12 @@ public class Workspace extends SmoothPagedView mExternalDragOutlinePaint.setAntiAlias(true); setWillNotDraw(false); - final Resources res = getResources(); - mBackground = res.getDrawable(R.drawable.all_apps_bg_gradient); + try { + final Resources res = getResources(); + mBackground = res.getDrawable(R.drawable.all_apps_bg_gradient); + } catch (Resources.NotFoundException e) { + // In this case, we will skip drawing background protection + } mUnshrinkAnimationListener = new LauncherAnimatorListenerAdapter() { @Override @@ -583,6 +587,7 @@ public class Workspace extends SmoothPagedView } public void showBackgroundGradient() { + if (mBackground == null) return; if (mBackgroundFadeOutAnimation != null) mBackgroundFadeOutAnimation.cancel(); if (mBackgroundFadeInAnimation != null) mBackgroundFadeInAnimation.cancel(); mBackgroundFadeInAnimation = ObjectAnimator.ofFloat(this, "backgroundAlpha", 1.0f); @@ -591,6 +596,7 @@ public class Workspace extends SmoothPagedView } public void hideBackgroundGradient() { + if (mBackground == null) return; if (mBackgroundFadeInAnimation != null) mBackgroundFadeInAnimation.cancel(); if (mBackgroundFadeOutAnimation != null) mBackgroundFadeOutAnimation.cancel(); mBackgroundFadeOutAnimation = ObjectAnimator.ofFloat(this, "backgroundAlpha", 0.0f); @@ -683,7 +689,7 @@ public class Workspace extends SmoothPagedView @Override protected void onDraw(Canvas canvas) { // Draw the background gradient if necessary - if (mBackgroundAlpha > 0.0f) { + if (mBackground != null && mBackgroundAlpha > 0.0f) { mBackground.setAlpha((int) (mBackgroundAlpha * 255)); mBackground.setBounds(mScrollX, 0, mScrollX + getMeasuredWidth(), getMeasuredHeight()); mBackground.draw(canvas); -- cgit v1.2.3