diff options
| author | Chih-Chung Chang <chihchung@google.com> | 2011-09-29 13:16:48 +0800 |
|---|---|---|
| committer | Chih-Chung Chang <chihchung@google.com> | 2011-09-29 13:17:45 +0800 |
| commit | 6c1f01e21406a05dc7d3258001aa901bd8628a79 (patch) | |
| tree | 8c4c7e9a9ad6597eb7f263a83fa02393489f13c2 /src | |
| parent | 15457fada6df984afe1b411a548f779bd7757f21 (diff) | |
| download | android_packages_apps_Gallery2-6c1f01e21406a05dc7d3258001aa901bd8628a79.tar.gz android_packages_apps_Gallery2-6c1f01e21406a05dc7d3258001aa901bd8628a79.tar.bz2 android_packages_apps_Gallery2-6c1f01e21406a05dc7d3258001aa901bd8628a79.zip | |
Small UI tweak: only show fade-in animation when the bitmap
has not been available for rendering before.
Change-Id: I57df7911c5afa7aa2eec910d0e21679ed978ddad
Diffstat (limited to 'src')
| -rw-r--r-- | src/com/android/gallery3d/ui/AlbumSetSlidingWindow.java | 13 | ||||
| -rw-r--r-- | src/com/android/gallery3d/ui/AlbumSlidingWindow.java | 12 |
2 files changed, 21 insertions, 4 deletions
diff --git a/src/com/android/gallery3d/ui/AlbumSetSlidingWindow.java b/src/com/android/gallery3d/ui/AlbumSetSlidingWindow.java index 1809084c8..bf6e1dfc3 100644 --- a/src/com/android/gallery3d/ui/AlbumSetSlidingWindow.java +++ b/src/com/android/gallery3d/ui/AlbumSetSlidingWindow.java @@ -340,6 +340,7 @@ public class AlbumSetSlidingWindow implements AlbumSetView.ModelListener { private Texture mContent; private final long mDataVersion; private boolean mIsPanorama; + private boolean mWaitLoadingDisplayed; public GalleryDisplayItem(int slotIndex, int coverIndex, MediaItem item) { super(item); @@ -360,7 +361,11 @@ public class AlbumSetSlidingWindow implements AlbumSetView.ModelListener { if (bitmap != null) { BitmapTexture texture = new BitmapTexture(bitmap, true); texture.setThrottled(true); - updateContent(new FadeInTexture(PLACEHOLDER_COLOR, texture)); + if (mWaitLoadingDisplayed) { + updateContent(new FadeInTexture(PLACEHOLDER_COLOR, texture)); + } else { + updateContent(texture); + } if (mListener != null) mListener.onContentInvalidated(); } } @@ -401,7 +406,11 @@ public class AlbumSetSlidingWindow implements AlbumSetView.ModelListener { (cacheFlag == MediaSet.CACHE_FLAG_FULL) && (cacheStatus != MediaSet.CACHE_STATUS_CACHED_FULL)); - if (mContent != mWaitLoadingTexture && + if (mContent == mWaitLoadingTexture) { + mWaitLoadingDisplayed = true; + } + + if ((mContent instanceof FadeInTexture) && ((FadeInTexture) mContent).isAnimating()) { return RENDER_MORE_FRAME; } else { diff --git a/src/com/android/gallery3d/ui/AlbumSlidingWindow.java b/src/com/android/gallery3d/ui/AlbumSlidingWindow.java index 6dd9c10b9..0d3de97c1 100644 --- a/src/com/android/gallery3d/ui/AlbumSlidingWindow.java +++ b/src/com/android/gallery3d/ui/AlbumSlidingWindow.java @@ -286,6 +286,7 @@ public class AlbumSlidingWindow implements AlbumView.ModelListener { private final int mMediaType; private Texture mContent; private boolean mIsPanorama; + private boolean mWaitLoadingDisplayed; public AlbumDisplayItem(int slotIndex, MediaItem item) { super(item); @@ -307,7 +308,11 @@ public class AlbumSlidingWindow implements AlbumView.ModelListener { if (bitmap != null) { BitmapTexture texture = new BitmapTexture(bitmap, true); texture.setThrottled(true); - updateContent(new FadeInTexture(PLACEHOLDER_COLOR, texture)); + if (mWaitLoadingDisplayed) { + updateContent(new FadeInTexture(PLACEHOLDER_COLOR, texture)); + } else { + updateContent(texture); + } if (mListener != null && isActiveSlot) { mListener.onContentInvalidated(); } @@ -337,11 +342,14 @@ public class AlbumSlidingWindow implements AlbumView.ModelListener { if (mMediaItem != null) path = mMediaItem.getPath(); mSelectionDrawer.draw(canvas, mContent, width, height, getRotation(), path, mMediaType, mIsPanorama); + if (mContent == mWaitLoadingTexture) { + mWaitLoadingDisplayed = true; + } int result = 0; if (mFocusIndex == mSlotIndex) { result |= RENDER_MORE_PASS; } - if (mContent != mWaitLoadingTexture && + if ((mContent instanceof FadeInTexture) && ((FadeInTexture) mContent).isAnimating()) { result |= RENDER_MORE_FRAME; } |
