Improve admin menu tab navigation for expanded menus. Folded menus require a few markup improvements. see #19191.

git-svn-id: https://develop.svn.wordpress.org/trunk@19198 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Daryl Koopersmith 2011-11-07 03:59:00 +00:00
parent 7851ec39c0
commit 1597250c9c
9 changed files with 32 additions and 12 deletions

File diff suppressed because one or more lines are too long

View File

@ -1297,6 +1297,7 @@ table.widefat .spam a:hover,
} }
#adminmenu li.menu-top:hover > a, #adminmenu li.menu-top:hover > a,
#adminmenu li.menu-top.focused > a,
#adminmenu li.menu-top > a:focus { #adminmenu li.menu-top > a:focus {
background-color: #e0f1ff; background-color: #e0f1ff;
text-shadow: 0 1px 0 rgba( 255, 255, 255, 0.4 ); text-shadow: 0 1px 0 rgba( 255, 255, 255, 0.4 );

File diff suppressed because one or more lines are too long

View File

@ -985,6 +985,7 @@ table.widefat .spam a:hover,
} }
#adminmenu li.menu-top:hover > a, #adminmenu li.menu-top:hover > a,
#adminmenu li.menu-top.focused > a,
#adminmenu li.menu-top > a:focus { #adminmenu li.menu-top > a:focus {
background-color: #e4e4e4; background-color: #e4e4e4;
text-shadow: 0 1px 0 rgba( 255, 255, 255, 0.4 ); text-shadow: 0 1px 0 rgba( 255, 255, 255, 0.4 );

File diff suppressed because one or more lines are too long

View File

@ -1565,7 +1565,8 @@ form.upgrade .hint {
.js #adminmenu .wp-submenu.sub-open, .js #adminmenu .wp-submenu.sub-open,
.folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open, .folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,
.no-js #adminmenu .wp-has-submenu:hover .wp-submenu, .no-js #adminmenu .wp-has-submenu:hover .wp-submenu,
#adminmenu .wp-has-current-submenu .wp-submenu { #adminmenu .wp-has-current-submenu .wp-submenu,
#adminmenu li.focused .wp-submenu {
display: block; display: block;
} }
@ -1592,6 +1593,8 @@ form.upgrade .hint {
} }
#adminmenu .wp-submenu.sub-open, #adminmenu .wp-submenu.sub-open,
#adminmenu li.focused.wp-not-current-submenu .wp-submenu,
.folded #adminmenu li.focused.wp-has-current-submenu .wp-submenu,
.folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open, .folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,
.no-js #adminmenu .wp-has-submenu:hover .wp-submenu, .no-js #adminmenu .wp-has-submenu:hover .wp-submenu,
.no-js.folded #adminmenu .wp-has-current-submenu:hover .wp-submenu { .no-js.folded #adminmenu .wp-has-current-submenu:hover .wp-submenu {
@ -1717,15 +1720,18 @@ body.no-js #adminmenu .wp-menu-toggle,
#adminmenu li.wp-has-current-submenu .wp-menu-arrow, #adminmenu li.wp-has-current-submenu .wp-menu-arrow,
#adminmenu li.menu-top.current .wp-menu-arrow, #adminmenu li.menu-top.current .wp-menu-arrow,
#adminmenu li.wp-not-current-submenu:hover .wp-menu-arrow { #adminmenu li.wp-not-current-submenu:hover .wp-menu-arrow,
#adminmenu li.focused .wp-menu-arrow {
display: block; display: block;
} }
.folded #adminmenu li.wp-not-current-submenu:hover .wp-menu-arrow { .folded #adminmenu li.wp-not-current-submenu:hover .wp-menu-arrow,
.folded #adminmenu li.focused .wp-menu-arrow {
display: none; display: none;
} }
#adminmenu li.menu-top:hover .wp-menu-arrow { #adminmenu li.menu-top:hover .wp-menu-arrow,
#adminmenu li.menu-top.focused .wp-menu-arrow {
z-index: 1001; z-index: 1001;
} }

