@@ -193,37 +193,49 @@ AttachmentsBrowser = View.extend(/** @lends wp.media.view.AttachmentsBrowser.pro
193193 priority : - 100 ,
194194 text : l10n . filterAttachments ,
195195 level : 'h2' ,
196- className : 'media-attachments-filter-heading'
196+ className : 'media-attachments-filter-heading screen-reader-text '
197197 } ) . render ( ) ) ;
198198 }
199199
200200 if ( showFilterByType ) {
201201 // "Filters" is a <select>, a visually hidden label element needs to be rendered before.
202- this . toolbar . set ( ' filtersLabel' , new wp . media . view . Label ( {
202+ var filtersLabel = new wp . media . view . Label ( {
203203 value : l10n . filterByType ,
204204 attributes : {
205205 'for' : 'media-attachment-filters'
206206 } ,
207207 priority : - 80
208- } ) . render ( ) ) ;
208+ } ) ;
209209
210210 if ( 'uploaded' === this . options . filters ) {
211- this . toolbar . set ( 'filters' , new wp . media . view . AttachmentFilters . Uploaded ( {
211+ Filters = new wp . media . view . AttachmentFilters . Uploaded ( {
212212 controller : this . controller ,
213213 model : this . collection . props ,
214- priority : - 80
215- } ) . render ( ) ) ;
214+ } ) ;
216215 } else {
217216 Filters = new wp . media . view . AttachmentFilters . All ( {
218217 controller : this . controller ,
219218 model : this . collection . props ,
220- priority : - 80
221219 } ) ;
222-
223- this . toolbar . set ( 'filters' , Filters . render ( ) ) ;
224220 }
225- }
226221
222+ var filterContainer = wp . media . View . extend ( {
223+ tagname : 'div' ,
224+ className : 'media-filter-container type-filter' ,
225+
226+ initialize : function ( ) {
227+ this . views . add ( [ filtersLabel , Filters ] ) ;
228+ }
229+ } ) ;
230+
231+ this . toolbar . set ( 'filters' , new filterContainer ( {
232+ controller : this . controller ,
233+ model : this . controller . props ,
234+ priority : - 80
235+ } ) . render ( ) ) ;
236+ }
237+
238+ var dateFilter , dateFilterLabel , dateFilterContainer ;
227239 /*
228240 * Feels odd to bring the global media library switcher into the Attachment browser view.
229241 * Is this a use case for doAction( 'add:toolbar-items:attachments-browser', this.toolbar );
@@ -241,17 +253,30 @@ AttachmentsBrowser = View.extend(/** @lends wp.media.view.AttachmentsBrowser.pro
241253 } ) . render ( ) ) ;
242254
243255 // DateFilter is a <select>, a visually hidden label element needs to be rendered before.
244- this . toolbar . set ( ' dateFilterLabel' , new wp . media . view . Label ( {
256+ dateFilterLabel = new wp . media . view . Label ( {
245257 value : l10n . filterByDate ,
246258 attributes : {
247259 'for' : 'media-attachment-date-filters'
248260 } ,
249- priority : - 75
250- } ) . render ( ) ) ;
251- this . toolbar . set ( 'dateFilter' , new wp . media . view . DateFilter ( {
261+ } ) ;
262+ dateFilter = new wp . media . view . DateFilter ( {
263+ controller : this . controller ,
264+ model : this . collection . props ,
265+ } ) ;
266+
267+ dateFilterContainer = wp . media . View . extend ( {
268+ tagname : 'div' ,
269+ className : 'media-filter-container date-filter' ,
270+
271+ initialize : function ( ) {
272+ this . views . add ( [ dateFilterLabel , dateFilter ] ) ;
273+ }
274+ } ) ;
275+
276+ this . toolbar . set ( 'dateFilters' , new dateFilterContainer ( {
252277 controller : this . controller ,
253278 model : this . collection . props ,
254- priority : - 75
279+ priority : - 75
255280 } ) . render ( ) ) ;
256281
257282 // BulkSelection is a <div> with subviews, including screen reader text.
@@ -363,17 +388,30 @@ AttachmentsBrowser = View.extend(/** @lends wp.media.view.AttachmentsBrowser.pro
363388
364389 } else if ( this . options . date ) {
365390 // DateFilter is a <select>, a visually hidden label element needs to be rendered before.
366- this . toolbar . set ( ' dateFilterLabel' , new wp . media . view . Label ( {
391+ dateFilterLabel = new wp . media . view . Label ( {
367392 value : l10n . filterByDate ,
368393 attributes : {
369394 'for' : 'media-attachment-date-filters'
370395 } ,
371- priority : - 75
372- } ) . render ( ) ) ;
373- this . toolbar . set ( 'dateFilter' , new wp . media . view . DateFilter ( {
396+ } ) ;
397+ dateFilter = new wp . media . view . DateFilter ( {
398+ controller : this . controller ,
399+ model : this . collection . props ,
400+ } ) ;
401+
402+ dateFilterContainer = wp . media . View . extend ( {
403+ tagname : 'div' ,
404+ className : 'media-filter-container date-filter' ,
405+
406+ initialize : function ( ) {
407+ this . views . add ( [ dateFilterLabel , dateFilter ] ) ;
408+ }
409+ } ) ;
410+
411+ this . toolbar . set ( 'dateFilters' , new dateFilterContainer ( {
374412 controller : this . controller ,
375413 model : this . collection . props ,
376- priority : - 75
414+ priority : - 75
377415 } ) . render ( ) ) ;
378416 }
379417
0 commit comments