Merge "Fix Colors crashing on rotation"
diff --git a/src/com/android/dreams/basic/Colors.java b/src/com/android/dreams/basic/Colors.java
index d30c174..5bff87b 100644
--- a/src/com/android/dreams/basic/Colors.java
+++ b/src/com/android/dreams/basic/Colors.java
@@ -53,14 +53,6 @@
 
         setInteractive(false);
 
-        mSurfaceView = new SurfaceView(this);
-        mSurfaceView.getHolder().addCallback(this);
-
-        if (mRendererHandlerThread == null) {
-            mRendererHandlerThread = new HandlerThread(TAG);
-            mRendererHandlerThread.start();
-            mRendererHandler = new Handler(mRendererHandlerThread.getLooper());
-        }
     }
 
     @Override
@@ -68,6 +60,10 @@
         super.onAttachedToWindow();
         setInteractive(false);
         setFullscreen(true);
+
+        mSurfaceView = new SurfaceView(this);
+        mSurfaceView.getHolder().addCallback(this);
+
         setContentView(mSurfaceView);
     }
 
@@ -76,6 +72,10 @@
         LOG("surfaceCreated(%s, %d, %d)", holder.getSurface(),
                 holder.getSurfaceFrame().width(), holder.getSurfaceFrame().height());
 
+        mRendererHandlerThread = new HandlerThread(TAG);
+        mRendererHandlerThread.start();
+        mRendererHandler = new Handler(mRendererHandlerThread.getLooper());
+
         mRendererHandler.post(new Runnable() {
             @Override
             public void run() {