Index: src/wp-admin/includes/meta-boxes.php
===================================================================
--- src/wp-admin/includes/meta-boxes.php	(revision 33311)
+++ src/wp-admin/includes/meta-boxes.php	(working copy)
@@ -509,7 +509,60 @@
 					<label class="screen-reader-text" for="new<?php echo $tax_name; ?>_parent">
 						<?php echo $taxonomy->labels->parent_item_colon; ?>
 					</label>
-					<?php wp_dropdown_categories( array( 'taxonomy' => $tax_name, 'hide_empty' => 0, 'name' => 'new' . $tax_name . '_parent', 'orderby' => 'name', 'hierarchical' => 1, 'show_option_none' => '&mdash; ' . $taxonomy->labels->parent_item . ' &mdash;' ) ); ?>
+					<?php
+					$parent_dropdown_args = array(
+						'taxonomy'          => $tax_name,
+						'hide_empty'        => 0,
+						'name'              => 'new' . $tax_name . '_parent',
+						'orderby'           => 'name',
+						'hierarchical'      => 1,
+						'show_option_none'  => '&mdash; ' . $taxonomy->labels->parent_item . ' &mdash;',
+					);
+					/**
+					 * Filter the taxonomy parent drop-down on the Post Edit page.
+					 *
+					 * @param string|array $args {
+					 *     Optional. Array or string of arguments to generate a categories drop-down element.
+					 *
+					 *     @type string       $show_option_all   Text to display for showing all categories. Default empty.
+					 *     @type string       $show_option_none  Text to display for showing no categories. Default empty.
+					 *     @type string       $option_none_value Value to use when no category is selected. Default empty.
+					 *     @type string       $orderby           Which column to use for ordering categories. See get_terms() for a list
+					 *                                           of accepted values. Default 'id' (term_id).
+					 *     @type string       $order             Whether to order terms in ascending or descending order. Accepts 'ASC'
+					 *                                           or 'DESC'. Default 'ASC'.
+					 *     @type bool         $pad_counts        See get_terms() for an argument description. Default false.
+					 *     @type bool|int     $show_count        Whether to include post counts. Accepts 0, 1, or their bool equivalents.
+					 *                                           Default 0.
+					 *     @type bool|int     $hide_empty        Whether to hide categories that don't have any posts. Accepts 0, 1, or
+					 *                                           their bool equivalents. Default 1.
+					 *     @type int          $child_of          Term ID to retrieve child terms of. See get_terms(). Default 0.
+					 *     @type array|string $exclude           Array or comma/space-separated string of term ids to exclude.
+					 *                                           If `$include` is non-empty, `$exclude` is ignored. Default empty array.
+					 *     @type bool|int     $echo              Whether to echo or return the generated markup. Accepts 0, 1, or their
+					 *                                           bool equivalents. Default 1.
+					 *     @type bool|int     $hierarchical      Whether to traverse the taxonomy hierarchy. Accepts 0, 1, or their bool
+					 *                                           equivalents. Default 0.
+					 *     @type int          $depth             Maximum depth. Default 0.
+					 *     @type int          $tab_index         Tab index for the select element. Default 0 (no tabindex).
+					 *     @type string       $name              Value for the 'name' attribute of the select element. Default 'cat'.
+					 *     @type string       $id                Value for the 'id' attribute of the select element. Defaults to the value
+					 *                                           of `$name`.
+					 *     @type string       $class             Value for the 'class' attribute of the select element. Default 'postform'.
+					 *     @type int|string   $selected          Value of the option that should be selected. Default 0.
+					 *     @type string       $value_field       Term field that should be used to populate the 'value' attribute
+					 *                                           of the option elements. Accepts any valid term field: 'term_id', 'name',
+					 *                                           'slug', 'term_group', 'term_taxonomy_id', 'taxonomy', 'description',
+					 *                                           'parent', 'count'. Default 'term_id'.
+					 *     @type string       $taxonomy          Name of the category to retrieve. Default 'category'.
+					 *     @type bool         $hide_if_empty     True to skip generating markup if no categories are found.
+					 *                                           Default false (create select element even if no categories are found).
+					 * }
+					 *
+					 */
+					$parent_dropdown_args = apply_filters( 'post_edit_category_parent_dropdown_args', $parent_dropdown_args );
+					wp_dropdown_categories( $parent_dropdown_args );
+					?>
 					<input type="button" id="<?php echo $tax_name; ?>-add-submit" data-wp-lists="add:<?php echo $tax_name; ?>checklist:<?php echo $tax_name; ?>-add" class="button category-add-submit" value="<?php echo esc_attr( $taxonomy->labels->add_new_item ); ?>" />
 					<?php wp_nonce_field( 'add-' . $tax_name, '_ajax_nonce-add-' . $tax_name, false ); ?>
 					<span id="<?php echo $tax_name; ?>-ajax-response"></span>
