WordPress.org

Make WordPress Core

Ticket #21583: 21583.15.diff

File 21583.15.diff, 10.4 KB (added by ryan, 2 years ago)

Markup fixes

  • wp-includes/admin-bar.php

     
    657657        ) ); 
    658658} 
    659659 
     660function wp_admin_bar_screen_options( $wp_admin_bar ) { 
     661 
     662        if ( ! get_current_screen()->show_screen_options() ) 
     663                return; 
     664 
     665        $wp_admin_bar->add_menu( array( 
     666                'parent' => 'top-secondary', 
     667                'id'    => 'screen-options', 
     668                'title' => '<span class="ab-icon"></span>', 
     669                'href'  => '', 
     670        ) ); 
     671} 
     672 
     673function wp_admin_bar_contextual_help( $wp_admin_bar ) { 
     674        $wp_admin_bar->add_menu( array( 
     675                'parent' => 'top-secondary', 
     676                'id'    => 'screen-help', 
     677                'title' => 'Help<span class="ab-icon"></span>', 
     678                'href'  => '', 
     679        ) ); 
     680} 
     681 
    660682/** 
    661683 * Add secondary menus. 
    662684 * 
  • wp-includes/js/admin-bar.js

     
    1010                                node.attr('tabindex', '0').attr('tabindex', tab); 
    1111                }; 
    1212 
    13                 $('#wpadminbar').removeClass('nojq').removeClass('nojs').find('li.menupop').hoverIntent({ 
     13                $('#wpadminbar').removeClass('nojq').removeClass('nojs').find('li.menupop').not('.sticky').hoverIntent({ 
    1414                        over: function(e){ 
    1515                                $(this).addClass('hover'); 
     16                                heightCheck($(this)); 
    1617                        }, 
    1718                        out: function(e){ 
    1819                                $(this).removeClass('hover'); 
     
    2223                        interval: 100 
    2324                }); 
    2425 
     26                $('.sticky', '#wpadminbar').click(function(e){ 
     27                        e.preventDefault(); 
     28                        $(this).toggleClass('hover'); 
     29                }); 
     30 
    2531                $('#wp-admin-bar-get-shortlink').click(function(e){ 
    2632                        e.preventDefault(); 
    2733                        $(this).addClass('selected').children('.shortlink-input').blur(function(){ 
     
    6672                        e.preventDefault(); 
    6773                        $('html, body').animate({ scrollTop: 0 }, 'fast'); 
    6874                }); 
     75                 
     76                 
    6977 
    7078        }); 
     79         
     80        function heightCheck( menu ) { 
     81                // Add overflow if sub menu height exceeds window height 
     82                var wHeight = jQuery(window).height(), 
     83                        toolbarPlusPadding = 28 + 23, 
     84                        subWrapper = menu.find('.ab-sub-wrapper'), 
     85                        subMenuHeight = subWrapper.height() + toolbarPlusPadding; 
     86                 
     87                if ( subMenuHeight > wHeight ) 
     88                        subWrapper.css({ 'overflow-y': 'auto', 'overflow-x': 'hidden', 'height': wHeight - toolbarPlusPadding + 'px'}); 
     89        } 
     90         
    7191} else { 
    7292        (function(d, w) { 
    7393                var addEvent = function( obj, type, fn ) { 
  • wp-includes/css/admin-bar.css

    Cannot display: file marked as a binary type.
    svn:mime-type = application/octet-stream
    Cannot display: file marked as a binary type.
    svn:mime-type = application/octet-stream
     
    1010        font: normal 13px/28px sans-serif; 
    1111        color: #ccc; 
    1212        text-shadow: #444 0px -1px 0px; 
    13 } 
     13}  
    1414 
    1515#wpadminbar ul li:before, 
    1616#wpadminbar ul li:after { 
     
    517517} 
    518518 
    519519/** 
     520 * Sticky menu toggle arrows 
     521 */ 
     522#wpadminbar .sticky .sticky-indicator { 
     523        position: relative; 
     524        float: right; 
     525        width: 20px; 
     526        height: 16px; 
     527        margin-top: 6px; 
     528        background-image: url("../images/admin-bar-sprite.png"); 
     529        background-position: 0 -254px; 
     530        background-repeat: no-repeat; 
     531        cursor: pointer; 
     532} 
     533 
     534#wpadminbar .sticky.hover .sticky-indicator { 
     535        background-position: 0 -228px; 
     536} 
     537 
     538/** 
    520539 * WP Logo icon 
    521540 */ 
    522541#wp-admin-bar-wp-logo > .ab-item .ab-icon { 
     
    573592} 
    574593 
    575594/** 
     595 * Screen Settings icon 
     596 */ 
     597#wpadminbar #wp-admin-bar-screen-options > .ab-item .ab-icon { 
     598        background-image: url(../images/admin-bar-sprite.png?d=20111130); 
     599        background-position: -3px -252px; 
     600        background-repeat: no-repeat; 
     601} 
     602 
     603#wpadminbar.nojs #wp-admin-bar-screen-options:hover > .ab-item .ab-icon, 
     604#wpadminbar #wp-admin-bar-screen-options.hover > .ab-item .ab-icon { 
     605        background-image: url(../images/admin-bar-sprite.png?d=20111130); 
     606        background-position: -3px -228px; 
     607        background-repeat: no-repeat; 
     608} 
     609 
     610/** 
    576611 * Customize support classes 
    577612 */ 
    578613.no-customize-support .hide-if-no-customize, 
     
    590625        #wp-admin-bar-wp-logo > .ab-item .ab-icon, 
    591626        #wp-admin-bar-updates > .ab-item .ab-icon, 
    592627        #wp-admin-bar-comments > .ab-item .ab-icon, 
    593         #wpadminbar #wp-admin-bar-new-content > .ab-item .ab-icon { 
    594                 background-image: url(../images/admin-bar-sprite-2x.png?d=20120830); 
    595                 background-size: 20px 220px; 
     628        #wpadminbar #wp-admin-bar-new-content > .ab-item .ab-icon, 
     629        #wpadminbar #wp-admin-bar-screen-options > .ab-item .ab-icon, 
     630        #wpadminbar .sticky .sticky-indicator { 
     631                background-image: url( "../images/admin-bar-sprite-2x.png?d=20120830" ); 
     632                background-size: 20px 276px; 
    596633        } 
    597634} 
    598635 
  • wp-includes/class-wp-admin-bar.php

     
    104104                        'parent' => false, 
    105105                        'href'   => false, 
    106106                        'group'  => false, 
     107                        'sticky' => false, 
    107108                        'meta'   => array(), 
    108109                ); 
    109110 
     
    396397 
    397398                $is_parent = ! empty( $node->children ); 
    398399                $has_link  = ! empty( $node->href ); 
     400                $has_title = ! empty( $node->title ); 
     401                $is_sticky = $node->sticky === true ? true : false; 
    399402 
    400403                $tabindex = isset( $node->meta['tabindex'] ) ? (int) $node->meta['tabindex'] : ''; 
    401404                $aria_attributes = $tabindex ? 'tabindex="' . $tabindex . '"' : ''; 
     
    410413                if ( ! empty( $node->meta['class'] ) ) 
    411414                        $menuclass .= $node->meta['class']; 
    412415 
     416                if ( $is_sticky ) 
     417                        $menuclass .= 'sticky'; 
     418 
    413419                if ( $menuclass ) 
    414420                        $menuclass = ' class="' . esc_attr( trim( $menuclass ) ) . '"'; 
    415421 
    416422                ?> 
    417423 
    418424                <li id="<?php echo esc_attr( 'wp-admin-bar-' . $node->id ); ?>"<?php echo $menuclass; ?>><?php 
    419                         if ( $has_link ): 
    420                                 ?><a class="ab-item" <?php echo $aria_attributes; ?> href="<?php echo esc_url( $node->href ) ?>"<?php 
    421                                         if ( ! empty( $node->meta['onclick'] ) ) : 
    422                                                 ?> onclick="<?php echo esc_js( $node->meta['onclick'] ); ?>"<?php 
     425                        if ( $has_title ): 
     426                                if ( $has_link ): 
     427                                        ?><a class="ab-item" <?php echo $aria_attributes; ?> href="<?php echo esc_url( $node->href ) ?>"<?php 
     428                                                if ( ! empty( $node->meta['onclick'] ) ) : 
     429                                                        ?> onclick="<?php echo esc_js( $node->meta['onclick'] ); ?>"<?php 
     430                                                endif; 
     431                                        if ( ! empty( $node->meta['target'] ) ) : 
     432                                                ?> target="<?php echo esc_attr( $node->meta['target'] ); ?>"<?php 
    423433                                        endif; 
    424                                 if ( ! empty( $node->meta['target'] ) ) : 
    425                                         ?> target="<?php echo esc_attr( $node->meta['target'] ); ?>"<?php 
     434                                        if ( ! empty( $node->meta['title'] ) ) : 
     435                                                ?> title="<?php echo esc_attr( $node->meta['title'] ); ?>"<?php 
     436                                        endif; 
     437                                        ?>><?php 
     438                                else: 
     439                                        ?><a href="#" onclick="return false;" class="ab-item ab-empty-item" <?php echo $aria_attributes; 
     440                                        if ( ! empty( $node->meta['title'] ) ) : 
     441                                                ?> title="<?php echo esc_attr( $node->meta['title'] ); ?>"<?php 
     442                                        endif; 
     443                                        ?>><?php 
    426444                                endif; 
    427                                 if ( ! empty( $node->meta['title'] ) ) : 
    428                                         ?> title="<?php echo esc_attr( $node->meta['title'] ); ?>"<?php 
     445         
     446                                echo $node->title; 
     447 
     448                                if ( $is_sticky ) : 
     449                                        ?><span class="sticky-indicator"></span><?php 
    429450                                endif; 
    430                                 ?>><?php 
    431                         else: 
    432                                 ?><div class="ab-item ab-empty-item" <?php echo $aria_attributes; 
    433                                 if ( ! empty( $node->meta['title'] ) ) : 
    434                                         ?> title="<?php echo esc_attr( $node->meta['title'] ); ?>"<?php 
     451 
     452                                if ( $has_link ) : 
     453                                        ?></a><?php 
     454                                else: 
     455                                        ?></a><?php 
    435456                                endif; 
    436                                 ?>><?php 
    437457                        endif; 
    438458 
    439                         echo $node->title; 
    440  
    441                         if ( $has_link ) : 
    442                                 ?></a><?php 
    443                         else: 
    444                                 ?></div><?php 
    445                         endif; 
    446  
    447459                        if ( $is_parent ) : 
    448460                                ?><div class="ab-sub-wrapper"><?php 
    449461                                        foreach ( $node->children as $group ) { 
     
    455467                        if ( ! empty( $node->meta['html'] ) ) 
    456468                                echo $node->meta['html']; 
    457469 
     470                        if ( ! empty( $node->meta['html_callback'] ) ) 
     471                                call_user_func( $node->meta['html_callback'] ); 
    458472                        ?> 
    459473                </li><?php 
    460474        } 
     
    483497                } 
    484498                add_action( 'admin_bar_menu', 'wp_admin_bar_edit_menu', 80 ); 
    485499 
     500                if ( is_admin() ) { 
     501                        add_action( 'admin_bar_menu', 'wp_admin_bar_screen_options', 90 ); 
     502                        add_action( 'admin_bar_menu', 'wp_admin_bar_contextual_help', 90 ); 
     503                } 
     504 
    486505                add_action( 'admin_bar_menu', 'wp_admin_bar_add_secondary_groups', 200 ); 
    487506 
    488507                do_action( 'add_admin_bar_menus' ); 
  • wp-admin/includes/screen.php

     
    784784 
    785785                // Time to render! 
    786786                ?> 
    787                 <div id="screen-meta" class="metabox-prefs"> 
    788  
    789787                        <div id="contextual-help-wrap" class="<?php echo esc_attr( $help_class ); ?>" tabindex="-1" aria-label="<?php esc_attr_e('Contextual Help Tab'); ?>"> 
    790788                                <div id="contextual-help-back"></div> 
    791789                                <div id="contextual-help-columns"> 
     
    860858                // Add screen options 
    861859                if ( $this->show_screen_options() ) 
    862860                        $this->render_screen_options(); 
    863                 ?> 
    864                 </div> 
    865                 <?php 
    866                 if ( ! $this->get_help_tabs() && ! $this->show_screen_options() ) 
    867                         return; 
    868                 ?> 
    869                 <div id="screen-meta-links"> 
    870                 <?php if ( $this->get_help_tabs() ) : ?> 
    871                         <div id="contextual-help-link-wrap" class="hide-if-no-js screen-meta-toggle"> 
    872                         <a href="#contextual-help-wrap" id="contextual-help-link" class="show-settings" aria-controls="contextual-help-wrap" aria-expanded="false"><?php _e( 'Help' ); ?></a> 
    873                         </div> 
    874                 <?php endif; 
    875                 if ( $this->show_screen_options() ) : ?> 
    876                         <div id="screen-options-link-wrap" class="hide-if-no-js screen-meta-toggle"> 
    877                         <a href="#screen-options-wrap" id="show-settings-link" class="show-settings" aria-controls="screen-options-wrap" aria-expanded="false"><?php _e( 'Screen Options' ); ?></a> 
    878                         </div> 
    879                 <?php endif; ?> 
    880                 </div> 
    881                 <?php 
    882861        } 
    883862 
    884863        public function show_screen_options() { 
  • wp-admin/admin-header.php

     
    115115<div id="wpcontent"> 
    116116 
    117117<?php 
     118$current_screen->set_parentage( $parent_file ); 
    118119do_action('in_admin_header'); 
    119120?> 
    120121 
     
    122123<?php 
    123124unset($title_class, $blog_name, $total_update_count, $update_title); 
    124125 
    125 $current_screen->set_parentage( $parent_file ); 
    126  
    127126?> 
    128127 
    129128<div id="wpbody-content" aria-label="<?php esc_attr_e('Main content'); ?>">