Index: src/wp-admin/css/customize-widgets.css
===================================================================
--- src/wp-admin/css/customize-widgets.css	(revision 32241)
+++ src/wp-admin/css/customize-widgets.css	(working copy)
@@ -342,7 +342,7 @@
 #available-widgets {
 	position: absolute;
 	overflow: auto;
-	top: 46px;
+	top: 0;
 	bottom: 0;
 	left: -301px;
 	width: 300px;
@@ -354,6 +354,14 @@
 	border-right: 1px solid #dddddd;
 }
 
+#available-widgets-list {
+	top: 46px;
+	position: absolute;
+	overflow: auto;
+	bottom: 0;
+	width: 100%;
+}
+
 #available-widgets-filter {
 	position: fixed;
 	top: 0;
@@ -614,6 +622,7 @@
 
 @media screen and ( max-width: 640px ) {
 	body.adding-widget div#available-widgets {
+		top: 46px;
 		left: 0;
 		z-index: 10;
 		width: 100%;
Index: src/wp-admin/js/customize-widgets.js
===================================================================
--- src/wp-admin/js/customize-widgets.js	(revision 32241)
+++ src/wp-admin/js/customize-widgets.js	(working copy)
@@ -294,7 +294,9 @@
 			// Reset search
 			this.collection.doSearch( '' );
 
-			this.$search.focus();
+			if ( ! api.settings.browser.mobile ) {
+				this.$search.focus();
+			}
 		},
 
 		// Closes the panel
Index: src/wp-includes/class-wp-customize-widgets.php
===================================================================
--- src/wp-includes/class-wp-customize-widgets.php	(revision 32241)
+++ src/wp-includes/class-wp-customize-widgets.php	(working copy)
@@ -668,11 +668,13 @@
 				<label class="screen-reader-text" for="widgets-search"><?php _e( 'Search Widgets' ); ?></label>
 				<input type="search" id="widgets-search" placeholder="<?php esc_attr_e( 'Search widgets&hellip;' ) ?>" />
 			</div>
+			<div id="available-widgets-list">
 			<?php foreach ( $this->get_available_widgets() as $available_widget ): ?>
 				<div id="widget-tpl-<?php echo esc_attr( $available_widget['id'] ) ?>" data-widget-id="<?php echo esc_attr( $available_widget['id'] ) ?>" class="widget-tpl <?php echo esc_attr( $available_widget['id'] ) ?>" tabindex="0">
 					<?php echo $available_widget['control_tpl']; ?>
 				</div>
 			<?php endforeach; ?>
+			</div><!-- #available-widgets-list -->
 		</div><!-- #available-widgets -->
 		</div><!-- #widgets-left -->
 		<?php
