wp/wp-admin/js/nav-menu.js
changeset 19 3d72ae0968f4
parent 18 be944660c56a
child 21 48c4eec2b7e6
equal deleted inserted replaced
18:be944660c56a 19:3d72ae0968f4
   309 				nextItem = thisItem.next(),
   309 				nextItem = thisItem.next(),
   310 				nextItemChildren = nextItem.childMenuItems(),
   310 				nextItemChildren = nextItem.childMenuItems(),
   311 				nextItemDepth = parseInt( nextItem.menuItemDepth(), 10 ) + 1,
   311 				nextItemDepth = parseInt( nextItem.menuItemDepth(), 10 ) + 1,
   312 				prevItem = thisItem.prev(),
   312 				prevItem = thisItem.prev(),
   313 				prevItemDepth = parseInt( prevItem.menuItemDepth(), 10 ),
   313 				prevItemDepth = parseInt( prevItem.menuItemDepth(), 10 ),
   314 				prevItemId = prevItem.getItemData()['menu-item-db-id'];
   314 				prevItemId = prevItem.getItemData()['menu-item-db-id'],
       
   315 				a11ySpeech = menus[ 'moved' + dir.charAt(0).toUpperCase() + dir.slice(1) ];
   315 
   316 
   316 			switch ( dir ) {
   317 			switch ( dir ) {
   317 			case 'up':
   318 			case 'up':
   318 				newItemPosition = thisItemPosition - 1;
   319 				newItemPosition = thisItemPosition - 1;
   319 
   320 
   397 			}
   398 			}
   398 			$this.trigger( 'focus' );
   399 			$this.trigger( 'focus' );
   399 			api.registerChange();
   400 			api.registerChange();
   400 			api.refreshKeyboardAccessibility();
   401 			api.refreshKeyboardAccessibility();
   401 			api.refreshAdvancedAccessibility();
   402 			api.refreshAdvancedAccessibility();
       
   403 
       
   404 			if ( a11ySpeech ) {
       
   405 				wp.a11y.speak( a11ySpeech );
       
   406 			}
   402 		},
   407 		},
   403 
   408 
   404 		initAccessibility : function() {
   409 		initAccessibility : function() {
   405 			var menu = $( '#menu-to-edit' );
   410 			var menu = $( '#menu-to-edit' );
   406 
   411 
  1222 		addMenuItemToBottom : function( menuMarkup ) {
  1227 		addMenuItemToBottom : function( menuMarkup ) {
  1223 			var $menuMarkup = $( menuMarkup );
  1228 			var $menuMarkup = $( menuMarkup );
  1224 			$menuMarkup.hideAdvancedMenuItemFields().appendTo( api.targetList );
  1229 			$menuMarkup.hideAdvancedMenuItemFields().appendTo( api.targetList );
  1225 			api.refreshKeyboardAccessibility();
  1230 			api.refreshKeyboardAccessibility();
  1226 			api.refreshAdvancedAccessibility();
  1231 			api.refreshAdvancedAccessibility();
       
  1232 			wp.a11y.speak( menus.itemAdded );
  1227 			$( document ).trigger( 'menu-item-added', [ $menuMarkup ] );
  1233 			$( document ).trigger( 'menu-item-added', [ $menuMarkup ] );
  1228 		},
  1234 		},
  1229 
  1235 
  1230 		/**
  1236 		/**
  1231 		 * Process the add menu item request response into menu list item. Prepends to menu.
  1237 		 * Process the add menu item request response into menu list item. Prepends to menu.
  1237 		addMenuItemToTop : function( menuMarkup ) {
  1243 		addMenuItemToTop : function( menuMarkup ) {
  1238 			var $menuMarkup = $( menuMarkup );
  1244 			var $menuMarkup = $( menuMarkup );
  1239 			$menuMarkup.hideAdvancedMenuItemFields().prependTo( api.targetList );
  1245 			$menuMarkup.hideAdvancedMenuItemFields().prependTo( api.targetList );
  1240 			api.refreshKeyboardAccessibility();
  1246 			api.refreshKeyboardAccessibility();
  1241 			api.refreshAdvancedAccessibility();
  1247 			api.refreshAdvancedAccessibility();
       
  1248 			wp.a11y.speak( menus.itemAdded );
  1242 			$( document ).trigger( 'menu-item-added', [ $menuMarkup ] );
  1249 			$( document ).trigger( 'menu-item-added', [ $menuMarkup ] );
  1243 		},
  1250 		},
  1244 
  1251 
  1245 		attachUnsavedChangesListener : function() {
  1252 		attachUnsavedChangesListener : function() {
  1246 			$('#menu-management input, #menu-management select, #menu-management, #menu-management textarea, .menu-location-menus select').on( 'change', function(){
  1253 			$('#menu-management input, #menu-management select, #menu-management, #menu-management textarea, .menu-location-menus select').on( 'change', function(){
  1511 					if ( 0 === $( '#menu-to-edit li' ).length ) {
  1518 					if ( 0 === $( '#menu-to-edit li' ).length ) {
  1512 						$( '.drag-instructions' ).hide();
  1519 						$( '.drag-instructions' ).hide();
  1513 						ins.removeClass( 'menu-instructions-inactive' );
  1520 						ins.removeClass( 'menu-instructions-inactive' );
  1514 					}
  1521 					}
  1515 					api.refreshAdvancedAccessibility();
  1522 					api.refreshAdvancedAccessibility();
       
  1523 					wp.a11y.speak( menus.itemRemoved );
  1516 				});
  1524 				});
  1517 		},
  1525 		},
  1518 
  1526 
  1519 		depthToPx : function(depth) {
  1527 		depthToPx : function(depth) {
  1520 			return depth * api.options.menuItemDepthPerLevel;
  1528 			return depth * api.options.menuItemDepthPerLevel;