Skip to content

Commit

Permalink
Merge pull request #3915 from WordPress/update/add-category-a11y-impr…
Browse files Browse the repository at this point in the history
…ovements

Add speak message when a category gets added.
  • Loading branch information
afercia authored Dec 12, 2017
2 parents 360467b + c86ac88 commit 7aa9c25
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 13 deletions.
7 changes: 3 additions & 4 deletions editor/components/post-taxonomies/flat-term-selector.js
Original file line number Diff line number Diff line change
Expand Up @@ -150,9 +150,9 @@ class FlatTermSelector extends Component {
const termNames = availableTerms.map( ( term ) => term.name );

const newTermPlaceholderLabel = slug === 'post_tag' ? __( 'Add New Tag' ) : __( 'Add New Term' );
const termAddedLabel = slug === 'post_tag' ? __( 'Tag added.' ) : __( 'Term added.' );
const termRemovedLabel = slug === 'post_tag' ? __( 'Tag removed.' ) : __( 'Term removed.' );
const removeTermLabel = slug === 'post_tag' ? __( 'Remove Tag: %s.' ) : __( 'Remove Term: %s.' );
const termAddedLabel = slug === 'post_tag' ? __( 'Tag added' ) : __( 'Term added' );
const termRemovedLabel = slug === 'post_tag' ? __( 'Tag removed' ) : __( 'Term removed' );
const removeTermLabel = slug === 'post_tag' ? __( 'Remove Tag: %s' ) : __( 'Remove Term: %s' );

return (
<div className="editor-post-taxonomies__flat-terms-selector">
Expand Down Expand Up @@ -191,4 +191,3 @@ export default connect(
};
}
)( FlatTermSelector );

25 changes: 16 additions & 9 deletions editor/components/post-taxonomies/hierarchical-term-selector.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ import { unescape as unescapeString, without, groupBy, map, repeat, find } from
* WordPress dependencies
*/
import { __, _x } from '@wordpress/i18n';
import { Component } from '@wordpress/element';
import { withInstanceId } from '@wordpress/components';
import { Component, compose } from '@wordpress/element';
import { withInstanceId, withSpokenMessages } from '@wordpress/components';

/**
* Internal dependencies
Expand Down Expand Up @@ -86,8 +86,8 @@ class HierarchicalTermSelector extends Component {

onAddTerm( event ) {
event.preventDefault();
const { formName, formParent } = this.state;
if ( formName === '' ) {
const { formName, formParent, adding } = this.state;
if ( formName === '' || adding ) {
return;
}
const findOrCreatePromise = new Promise( ( resolve, reject ) => {
Expand All @@ -114,7 +114,9 @@ class HierarchicalTermSelector extends Component {
.then( ( term ) => {
const hasTerm = !! find( this.state.availableTerms, ( availableTerm ) => availableTerm.id === term.id );
const newAvailableTerms = hasTerm ? this.state.availableTerms : [ term, ...this.state.availableTerms ];
const { onUpdateTerms, restBase, terms } = this.props;
const { onUpdateTerms, restBase, terms, slug } = this.props;
const termAddedMessage = slug === 'category' ? __( 'Category added' ) : __( 'Term added' );
this.props.speak( termAddedMessage, 'assertive' );
this.setState( {
adding: false,
formName: '',
Expand Down Expand Up @@ -201,7 +203,7 @@ class HierarchicalTermSelector extends Component {
}

render() {
const { availableTermsTree, availableTerms, formName, formParent, loading, adding, showForm } = this.state;
const { availableTermsTree, availableTerms, formName, formParent, loading, showForm } = this.state;
const { label, slug, instanceId } = this.props;

const newTermButtonLabel = slug === 'category' ? __( 'Add new category' ) : __( 'Add new term' );
Expand Down Expand Up @@ -264,7 +266,6 @@ class HierarchicalTermSelector extends Component {
<button
type="submit"
className="button editor-post-taxonomies__hierarchical-terms-submit"
disabled={ adding }
>
{ newTermSubmitLabel }
</button>
Expand All @@ -276,7 +277,7 @@ class HierarchicalTermSelector extends Component {
}
}

export default connect(
const applyConnect = connect(
( state, onwProps ) => {
return {
terms: getEditedPostAttribute( state, onwProps.restBase ),
Expand All @@ -287,4 +288,10 @@ export default connect(
return editPost( { [ restBase ]: terms } );
},
}
)( withInstanceId( HierarchicalTermSelector ) );
);

export default compose(
applyConnect,
withSpokenMessages,
withInstanceId
)( HierarchicalTermSelector );

0 comments on commit 7aa9c25

Please sign in to comment.