\ No newline at end of file
diff --git src/wp-admin/edit-tags.php src/wp-admin/edit-tags.php
index 846928c..a374981 100644
--- src/wp-admin/edit-tags.php
+++ src/wp-admin/edit-tags.php
@@ -167,6 +167,24 @@ case 'edit':
 
 	exit;
 
+case 'edit-parent':
+        $parent_id = (int) $_REQUEST['parent'];
+    
+        if ($parent_id != -1) {
+             $terms = (array) $_REQUEST['delete_tags'];
+             
+             foreach ($terms as $term_id) {
+                 if ($term_id == $parent_id)
+                    continue;
+                    $update_parent = wp_update_term($term_id, $_REQUEST['taxonomy'], array('parent' => $parent_id));
+
+                if ($update_parent && !is_wp_error($update_parent))
+                     $location = add_query_arg('message', 3, $location);
+            }
+        }
+        
+    break;		
+
 case 'editedtag':
 	$tag_ID = (int) $_POST['tag_ID'];
 	check_admin_referer( 'update-tag_' . $tag_ID );
diff --git src/wp-admin/includes/class-wp-terms-list-table.php src/wp-admin/includes/class-wp-terms-list-table.php
index 765b1a3..6c47fd8 100644
--- src/wp-admin/includes/class-wp-terms-list-table.php
+++ src/wp-admin/includes/class-wp-terms-list-table.php
@@ -152,6 +152,10 @@ class WP_Terms_List_Table extends WP_List_Table {
 	protected function get_bulk_actions() {
 		$actions = array();
 		$actions['delete'] = __( 'Delete' );
+                
+                if ( is_taxonomy_hierarchical( $this->screen->taxonomy ) ) { 
+                    $actions['edit'] = __( 'Edit' ); 
+                } 
 
 		return $actions;
 	}
@@ -161,8 +165,11 @@ class WP_Terms_List_Table extends WP_List_Table {
 	 * @return string
 	 */
 	public function current_action() {
-		if ( isset( $_REQUEST['action'] ) && isset( $_REQUEST['delete_tags'] ) && ( 'delete' === $_REQUEST['action'] || 'delete' === $_REQUEST['action2'] ) )
+		if ( isset( $_REQUEST['action'] ) && isset( $_REQUEST['delete_tags'] ) && ( 'delete' === $_REQUEST['action'] || 'delete' === $_REQUEST['action2'] ) ) {
 			return 'bulk-delete';
+                } else if ( isset( $_REQUEST['action'] ) && isset( $_REQUEST['delete_tags'] ) && ( 'edit' == $_REQUEST['action'] || 'edit-category' == $_REQUEST['screen'] ) ) { 
+                        return 'edit-parent';                     
+                }
 
 		return parent::current_action();
 	}
@@ -555,49 +562,111 @@ class WP_Terms_List_Table extends WP_List_Table {
 ?>
 
 	<form method="get"><table style="display: none"><tbody id="inlineedit">
-		<tr id="inline-edit" class="inline-edit-row" style="display: none"><td colspan="<?php echo $this->get_column_count(); ?>" class="colspanchange">
-
-			<fieldset>
-				<legend class="inline-edit-legend"><?php _e( 'Quick Edit' ); ?></legend>
-				<div class="inline-edit-col">
-				<label>
-					<span class="title"><?php _ex( 'Name', 'term name' ); ?></span>
-					<span class="input-text-wrap"><input type="text" name="name" class="ptitle" value="" /></span>
-				</label>
-	<?php if ( !global_terms_enabled() ) { ?>
-				<label>
-					<span class="title"><?php _e( 'Slug' ); ?></span>
-					<span class="input-text-wrap"><input type="text" name="slug" class="ptitle" value="" /></span>
-				</label>
-	<?php } ?>
-			</div></fieldset>
-	<?php
-
-		$core_columns = array( 'cb' => true, 'description' => true, 'name' => true, 'slug' => true, 'posts' => true );
-
-		list( $columns ) = $this->get_column_info();
-
-		foreach ( $columns as $column_name => $column_display_name ) {
-			if ( isset( $core_columns[$column_name] ) )
-				continue;
-
-			/** This action is documented in wp-admin/includes/class-wp-posts-list-table.php */
-			do_action( 'quick_edit_custom_box', $column_name, 'edit-tags', $this->screen->taxonomy );
-		}
-
-	?>
-
-		<p class="inline-edit-save submit">
-			<button type="button" class="cancel button-secondary alignleft"><?php _e( 'Cancel' ); ?></button>
-			<button type="button" class="save button-primary alignright"><?php echo $tax->labels->update_item; ?></button>
-			<span class="spinner"></span>
-			<span class="error" style="display:none;"></span>
-			<?php wp_nonce_field( 'taxinlineeditnonce', '_inline_edit', false ); ?>
-			<input type="hidden" name="taxonomy" value="<?php echo esc_attr( $this->screen->taxonomy ); ?>" />
-			<input type="hidden" name="post_type" value="<?php echo esc_attr( $this->screen->post_type ); ?>" />
-			<br class="clear" />
-		</p>
-		</td></tr>
+		
+            <?php
+
+                    $core_columns = array( 'cb' => true, 'description' => true, 'name' => true, 'slug' => true, 'posts' => true );
+
+                    list( $columns ) = $this->get_column_info();
+
+                    foreach ( $columns as $column_name => $column_display_name ) {
+                            if ( isset( $core_columns[$column_name] ) )
+                                    continue;
+
+                            if ( $bulk ) {  
+                                do_action( 'bulk_edit_custom_box', $column_name, $this->screen->taxonomy ); 
+                            } else {   
+                                /** This action is documented in wp-admin/includes/class-wp-posts-list-table.php */
+                                do_action( 'quick_edit_custom_box', $column_name, 'edit-tags', $this->screen->taxonomy );
+                            }
+                    }
+
+            ?>                    
+            <?php  
+
+                    $bulk = 0;                   
+                    while ( $bulk < 2 ) {   
+            ?>  
+                    <tr id="<?php echo $bulk ? 'bulk-edit' : 'inline-edit'; ?>" class="inline-edit-row inline-edit-row-<?php echo "inline-edit-" . $this->screen->taxonomy; echo $bulk ? " bulk-edit-row bulk-edit-row bulk-edit-{$this->screen->taxonomy}" : " quick-edit-row quick-edit-row inline-edit-{$this->screen->taxonomy}"; ?>" style="display: none">
+                        <td colspan="<?php echo $this->get_column_count(); ?>" class="colspanchange">
+                            <?php if ($bulk) : ?>
+                            
+                                <fieldset class="inline-edit-col-left">                                       
+                                    <legend class="inline-edit-legend"><?php echo __('Bulk Edit'); ?></legend>                                        
+                                    <div class="inline-edit-col">
+                                        <div id="bulk-title-div">
+                                            <div id="bulk-titles"></div>
+                                        </div>                                              
+                                    </div>
+                                 </fieldset>
+                                <fieldset class="inline-edit-col-left">                                       
+                                    <span class="title inline-edit-categories-label"><?php _e('Parent Category') ?></span>  
+                                    <div class="inline-edit-col">
+                                        <div class="bulk-edit-col">                                                        
+                                            <?php
+                                             
+                                                wp_dropdown_categories(array(
+                                                     'hide_empty' => 0,
+                                                     'hide_if_empty' => false,
+                                                     'name' => 'parent',
+                                                     'orderby' => 'name',
+                                                     'taxonomy' => $this->screen->taxonomy,
+                                                     'hierarchical' => true,
+                                                     'show_option_none' => __('None')
+                                                ));
+                                            
+                                            ?>
+                                        </div>
+                                     </div>     
+                                     </div>
+                                </fieldset>
+                            <?php else :  ?>
+                                <fieldset>                                       
+                                    <legend class="inline-edit-legend"><?php echo $bulk ? __('Bulk Edit') : __('Quick Edit'); ?></legend>   
+                                    <div class="inline-edit-col">
+                                        <label>
+                                            <span class="title"><?php _ex('Name', 'term name'); ?></span>
+                                            <span class="input-text-wrap"><input type="text" name="name" class="ptitle" value="" /></span>
+                                        </label>
+                                        <?php if (!global_terms_enabled()) { ?>
+                                            <label>
+                                                <span class="title"><?php _e('Slug'); ?></span>
+                                                <span class="input-text-wrap"><input type="text" name="slug" class="ptitle" value="" /></span>
+                                            </label>
+                                        <?php } ?>
+                                    </div>
+                                </fieldset>
+                            <?php endif;  ?>
+                            
+                            <p class="inline-edit-save submit">
+                                <a href="#inline-edit" class="cancel button-secondary alignleft"><?php _e('Cancel'); ?></a>
+                                
+                                <?php
+                                if ($bulk) :
+                                    submit_button(__('Update'), 'button-primary alignright', 'edit-parent', false);
+                                else : 
+                                ?>
+                                <a href="#inline-edit" class="save button-primary alignright"><?php echo $tax->labels->update_item; ?></a>
+                                <?php endif;?>
+                                
+                                <span class="spinner"></span>
+                                <span class="error" style="display:none;"></span>
+                                <?php wp_nonce_field('taxinlineeditnonce', '_inline_edit', false); ?>
+                                
+                                <input type="hidden" name="taxonomy" value="<?php echo esc_attr($this->screen->taxonomy); ?>" />
+                                <input type="hidden" name="post_type" value="<?php echo esc_attr($this->screen->post_type); ?>" />
+                                <?php if ($bulk) { ?>                                        
+                                        <input type="hidden" name="screen" value="<?php echo esc_attr($this->screen->id); ?>" />
+                                <?php } ?>
+                                <br class="clear" />
+                            </p>
+                         </td>
+                    </tr>                  
+
+            <?php
+            $bulk++;
+            }
+            ?>  
 		</tbody></table></form>
 	<?php
 	}
diff --git src/wp-admin/js/inline-edit-tax.js src/wp-admin/js/inline-edit-tax.js
index a05dc09..6cdc1e4 100644
--- src/wp-admin/js/inline-edit-tax.js
+++ src/wp-admin/js/inline-edit-tax.js
@@ -26,6 +26,9 @@ inlineEditTax = {
 		$( '.cancel', row ).click( function() {
 			return inlineEditTax.revert();
 		});
+                $( '.cancel' ).click( function() {                 
+                        return inlineEditTax.revert(); 
+                }); 
 		$( '.save', row ).click( function() {
 			return inlineEditTax.save(this);
 		});
@@ -38,13 +41,53 @@ inlineEditTax = {
 		$( '#posts-filter input[type="submit"]' ).mousedown( function() {
 			t.revert();
 		});
+                
+                $('#doaction, #doaction2').click(function(e) {               
+                        var n = $(this).attr('id').substr(2); 
+                        if ( 'edit' === $( 'select[name="' + n + '"]' ).val() ) {                
+                                e.preventDefault(); 
+                                t.setBulk(); 
+                        } else if ( $('form#posts-filter tr.inline-editor').length > 0 ) { 
+                                t.revert(); 
+                        } 
+                });
 	},
 
 	toggle : function(el) {
 		var t = this;
-		$(t.what+t.getId(el)).css('display') === 'none' ? t.revert() : t.edit(el);
+		$(t.what+t.getId(el)).css('display') === 'none' ? t.revert() : t.edit(el);                
+                
 	},
-
+        setBulk : function() { 
+                var te = '', type = this.type, tax, c = true;    
+                this.revert();  
+                $( '#bulk-edit td' ).attr( 'colspan', $( 'th:visible, td:visible', '.widefat:first thead' ).length );    
+                $('table.widefat tbody').prepend( $('#bulk-edit') ).prepend('<tr class="hidden"></tr>'); 
+                $('#bulk-edit').addClass('inline-editor').show();
+                
+                $( 'tbody th.check-column input[type="checkbox"]' ).each( function() { 
+                        if ( $(this).prop('checked') ) { 
+                                c = false; 
+                                var id = $(this).val(), theTitle; 
+                                theTitle = $('#tag-'+id+' .row-title').html() || inlineEditL10n.notitle;                                 
+                                te += '<div id="ttle'+id+'"><a id="_'+id+'" class="ntdelbutton" title="'+inlineEditL10n.ntdeltitle+'">X</a>'+theTitle+'</div>'; 
+                        } 
+                }); 
+ 
+                if ( c ) { 
+                        return this.revert(); 
+                } 
+ 
+                $('#bulk-titles').html(te); 
+                
+                $('#bulk-titles a').click(function(){ 
+                        var id = $(this).attr('id').substr(1); 
+                        $('table.widefat input[value="' + id + '"]').prop('checked', false); 
+                        $('#ttle'+id).remove(); 
+                }); 
+                
+                $('html, body').animate( { scrollTop: 0 }, 'fast' ); 
+        },
 	edit : function(id) {
 		var editRow, rowData, val,
 			t = this;
@@ -143,11 +186,17 @@ inlineEditTax = {
 		var id = $('table.widefat tr.inline-editor').attr('id');
 
 		if ( id ) {
-			$( 'table.widefat .spinner' ).removeClass( 'is-active' );
-			$('#'+id).siblings('tr.hidden').addBack().remove();
-			id = id.substr( id.lastIndexOf('-') + 1 );
-			// Show the taxonomy listing and move focus back to the taxonomy title.
-			$( this.what + id ).show().find( '.row-title' ).focus();
+			$( 'table.widefat .spinner' ).removeClass( 'is-active' );			
+                            if ( 'bulk-edit' === id ) {                        
+                                    $('table.widefat #bulk-edit').removeClass('inline-editor').hide().siblings('tr.hidden').remove(); 
+                                    $('#bulk-titles').empty(); 
+                                    $('#inlineedit').append( $('#bulk-edit') ); 
+                            } else {                          
+                                    $('#'+id).siblings('tr.hidden').addBack().remove(); 
+                                    id = id.substr( id.lastIndexOf('-') + 1 ); 
+                                    // Show the taxonomy listing and move focus back to the taxonomy title.
+                                    $( this.what + id ).show().find( '.row-title' ).focus();
+                            } 
 		}
 	},
 
