@@ -36,18 +36,21 @@ class NCCollectionViewDataSource: NSObject {
3636 private var metadatasForSection : [ NCMetadataForSection ] = [ ]
3737 private var layoutForView : NCDBLayoutForView ?
3838 private var metadataIndexPath = ThreadSafeDictionary < IndexPath , tableMetadata > ( )
39+ private var directoryOnTop : Bool = true
3940
4041 override init ( ) { super. init ( ) }
4142
4243 init ( metadatas: [ tableMetadata ] ,
4344 layoutForView: NCDBLayoutForView ? = nil ,
4445 providers: [ NKSearchProvider ] ? = nil ,
45- searchResults: [ NKSearchResult ] ? = nil ) {
46+ searchResults: [ NKSearchResult ] ? = nil ,
47+ directoryOnTop: Bool ) {
4648 super. init ( )
4749 removeAll ( )
4850
4951 self . metadatas = metadatas
5052 self . layoutForView = layoutForView
53+ self . directoryOnTop = directoryOnTop
5154 /// unified search
5255 self . providers = providers
5356 self . searchResults = searchResults
@@ -111,12 +114,10 @@ class NCCollectionViewDataSource: NSObject {
111114 /// normal
112115 let directory = NSLocalizedString ( " directory " , comment: " " ) . lowercased ( ) . firstUppercased
113116 self . sectionsValue = self . sectionsValue. sorted {
114- if let directoryOnTop = layoutForView? . directoryOnTop,
115- directoryOnTop,
117+ if self . directoryOnTop,
116118 $0 == directory {
117119 return true
118- } else if let directoryOnTop = layoutForView? . directoryOnTop,
119- directoryOnTop,
120+ } else if self . directoryOnTop,
120121 $1 == directory {
121122 return false
122123 }
@@ -146,7 +147,8 @@ class NCCollectionViewDataSource: NSObject {
146147 let metadataForSection = NCMetadataForSection ( sectionValue: sectionValue,
147148 metadatas: metadatas,
148149 lastSearchResult: searchResult,
149- layoutForView: self . layoutForView)
150+ layoutForView: self . layoutForView,
151+ directoryOnTop: self . directoryOnTop)
150152 metadatasForSection. append ( metadataForSection)
151153 }
152154
@@ -342,6 +344,7 @@ class NCMetadataForSection: NSObject {
342344 var lastSearchResult : NKSearchResult ?
343345 var unifiedSearchInProgress : Bool = false
344346 var layoutForView : NCDBLayoutForView ?
347+ var directoryOnTop : Bool
345348
346349 private var metadatasSorted : [ tableMetadata ] = [ ]
347350 private var metadatasFavoriteDirectory : [ tableMetadata ] = [ ]
@@ -353,11 +356,12 @@ class NCMetadataForSection: NSObject {
353356 public var numFile : Int = 0
354357 public var totalSize : Int64 = 0
355358
356- init ( sectionValue: String , metadatas: [ tableMetadata ] , lastSearchResult: NKSearchResult ? , layoutForView: NCDBLayoutForView ? ) {
359+ init ( sectionValue: String , metadatas: [ tableMetadata ] , lastSearchResult: NKSearchResult ? , layoutForView: NCDBLayoutForView ? , directoryOnTop : Bool ) {
357360 self . sectionValue = sectionValue
358361 self . metadatas = metadatas
359362 self . lastSearchResult = lastSearchResult
360363 self . layoutForView = layoutForView
364+ self . directoryOnTop = directoryOnTop
361365
362366 super. init ( )
363367
@@ -441,7 +445,7 @@ class NCMetadataForSection: NSObject {
441445 } else {
442446 metadatasFavoriteFile. append ( metadata)
443447 }
444- } else if metadata. directory && layoutForView ? . directoryOnTop ?? true {
448+ } else if metadata. directory && self . directoryOnTop {
445449 metadatasDirectory. append ( metadata)
446450 } else {
447451 metadatasFile. append ( metadata)
0 commit comments