Make WordPress Core

Ticket #29949: 29949.diff

File 29949.diff, 5.8 KB (added by celloexpressions, 12 years ago)

Better collapsed mode for the Customizer. Requires 28504.2.diff, see #28504.

Line 
1Index: src/wp-admin/css/customize-controls.css
2===================================================================
3--- src/wp-admin/css/customize-controls.css (revision 29885)
4+++ src/wp-admin/css/customize-controls.css (working copy)
5@@ -208,7 +208,8 @@
6 transition: color .1s ease-in-out, background .1s ease-in-out;
7 }
8
9-.control-panel-back {
10+.control-panel-back,
11+.expand-controls {
12 display: block;
13 position: fixed;
14 top: 0;
15@@ -224,14 +225,26 @@
16 transition: left .18s ease-in-out, color .1s ease-in-out, background .1s ease-in-out;
17 }
18
19-.collapsed .control-panel-back {
20+.expand-controls {
21+ padding-right: 0;
22+ transition: none;
23+}
24+
25+.collapsed .control-panel-back,
26+.collapsed .customize-controls-close {
27 display: none;
28 }
29
30+.collapsed .expand-controls {
31+ left: 0;
32+}
33+
34 .customize-controls-close:focus,
35 .customize-controls-close:hover,
36 .control-panel-back:focus,
37-.control-panel-back:hover {
38+.control-panel-back:hover,
39+.expand-controls:focus,
40+.expand-controls:hover {
41 background: #ddd;
42 border-color: #ccc;
43 color: #000;
44@@ -256,6 +269,18 @@
45 left: 13px;
46 }
47
48+.expand-controls:before {
49+ font: normal 20px/1 dashicons;
50+ content: "\f345";
51+ position: relative;
52+ top: 7px;
53+ left: 13px;
54+}
55+
56+.rtl .expand-controls:before {
57+ content: "\f341";
58+}
59+
60 .rtl .control-panel-back:before {
61 content: "\f344";
62 }
63@@ -431,9 +456,11 @@
64 box-shadow: none !important;
65 -webkit-border-radius: 0 !important;
66 border-radius: 0 !important;
67+ position: fixed;
68+ left: 0;
69+ bottom: 0;
70 }
71
72-
73 .collapse-sidebar:active,
74 .collapse-sidebar:active .collapse-sidebar-label,
75 .collapse-sidebar:active .collapse-sidebar-arrow:before {
76@@ -440,10 +467,110 @@
77 text-shadow: none;
78 }
79
80-.collapsed .collapse-sidebar-arrow:before {
81- color: #888;
82+/* Collapsed Mode */
83+@media screen and (min-width:600px) {
84+ .collapsed #customize-preview {
85+ left: 46px;
86+ }
87+
88+ .wp-full-overlay.collapsed #customize-controls {
89+ margin-left: 0;
90+ width: 46px;
91+ white-space: nowrap;
92+ }
93+
94+ .collapsed .wp-full-overlay-main {
95+ right: 0;
96+ width: auto;
97+ }
98+
99+ .collapsed #customize-info,
100+ .collapsed #customize-controls .accordion-section-title:after {
101+ display: none;
102+ }
103+
104+ .collapsed .control-section .accordion-section-title,
105+ .collapsed .control-panel .accordion-section-title {
106+ white-space: nowrap;
107+ overflow: hidden;
108+ text-overflow: ellipsis;
109+ }
110+
111+ .collapsed #customize-controls .wp-full-overlay-sidebar-content {
112+ overflow-y: hidden;
113+ }
114+
115+ /* No animation fading in, as it causes layout issues */
116+ .expanded.wp-full-overlay,
117+ .expanded #customize-preview,
118+ .expanded #customize-controls {
119+ transition: none;
120+ }
121+
122+ .in-sub-panel.wp-full-overlay,
123+ .collapsed.wp-full-overlay,
124+ .in-sub-panel #customize-preview,
125+ .collapsed #customize-preview,
126+ .collapsed #customize-controls {
127+ transition: all .2s linear;
128+ }
129+
130+ }
131+
132 /* Style for custom settings */
133
134 /*
135Index: src/wp-admin/css/themes.css
136===================================================================
137--- src/wp-admin/css/themes.css (revision 29885)
138+++ src/wp-admin/css/themes.css (working copy)
139@@ -1464,7 +1464,7 @@
140
141 /* Collapse Button */
142 .wp-full-overlay a.collapse-sidebar {
143- position: absolute;
144+ position: fixed;
145 bottom: 12px;
146 left: 0;
147 z-index: 50;
148@@ -1483,11 +1483,6 @@
149 color: #0074a2;
150 }
151
152-.wp-full-overlay.collapsed .collapse-sidebar {
153- position: absolute;
154- left: 100%;
155-}
156-
157 .wp-full-overlay .collapse-sidebar-arrow {
158 position: static;
159 margin-top: 0;
160Index: src/wp-admin/customize.php
161===================================================================
162--- src/wp-admin/customize.php (revision 29885)
163+++ src/wp-admin/customize.php (working copy)
164@@ -122,6 +122,7 @@
165 <span class="screen-reader-text"><?php _e( 'Cancel' ); ?></span>
166 </a>
167 <span class="control-panel-back" tabindex="-1"><span class="screen-reader-text"><?php _e( 'Back' ); ?></span></span>
168+ <span class="expand-controls" tabindex="-1"><span class="screen-reader-text"><?php _e( 'Expand controls' ); ?></span></span>
169 </div>
170
171 <?php
172@@ -173,7 +174,7 @@
173 <div id="customize-footer-actions" class="wp-full-overlay-footer">
174 <a href="#" class="collapse-sidebar button-secondary" title="<?php esc_attr_e('Collapse Sidebar'); ?>">
175 <span class="collapse-sidebar-arrow"></span>
176- <span class="collapse-sidebar-label"><?php _e('Collapse'); ?></span>
177+ <span class="collapse-sidebar-label"><?php _e( 'Collapse controls' ); ?></span>
178 </a>
179 </div>
180 </form>
181Index: src/wp-admin/js/customize-controls.js
182===================================================================
183--- src/wp-admin/js/customize-controls.js (revision 29885)
184+++ src/wp-admin/js/customize-controls.js (working copy)
185@@ -1185,14 +1185,33 @@
186 this.click();
187 });
188
189+ $('.expand-controls').on( 'click keydown', function( event ) {
190+ overlay.toggleClass( 'collapsed' ).toggleClass( 'expanded' );
191+ });
192+
193 $('.collapse-sidebar').on( 'click keydown', function( event ) {
194- if ( event.type === 'keydown' && 13 !== event.which ) // enter
195+ if ( event.type === 'keydown' && 13 !== event.which ) { // enter
196 return;
197+ }
198
199 overlay.toggleClass( 'collapsed' ).toggleClass( 'expanded' );
200+ $('.control-section.open .accordion-section-title').trigger( 'click' );
201+ if ( overlay.hasClass('in-sub-panel') ) {
202+ $('.control-panel-back').trigger( 'click' );
203+ }
204 event.preventDefault();
205 });
206
207+ $('.accordion-section-title').on( 'click keydown', function( event ) {
208+ if ( event.type === 'keydown' && 13 !== event.which ) { // enter
209+ return;
210+ } else if ( overlay.hasClass( 'collapsed' ) ) {
211+ if ( ! $( this ).closest( '.control-section' ).hasClass( 'open' ) ) {
212+ $( '.expand-controls' ).trigger( 'click' );
213+ }
214+ }
215+ });
216+
217 // Bind site title display to the corresponding field.
218 if ( title.length ) {
219 $( '#customize-control-blogname input' ).on( 'input', function() {