View File

@ -145,7 +145,7 @@ screenMeta = {
close: function( panel, link ) { close: function( panel, link ) {
panel.slideUp( 'fast', function() { panel.slideUp( 'fast', function() {
link.removeClass('screen-meta-active'); link.removeClass('screen-meta-active');
$('.screen-meta-toggle').css('visibility', ''); $('.screen-meta-toggle').css('visibility', '');
panel.parent().hide(); panel.parent().hide();
}); });
} }
@ -226,6 +226,18 @@ $(document).ready( function() {
interval: 90 interval: 90
}); });
// Admin menu keyboard navigation.
$('li.wp-has-submenu').focusin( function() {
$(this).addClass('focused');
}).focusout( function() {
$(this).removeClass('focused');
});
// If the mouse is used on the menu, shift focus to the mouse.
menu.mouseover( function(e) {
$('li.focused', this).removeClass('focused');
});
// Move .updated and .error alert boxes. Don't move boxes designed to be inline. // Move .updated and .error alert boxes. Don't move boxes designed to be inline.
$('div.wrap h2:first').nextAll('div.updated, div.error').addClass('below-h2'); $('div.wrap h2:first').nextAll('div.updated, div.error').addClass('below-h2');
$('div.updated, div.error').not('.below-h2, .inline').insertAfter( $('div.wrap h2:first') ); $('div.updated, div.error').not('.below-h2, .inline').insertAfter( $('div.wrap h2:first') );

File diff suppressed because one or more lines are too long

View File

@ -61,7 +61,7 @@ function wp_default_scripts( &$scripts ) {
$scripts->add( 'utils', "/wp-admin/js/utils$suffix.js", false, '20101110' ); $scripts->add( 'utils', "/wp-admin/js/utils$suffix.js", false, '20101110' );
$scripts->add( 'common', "/wp-admin/js/common$suffix.js", array('jquery', 'hoverIntent', 'utils'), '20111106', 1 ); $scripts->add( 'common', "/wp-admin/js/common$suffix.js", array('jquery', 'hoverIntent', 'utils'), '20111106a', 1 );
$scripts->add_script_data( 'common', 'commonL10n', array( $scripts->add_script_data( 'common', 'commonL10n', array(
'warnDelete' => __("You are about to permanently delete the selected items.\n 'Cancel' to stop, 'OK' to delete.") 'warnDelete' => __("You are about to permanently delete the selected items.\n 'Cancel' to stop, 'OK' to delete.")
) ); ) );
@ -431,13 +431,13 @@ function wp_default_styles( &$styles ) {
// Any rtl stylesheets that don't have a .dev version for ltr // Any rtl stylesheets that don't have a .dev version for ltr
$no_suffix = array( 'farbtastic' ); $no_suffix = array( 'farbtastic' );
$styles->add( 'wp-admin', "/wp-admin/css/wp-admin$suffix.css", array(), '20111106' ); $styles->add( 'wp-admin', "/wp-admin/css/wp-admin$suffix.css", array(), '20111106a' );
$styles->add( 'ie', "/wp-admin/css/ie$suffix.css", array(), '20111015' ); $styles->add( 'ie', "/wp-admin/css/ie$suffix.css", array(), '20111015' );
$styles->add_data( 'ie', 'conditional', 'lte IE 7' ); $styles->add_data( 'ie', 'conditional', 'lte IE 7' );
// all colors stylesheets need to have the same query strings (cache manifest compat) // all colors stylesheets need to have the same query strings (cache manifest compat)
$colors_version = '20111106'; $colors_version = '20111106a';
// Register "meta" stylesheet for admin colors. All colors-* style sheets should have the same version string. // Register "meta" stylesheet for admin colors. All colors-* style sheets should have the same version string.
$styles->add( 'colors', true, array('wp-admin'), $colors_version ); $styles->add( 'colors', true, array('wp-admin'), $colors_version );