marinofaggiana 4 years ago
parent
commit
7863b233d4
3 changed files with 28 additions and 2 deletions
  1. 3 2
      Share/NCShareExtension.swift
  2. 13 0
      iOSClient/NCGlobal.swift
  3. 12 0
      iOSClient/Utility/NCUtility.swift

+ 3 - 2
Share/NCShareExtension.swift

@@ -61,6 +61,7 @@ class NCShareExtension: UIViewController, NCListCellDelegate, NCEmptyDataSetDele
     private var titleButtonHeader = ""
     private var itemForLine = 0
     private var fillBackgroud = ""
+    private var fillBackgroudContentMode = ""
     
     private var heightRowTableView: CGFloat = 50
     private var heightCommandView: CGFloat = 170
@@ -193,7 +194,7 @@ class NCShareExtension: UIViewController, NCListCellDelegate, NCEmptyDataSetDele
         
         serverUrl = NCUtilityFileSystem.shared.getHomeServer(urlBase: activeAccount.urlBase, account: activeAccount.account)
         
-        (layout, sort, ascending, groupBy, directoryOnTop, titleButtonHeader, itemForLine, fillBackgroud) = NCUtility.shared.getLayoutForView(key: keyLayout,serverUrl: serverUrl)
+        (layout, sort, ascending, groupBy, directoryOnTop, titleButtonHeader, itemForLine, fillBackgroud, fillBackgroudContentMode) = NCUtility.shared.getLayoutForView(key: keyLayout,serverUrl: serverUrl)
             
         reloadDatasource(withLoadFolder: true)
         setNavigationBar(navigationTitle: NCBrandOptions.shared.brand)
@@ -689,7 +690,7 @@ extension NCShareExtension {
 
     @objc func reloadDatasource(withLoadFolder: Bool) {
                 
-        (layout, sort, ascending, groupBy, directoryOnTop, titleButtonHeader, itemForLine, fillBackgroud) = NCUtility.shared.getLayoutForView(key: keyLayout, serverUrl: serverUrl)
+        (layout, sort, ascending, groupBy, directoryOnTop, titleButtonHeader, itemForLine, fillBackgroud, fillBackgroudContentMode) = NCUtility.shared.getLayoutForView(key: keyLayout, serverUrl: serverUrl)
                 
         let metadatasSource = NCManageDatabase.shared.getMetadatas(predicate: NSPredicate(format: "account == %@ AND serverUrl == %@ AND directory == true", activeAccount.account, serverUrl))
         self.dataSource = NCDataSource.init(metadatasSource: metadatasSource, sort: sort, ascending: ascending, directoryOnTop: directoryOnTop, favoriteOnTop: true, filterLivePhoto: true)

+ 13 - 0
iOSClient/NCGlobal.swift

@@ -37,6 +37,19 @@ class NCGlobal: NSObject {
         var totalBytesExpected: Int64
     }
     
+    // Struct for LayoutForView
+    //
+    struct layoutForViewType {
+        var sort: String
+        var ascending: Bool
+        var groupBy: String
+        var directoryOnTop: Bool
+        var titleButtonHeader: String
+        var itemForLine: Int
+        var fillBackgroud: String
+        var fillBackgroudContentMode: String
+    }
+    
     // Directory on Group
     //
     @objc let appDatabaseNextcloud                  = "Library/Application Support/Nextcloud"

+ 12 - 0
iOSClient/Utility/NCUtility.swift

@@ -38,6 +38,18 @@ class NCUtility: NSObject {
     private var viewActivityIndicator: UIView?
     private var viewBackgroundActivityIndicator: UIView?
 
+    func setLayoutForView(key: String, serverUrl: String, layout: String, object: NCGlobal.layoutForViewType) {
+        
+        let string =  layout + "|" + object.sort + "|" + "\(object.ascending)" + "|" + object.groupBy + "|" + "\(object.directoryOnTop)" + "|" + object.titleButtonHeader + "|" + "\(object.itemForLine)" + "|" + object.fillBackgroud + "|" + object.fillBackgroudContentMode
+        var keyStore = key
+        
+        if serverUrl != "" {
+            keyStore = serverUrl
+        }
+        
+        UICKeyChainStore.setString(string, forKey: keyStore, service: NCGlobal.shared.serviceShareKeyChain)
+    }
+    
     func setLayoutForView(key: String, serverUrl: String, layout: String, sort: String, ascending: Bool, groupBy: String, directoryOnTop: Bool, titleButtonHeader: String, itemForLine: Int, fillBackgroud: String, fillBackgroudContentMode: String) {
         
         let string =  layout + "|" + sort + "|" + "\(ascending)" + "|" + groupBy + "|" + "\(directoryOnTop)" + "|" + titleButtonHeader + "|" + "\(itemForLine)" + "|" + fillBackgroud + "|" + fillBackgroudContentMode