Index: wp-content/themes/twentyeleven/content-gallery.php
===================================================================
--- wp-content/themes/twentyeleven/content-gallery.php	(revision 23132)
+++ wp-content/themes/twentyeleven/content-gallery.php	(working copy)
@@ -33,11 +33,27 @@
 
 			<?php else : ?>
 				<?php
-					$images = get_children( array( 'post_parent' => $post->ID, 'post_type' => 'attachment', 'post_mime_type' => 'image', 'orderby' => 'menu_order', 'order' => 'ASC', 'numberposts' => 999 ) );
+					$pattern = get_shortcode_regex();
+					preg_match( "/$pattern/s", get_the_content(), $match );
+					$atts = shortcode_parse_atts( $match[3] );
+					$images = isset( $atts['ids'] ) ? explode( ',', $atts['ids'] ) : false;
+
+					if ( ! $images ) :
+						$images = get_posts( array(
+							'post_parent'    => $post->ID,
+							'fields'         => 'ids',
+							'post_type'      => 'attachment',
+							'post_mime_type' => 'image',
+							'orderby'        => 'menu_order',
+							'order'          => 'ASC',
+							'numberposts'    => 999
+						) );
+					endif;
+
 					if ( $images ) :
 						$total_images = count( $images );
 						$image = array_shift( $images );
-						$image_img_tag = wp_get_attachment_image( $image->ID, 'thumbnail' );
+						$image_img_tag = wp_get_attachment_image( $image, 'thumbnail' );
 				?>
 
 				<figure class="gallery-thumb">
