Index: src/wp-admin/js/theme.js
===================================================================
--- src/wp-admin/js/theme.js	(revision 28777)
+++ src/wp-admin/js/theme.js	(working copy)
@@ -362,7 +362,6 @@
 
 	events: {
 		'click': themes.isInstall ? 'preview': 'expand',
-		'click .preview': 'preview',
 		'keydown': themes.isInstall ? 'preview': 'expand',
 		'touchend': themes.isInstall ? 'preview': 'expand',
 		'keyup': 'addFocus',
@@ -487,7 +486,7 @@
 			preview.$el.removeClass( 'no-navigation' );
 		}
 
-		// Apend preview
+		// Append preview
 		$( 'div.wrap' ).append( preview.el );
 
 		// Listen to our preview object
@@ -511,15 +510,11 @@
 				return self.current = current;
 			}
 
-			// Construct a new Preview view.
-			preview = new themes.view.Preview({
-				model: self.current
-			});
+			preview.model = self.current;
 
 			// Render and append.
 			preview.render();
 			this.setNavButtonsState();
-			$( 'div.wrap' ).append( preview.el );
 			$( '.next-theme' ).focus();
 		})
 		.listenTo( preview, 'theme:previous', function() {
@@ -545,15 +540,11 @@
 				return;
 			}
 
-			// Construct a new Preview view.
-			preview = new themes.view.Preview({
-				model: self.current
-			});
+			preview.model = self.current;
 
 			// Render and append.
 			preview.render();
 			this.setNavButtonsState();
-			$( 'div.wrap' ).append( preview.el );
 			$( '.previous-theme' ).focus();
 		});
 
@@ -786,6 +777,7 @@
 
 		themes.router.navigate( themes.router.baseUrl( '' ) );
 		this.trigger( 'preview:close' );
+		this.undelegateEvents();
 		this.unbind();
 		return false;
 	},
