Make WordPress Core

Changeset 35229


Ignore:
Timestamp:
10/16/2015 11:01:58 PM (9 years ago)
Author:
SergeyBiryukov
Message:

Sample permalink: Improve accessibility of changing the permalink on Edit Post screen.

Props afercia.
Fixes #34255.

Location:
trunk/src
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-admin/css/edit.css

    r35130 r35229  
    105105#edit-slug-box .cancel {
    106106    margin-right: 10px;
     107    padding: 0;
    107108    font-size: 11px;
     109    text-decoration: underline;
     110    color: #0073aa;
    108111}
    109112
  • trunk/src/wp-admin/includes/post.php

    r35170 r35229  
    13471347        $return .= '<span id="sample-permalink"><a href="' . esc_url( $view_link ) . '"' . $preview_target . '>' . $display_link . "</a></span>\n";
    13481348        $return .= '&lrm;'; // Fix bi-directional text display defect in RTL languages.
    1349         $return .= '<span id="edit-slug-buttons"><button type="button" class="edit-slug button button-small hide-if-no-js">' . __( 'Edit' ) . "</button></span>\n";
     1349        $return .= '<span id="edit-slug-buttons"><button type="button" class="edit-slug button button-small hide-if-no-js" aria-label="' . __( 'Edit permalink' ) . '">' . __( 'Edit' ) . "</button></span>\n";
    13501350        $return .= '<span id="editable-post-name-full">' . $post_name . "</span>\n";
    13511351    }
  • trunk/src/wp-admin/js/post.js

    r35014 r35229  
    742742        revert_e = $el.html();
    743743
    744         buttons.html('<button type="button" class="save button button-small">'+postL10n.ok+'</button> <a class="cancel" href="#">'+postL10n.cancel+'</a>');
    745         buttons.children('.save').click( function( e ) {
     744        buttons.html( '<button type="button" class="save button button-small">' + postL10n.ok + '</button> <button type="button" class="cancel button-link">' + postL10n.cancel + '</button>' );
     745        buttons.children( '.save' ).click( function() {
    746746            var new_slug = $el.children( 'input' ).val();
    747             e.preventDefault();
     747
    748748            if ( new_slug == $('#editable-post-name-full').text() ) {
    749749                buttons.children('.cancel').click();
     
    769769                real_slug.val(new_slug);
    770770                $( '.edit-slug' ).focus();
     771                wp.a11y.speak( postL10n.permalinkSaved );
    771772            });
    772773        });
    773774
    774         buttons.children('.cancel').click( function( e ) {
    775             e.preventDefault();
     775        buttons.children( '.cancel' ).click( function() {
    776776            $('#view-post-btn').show();
    777777            $el.html(revert_e);
     
    788788
    789789        slug_value = ( c > full.length / 4 ) ? '' : full;
    790         $el.html( '<input type="text" id="new-post-slug" value="'+slug_value+'" autocomplete="off" />').children('input').keypress(function(e) {
    791             var key = e.keyCode || 0;
    792             // on enter, just save the new slug, don't save the post
    793             if ( 13 == key ) {
    794                 buttons.children('.save').click();
    795                 return false;
    796             }
    797             if ( 27 == key ) {
    798                 buttons.children('.cancel').click();
    799                 return false;
     790        $el.html( '<input type="text" id="new-post-slug" value="' + slug_value + '" autocomplete="off" />' ).children( 'input' ).keydown( function( e ) {
     791            var key = e.which;
     792            // On enter, just save the new slug, don't save the post.
     793            if ( 13 === key ) {
     794                e.preventDefault();
     795                buttons.children( '.save' ).click();
     796            }
     797            if ( 27 === key ) {
     798                buttons.children( '.cancel' ).click();
    800799            }
    801800        } ).keyup( function() {
    802             real_slug.val(this.value);
     801            real_slug.val( this.value );
    803802        }).focus();
    804803    }
    805804
    806     $('#edit-slug-box').on( 'click', '.edit-slug', function() {
     805    $( '#titlediv' ).on( 'click', '.edit-slug', function() {
    807806        editPermalink();
    808807    });
  • trunk/src/wp-includes/script-loader.php

    r35019 r35229  
    501501        ) );
    502502
    503         $scripts->add( 'post', "/wp-admin/js/post$suffix.js", array( 'suggest', 'wp-lists', 'postbox', 'tags-box', 'underscore', 'word-count' ), false, 1 );
     503        $scripts->add( 'post', "/wp-admin/js/post$suffix.js", array( 'suggest', 'wp-lists', 'postbox', 'tags-box', 'underscore', 'word-count', 'wp-a11y' ), false, 1 );
    504504        did_action( 'init' ) && $scripts->localize( 'post', 'postL10n', array(
    505505            'ok' => __('OK'),
     
    525525            'saveAlert' => __('The changes you made will be lost if you navigate away from this page.'),
    526526            'savingText' => __('Saving Draft&#8230;'),
     527            'permalinkSaved' => __( 'Permalink saved' ),
    527528        ) );
    528529
Note: See TracChangeset for help on using the changeset viewer.