Index: wp-admin/includes/class-wp-ms-themes-list-table.php
===================================================================
--- wp-admin/includes/class-wp-ms-themes-list-table.php	(revision 16285)
+++ wp-admin/includes/class-wp-ms-themes-list-table.php	(working copy)
@@ -60,10 +60,13 @@
 		);
 
 		$site_allowed_themes = get_site_allowed_themes(); 
-		if ( !$this->is_site_themes ) 
-			$allowed_themes = $site_allowed_themes; 
-		else 
+		if ( !$this->is_site_themes ) {
+			$allowed_themes = $site_allowed_themes;
+			$themes_per_page = $this->get_items_per_page( 'themes_network_per_page' );
+		} else {
 			$allowed_themes = wpmu_get_blog_allowedthemes( $this->site_id );
+			$themes_per_page = $this->get_items_per_page( 'site_themes_network_per_page' );
+		}
 		
 		$current = get_site_transient( 'update_themes' );
 
@@ -113,8 +116,6 @@
 			uasort( $this->items, array( &$this, '_order_callback' ) );
 		}
 
-		$themes_per_page = $this->get_items_per_page( 'themes_network_per_page' );
-
 		$start = ( $page - 1 ) * $themes_per_page;
 
 		if ( $total_this_page > $themes_per_page )
Index: wp-admin/includes/misc.php
===================================================================
--- wp-admin/includes/misc.php	(revision 16285)
+++ wp-admin/includes/misc.php	(working copy)
@@ -353,6 +353,7 @@
 			case 'users_network_per_page':
 			case 'plugins_network_per_page':
 			case 'themes_network_per_page':
+			case 'site_themes_network_per_page':
 				$value = (int) $value;
 				if ( $value < 1 || $value > 999 )
 					return;
Index: wp-admin/network/site-themes.php
===================================================================
--- wp-admin/network/site-themes.php	(revision 16285)
+++ wp-admin/network/site-themes.php	(working copy)
@@ -86,16 +86,15 @@
 	exit;	
 }
 
+add_thickbox();
+add_screen_option( 'per_page', array( 'label' => _x( 'Themes', 'themes per page (screen options)' ) ) );
+
 $title = sprintf( __('Edit Site: %s'), get_blogaddress_by_id($id));
 $parent_file = 'sites.php';
 $submenu_file = 'sites.php';
 
 require('../admin-header.php');
 
-add_thickbox();
-
-add_screen_option( 'per_page', array('label' => _x( 'Themes', 'themes per page (screen options)' ), 'default' => 999) );
-
 require_once(ABSPATH . 'wp-admin/admin-header.php');
 ?>
 
