diff --git a/res/values/colors.xml b/res/values/colors.xml
index 6c4a791..7c2ffcc 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -27,7 +27,7 @@
 
     <!-- configuration for album page -->
     <color name="album_background">#fafafa</color>
-    <color name="album_placeholder">#75000000</color>
+    <color name="album_placeholder">#fafafa</color>
 
     <!-- configuration for photo page -->
     <color name="photo_background">#1A1A1A</color>
diff --git a/src/com/android/gallery3d/ui/TimeLineSlotRenderer.java b/src/com/android/gallery3d/ui/TimeLineSlotRenderer.java
index b0a8a0c..a9ee9a8 100644
--- a/src/com/android/gallery3d/ui/TimeLineSlotRenderer.java
+++ b/src/com/android/gallery3d/ui/TimeLineSlotRenderer.java
@@ -23,13 +23,10 @@
 import com.android.gallery3d.data.MediaObject;
 import com.android.gallery3d.data.Path;
 import com.android.gallery3d.glrenderer.ColorTexture;
-import com.android.gallery3d.glrenderer.FadeInTexture;
 import com.android.gallery3d.glrenderer.GLCanvas;
 import com.android.gallery3d.glrenderer.Texture;
 import com.android.gallery3d.glrenderer.TiledTexture;
 
-import java.util.ArrayList;
-
 public class TimeLineSlotRenderer extends AbstractSlotRenderer {
 
     @SuppressWarnings("unused")
@@ -197,14 +194,8 @@
                 entry.isWaitDisplayed = true;
             } else if (entry.isWaitDisplayed) {
                 entry.isWaitDisplayed = false;
-                content = new FadeInTexture(mPlaceholderColor, entry.bitmapTexture);
-                entry.content = content;
             }
             drawContent(canvas, content, width, height, entry.rotation);
-            if ((content instanceof FadeInTexture) &&
-                    ((FadeInTexture) content).isAnimating()) {
-                renderRequestFlags |= SlotView.RENDER_MORE_FRAME;
-            }
 
             if (entry.mediaType == MediaObject.MEDIA_TYPE_VIDEO) {
                 drawVideoOverlay(canvas, width, height, true, 0);
