| 1 | Index: src/wp-includes/admin-bar.php |
|---|
| 2 | =================================================================== |
|---|
| 3 | --- src/wp-includes/admin-bar.php (revision 28867) |
|---|
| 4 | +++ src/wp-includes/admin-bar.php (working copy) |
|---|
| 5 | @@ -655,22 +655,49 @@ |
|---|
| 6 | 'title' => __('Customize'), |
|---|
| 7 | 'href' => add_query_arg( 'url', urlencode( $current_url ), wp_customize_url() ), |
|---|
| 8 | 'meta' => array( |
|---|
| 9 | - 'class' => 'hide-if-no-customize', |
|---|
| 10 | + 'class' => 'hide-if-no-customize load-customize', |
|---|
| 11 | ), |
|---|
| 12 | ) ); |
|---|
| 13 | add_action( 'wp_before_admin_bar_render', 'wp_customize_support_script' ); |
|---|
| 14 | Index: src/wp-includes/class-wp-admin-bar.php |
|---|
| 15 | =================================================================== |
|---|
| 16 | --- src/wp-includes/class-wp-admin-bar.php (revision 28867) |
|---|
| 17 | +++ src/wp-includes/class-wp-admin-bar.php (working copy) |
|---|
| 18 | @@ -60,6 +60,12 @@ |
|---|
| 19 | |
|---|
| 20 | wp_enqueue_script( 'admin-bar' ); |
|---|
| 21 | wp_enqueue_style( 'admin-bar' ); |
|---|
| 22 | + if ( current_user_can( 'edit_theme_options' ) ) { |
|---|
| 23 | + wp_enqueue_script( 'customize-loader' ); |
|---|
| 24 | + wp_enqueue_style( 'customize-loader', includes_url( '/css/customize-loader.css' ) ); |
|---|
| 25 | + require_once( 'theme.php' ); |
|---|
| 26 | + add_action( 'wp_enqueue_scripts', '_wp_customize_loader_settings' ); // enqueued on admin_enqueue_scripts in theme.php |
|---|
| 27 | + } |
|---|
| 28 | |
|---|
| 29 | /** |
|---|
| 30 | * Fires after WP_Admin_Bar is initialized. |
|---|
| 31 | Index: src/wp-includes/css/customize-loader.css |
|---|
| 32 | =================================================================== |
|---|
| 33 | --- src/wp-includes/css/customize-loader.css (revision 0) |
|---|
| 34 | +++ src/wp-includes/css/customize-loader.css (working copy) |
|---|
| 35 | @@ -0,0 +1,137 @@ |
|---|
| 36 | +/*------------------------------------------------------------------------------ |
|---|
| 37 | + 24.0 - Customize Loader (from theme.css) |
|---|
| 38 | +------------------------------------------------------------------------------*/ |
|---|
| 39 | + |
|---|
| 40 | +.no-customize-support .hide-if-no-customize, |
|---|
| 41 | +.customize-support .hide-if-customize, |
|---|
| 42 | +.no-customize-support.wp-core-ui .hide-if-no-customize, |
|---|
| 43 | +.no-customize-support .wp-core-ui .hide-if-no-customize, |
|---|
| 44 | +.customize-support.wp-core-ui .hide-if-customize, |
|---|
| 45 | +.customize-support .wp-core-ui .hide-if-customize { |
|---|
| 46 | + display: none; |
|---|
| 47 | +} |
|---|
| 48 | + |
|---|
| 49 | +#customize-container { |
|---|
| 50 | + display: none; |
|---|
| 51 | + background: #fff; |
|---|
| 52 | + z-index: 500000; |
|---|
| 53 | + position: fixed; |
|---|
| 54 | + overflow: visible; |
|---|
| 55 | + top: 0; |
|---|
| 56 | + bottom: 0; |
|---|
| 57 | + left: 0; |
|---|
| 58 | + right: 0; |
|---|
| 59 | + height: 100%; |
|---|
| 60 | +} |
|---|
| 61 | + |
|---|
| 62 | +.customize-active #customize-container { |
|---|
| 63 | + display: block; |
|---|
| 64 | +} |
|---|
| 65 | + |
|---|
| 66 | +.customize-loading #customize-container iframe { |
|---|
| 67 | + opacity: 0; |
|---|
| 68 | +} |
|---|
| 69 | + |
|---|
| 70 | +.customize-loading #customize-container { |
|---|
| 71 | + background: #fff url(../images/spinner.gif) no-repeat fixed center center; |
|---|
| 72 | + -webkit-background-size: 20px 20px; |
|---|
| 73 | + background-size: 20px 20px; |
|---|
| 74 | +} |
|---|
| 75 | + |
|---|
| 76 | +#customize-container iframe, |
|---|
| 77 | +.theme-install-overlay iframe { |
|---|
| 78 | + height: 100%; |
|---|
| 79 | + width: 100%; |
|---|
| 80 | + z-index: 20; |
|---|
| 81 | + -webkit-transition: opacity 0.3s; |
|---|
| 82 | + transition: opacity 0.3s; |
|---|
| 83 | +} |
|---|
| 84 | + |
|---|
| 85 | +#customize-container .collapse-sidebar { |
|---|
| 86 | + bottom: 16px; |
|---|
| 87 | +} |
|---|
| 88 | + |
|---|
| 89 | +#customize-controls { |
|---|
| 90 | + margin-top: 0; |
|---|
| 91 | +} |
|---|
| 92 | + |
|---|
| 93 | +.theme-install-overlay { |
|---|
| 94 | + display: none; |
|---|
| 95 | +} |
|---|
| 96 | + |
|---|
| 97 | +.theme-install-overlay.single-theme { |
|---|
| 98 | + display: block; |
|---|
| 99 | +} |
|---|
| 100 | + |
|---|
| 101 | +.install-theme-info { |
|---|
| 102 | + display: none; |
|---|
| 103 | + padding: 10px 20px 60px; |
|---|
| 104 | +} |
|---|
| 105 | + |
|---|
| 106 | +.single-theme .install-theme-info { |
|---|
| 107 | + padding-top: 15px; |
|---|
| 108 | +} |
|---|
| 109 | + |
|---|
| 110 | +.theme-install-overlay .install-theme-info { |
|---|
| 111 | + display: block; |
|---|
| 112 | +} |
|---|
| 113 | + |
|---|
| 114 | +.install-theme-info .theme-install { |
|---|
| 115 | + float: right; |
|---|
| 116 | + margin-top: 18px; |
|---|
| 117 | +} |
|---|
| 118 | + |
|---|
| 119 | +.install-theme-info .theme-name { |
|---|
| 120 | + font-size: 16px; |
|---|
| 121 | + line-height: 24px; |
|---|
| 122 | + margin-bottom: 0; |
|---|
| 123 | + margin-top: 0; |
|---|
| 124 | +} |
|---|
| 125 | + |
|---|
| 126 | +.install-theme-info .theme-screenshot { |
|---|
| 127 | + margin-top: 15px; |
|---|
| 128 | + width: 258px; |
|---|
| 129 | + border: 1px solid #ccc; |
|---|
| 130 | +} |
|---|
| 131 | + |
|---|
| 132 | +.install-theme-info .theme-details { |
|---|
| 133 | + overflow: hidden; |
|---|
| 134 | +} |
|---|
| 135 | + |
|---|
| 136 | +.theme-details .theme-version { |
|---|
| 137 | + margin: 15px 0; |
|---|
| 138 | + float: left; |
|---|
| 139 | +} |
|---|
| 140 | + |
|---|
| 141 | +.theme-details .star-rating { |
|---|
| 142 | + margin: 7px 0; |
|---|
| 143 | + float: right; |
|---|
| 144 | +} |
|---|
| 145 | + |
|---|
| 146 | +.theme-details .theme-description { |
|---|
| 147 | + float: left; |
|---|
| 148 | + color: #777; |
|---|
| 149 | + line-height: 20px; |
|---|
| 150 | + max-width: 100%; |
|---|
| 151 | +} |
|---|
| 152 | + |
|---|
| 153 | +.theme-install-overlay .wp-full-overlay-header { |
|---|
| 154 | + margin-top: 9px; |
|---|
| 155 | +} |
|---|
| 156 | + |
|---|
| 157 | +.theme-install-overlay .wp-full-overlay-header .theme-install { |
|---|
| 158 | + float: right; |
|---|
| 159 | + /* For when .theme-install is a span rather than a.button-primary (already installed theme) */ |
|---|
| 160 | + line-height: 26px; |
|---|
| 161 | +} |
|---|
| 162 | + |
|---|
| 163 | +.theme-install-overlay .wp-full-overlay-sidebar { |
|---|
| 164 | + background: #EEE; |
|---|
| 165 | + border-right: 1px solid #DDD; |
|---|
| 166 | +} |
|---|
| 167 | + |
|---|
| 168 | +.theme-install-overlay .wp-full-overlay-main { |
|---|
| 169 | + background: #fff url(../images/spinner.gif) no-repeat center center; |
|---|
| 170 | + -webkit-background-size: 20px 20px; |
|---|
| 171 | + background-size: 20px 20px; |
|---|
| 172 | +} |
|---|
| 173 | Index: src/wp-includes/js/customize-loader.js |
|---|
| 174 | =================================================================== |
|---|
| 175 | --- src/wp-includes/js/customize-loader.js (revision 28867) |
|---|
| 176 | +++ src/wp-includes/js/customize-loader.js (working copy) |
|---|
| 177 | @@ -26,7 +26,7 @@ |
|---|
| 178 | this.bind( 'open', this.overlay.show ); |
|---|
| 179 | this.bind( 'close', this.overlay.hide ); |
|---|
| 180 | |
|---|
| 181 | - $('#wpbody').on( 'click', '.load-customize', function( event ) { |
|---|
| 182 | + $('#wpadminbar').on( 'click', '.load-customize a', function( event ) { |
|---|
| 183 | event.preventDefault(); |
|---|
| 184 | |
|---|
| 185 | // Store a reference to the link that opened the customizer. |
|---|
| 186 | @@ -34,7 +34,15 @@ |
|---|
| 187 | // Load the theme. |
|---|
| 188 | Loader.open( Loader.link.attr('href') ); |
|---|
| 189 | }); |
|---|
| 190 | + $('#wpwrap').on( 'click', '.load-customize', function( event ) { |
|---|
| 191 | + event.preventDefault(); |
|---|
| 192 | |
|---|
| 193 | + // Store a reference to the link that opened the customizer. |
|---|
| 194 | + Loader.link = $(this); |
|---|
| 195 | + // Load the theme. |
|---|
| 196 | + Loader.open( Loader.link.attr('href') ); |
|---|
| 197 | + }); |
|---|
| 198 | + |
|---|
| 199 | // Add navigation listeners. |
|---|
| 200 | if ( $.support.history ) |
|---|
| 201 | this.window.on( 'popstate', Loader.popstate ); |
|---|