marinofaggiana 4 жил өмнө
parent
commit
228fd797fe

+ 0 - 1
iOSClient/CCGlobal.h

@@ -277,7 +277,6 @@
 #define k_layout_view_offline                           @"LayoutOffline"
 #define k_layout_view_offline                           @"LayoutOffline"
 #define k_layout_view_favorite                          @"LayoutFavorite"
 #define k_layout_view_favorite                          @"LayoutFavorite"
 #define k_layout_view_files                             @"LayoutFiles"
 #define k_layout_view_files                             @"LayoutFiles"
-#define k_layout_view_main                              @"LayoutMain"
 #define k_layout_view_transfers                         @"LayoutTransfers"
 #define k_layout_view_transfers                         @"LayoutTransfers"
 
 
 // Rich Workspace
 // Rich Workspace

+ 1 - 1
iOSClient/Favorites/NCFavorite.swift

@@ -47,7 +47,7 @@ class NCFavorite: NCCollectionViewCommon  {
         var ascending: Bool
         var ascending: Bool
         var directoryOnTop: Bool
         var directoryOnTop: Bool
         
         
-        (layout, sort, ascending, groupBy, directoryOnTop, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: layoutKey)
+        (layout, sort, ascending, groupBy, directoryOnTop, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: layoutKey, serverUrl: serverUrl)
         
         
         if !isSearching {
         if !isSearching {
        
        

+ 1 - 1
iOSClient/Files/NCFiles.swift

@@ -68,7 +68,7 @@ class NCFiles: NCCollectionViewCommon  {
         var ascending: Bool
         var ascending: Bool
         var directoryOnTop: Bool
         var directoryOnTop: Bool
         
         
-        (layout, sort, ascending, groupBy, directoryOnTop, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: layoutKey)
+        (layout, sort, ascending, groupBy, directoryOnTop, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: layoutKey, serverUrl: serverUrl)
         
         
         if !isSearching {
         if !isSearching {
             metadatasSource = NCManageDatabase.sharedInstance.getMetadatas(predicate: NSPredicate(format: "account == %@ AND serverUrl == %@", appDelegate.account, serverUrl))
             metadatasSource = NCManageDatabase.sharedInstance.getMetadatas(predicate: NSPredicate(format: "account == %@ AND serverUrl == %@", appDelegate.account, serverUrl))

+ 3 - 3
iOSClient/Main/Collection/NCCollectionViewCommon.swift

@@ -168,7 +168,7 @@ class NCCollectionViewCommon: UIViewController, UIGestureRecognizerDelegate, UIS
         
         
         self.navigationItem.title = titleCurrentFolder
         self.navigationItem.title = titleCurrentFolder
                 
                 
-        (layout, _, _, groupBy, _, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: layoutKey)
+        (layout, _, _, groupBy, _, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: layoutKey, serverUrl: serverUrl)
         gridLayout.itemForLine = CGFloat(itemForLine)
         gridLayout.itemForLine = CGFloat(itemForLine)
         
         
         if layout == k_layout_list {
         if layout == k_layout_list {
@@ -600,7 +600,7 @@ class NCCollectionViewCommon: UIViewController, UIGestureRecognizerDelegate, UIS
                 })
                 })
             })
             })
             layout = k_layout_list
             layout = k_layout_list
-            NCUtility.shared.setLayoutForView(key: layoutKey, layout: layout)
+            NCUtility.shared.setLayoutForView(key: layoutKey, serverUrl: serverUrl, layout: layout)
         } else {
         } else {
             // grid layout
             // grid layout
             UIView.animate(withDuration: 0.0, animations: {
             UIView.animate(withDuration: 0.0, animations: {
@@ -611,7 +611,7 @@ class NCCollectionViewCommon: UIViewController, UIGestureRecognizerDelegate, UIS
                 })
                 })
             })
             })
             layout = k_layout_grid
             layout = k_layout_grid
-            NCUtility.shared.setLayoutForView(key: layoutKey, layout: layout)
+            NCUtility.shared.setLayoutForView(key: layoutKey, serverUrl: serverUrl, layout: layout)
         }
         }
     }
     }
     
     

+ 2 - 2
iOSClient/Main/Menu/NCSortMenu.swift

@@ -46,7 +46,7 @@ class NCSortMenu: NSObject {
         self.serverUrl = serverUrl
         self.serverUrl = serverUrl
         self.hideDirectoryOnTop = hideDirectoryOnTop
         self.hideDirectoryOnTop = hideDirectoryOnTop
         
         
-        (layout, sort, ascending, groupBy, directoryOnTop, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: key)
+        (layout, sort, ascending, groupBy, directoryOnTop, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: key, serverUrl: serverUrl ?? "")
 
 
         let mainMenuViewController = UIStoryboard.init(name: "NCMenu", bundle: nil).instantiateViewController(withIdentifier: "NCMainMenuTableViewController") as! NCMainMenuTableViewController
         let mainMenuViewController = UIStoryboard.init(name: "NCMenu", bundle: nil).instantiateViewController(withIdentifier: "NCMainMenuTableViewController") as! NCMainMenuTableViewController
         mainMenuViewController.actions = self.initSortMenu()
         mainMenuViewController.actions = self.initSortMenu()
@@ -75,7 +75,7 @@ class NCSortMenu: NSObject {
         
         
         self.sortButton?.setTitle(NSLocalizedString(titleButton, comment: ""), for: .normal)
         self.sortButton?.setTitle(NSLocalizedString(titleButton, comment: ""), for: .normal)
         
         
-        NCUtility.shared.setLayoutForView(key: key, layout: layout, sort: sort, ascending: ascending, groupBy: groupBy, directoryOnTop: directoryOnTop, titleButton: titleButton, itemForLine: itemForLine)
+        NCUtility.shared.setLayoutForView(key: key, serverUrl: serverUrl ?? "", layout: layout, sort: sort, ascending: ascending, groupBy: groupBy, directoryOnTop: directoryOnTop, titleButton: titleButton, itemForLine: itemForLine)
         
         
         NotificationCenter.default.postOnMainThread(name: k_notificationCenter_reloadDataSource, userInfo: ["serverUrl":self.serverUrl ?? ""])
         NotificationCenter.default.postOnMainThread(name: k_notificationCenter_reloadDataSource, userInfo: ["serverUrl":self.serverUrl ?? ""])
     }
     }

+ 1 - 1
iOSClient/Offline/NCOffline.swift

@@ -48,7 +48,7 @@ class NCOffline: NCCollectionViewCommon  {
         var ascending: Bool
         var ascending: Bool
         var directoryOnTop: Bool
         var directoryOnTop: Bool
            
            
-        (layout, sort, ascending, groupBy, directoryOnTop, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: layoutKey)
+        (layout, sort, ascending, groupBy, directoryOnTop, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: layoutKey, serverUrl: serverUrl)
 
 
         if !isSearching {
         if !isSearching {
             
             

+ 4 - 4
iOSClient/Select/NCSelect.swift

@@ -177,7 +177,7 @@ class NCSelect: UIViewController, UIGestureRecognizerDelegate, NCListCellDelegat
         autoUploadFileName = NCManageDatabase.sharedInstance.getAccountAutoUploadFileName()
         autoUploadFileName = NCManageDatabase.sharedInstance.getAccountAutoUploadFileName()
         autoUploadDirectory = NCManageDatabase.sharedInstance.getAccountAutoUploadDirectory(urlBase: appDelegate.urlBase, account: appDelegate.account)
         autoUploadDirectory = NCManageDatabase.sharedInstance.getAccountAutoUploadDirectory(urlBase: appDelegate.urlBase, account: appDelegate.account)
         
         
-        (layout, _, _, groupBy, _, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: keyLayout)
+        (layout, _, _, groupBy, _, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: keyLayout,serverUrl: serverUrl)
         gridLayout.itemForLine = CGFloat(itemForLine)
         gridLayout.itemForLine = CGFloat(itemForLine)
         
         
         if layout == k_layout_list {
         if layout == k_layout_list {
@@ -301,7 +301,7 @@ class NCSelect: UIViewController, UIGestureRecognizerDelegate, NCListCellDelegat
                 })
                 })
             })
             })
             layout = k_layout_list
             layout = k_layout_list
-            NCUtility.shared.setLayoutForView(key: keyLayout, layout: layout)
+            NCUtility.shared.setLayoutForView(key: keyLayout, serverUrl: serverUrl, layout: layout)
         } else {
         } else {
             // grid layout
             // grid layout
             UIView.animate(withDuration: 0.0, animations: {
             UIView.animate(withDuration: 0.0, animations: {
@@ -312,7 +312,7 @@ class NCSelect: UIViewController, UIGestureRecognizerDelegate, NCListCellDelegat
                 })
                 })
             })
             })
             layout = k_layout_grid
             layout = k_layout_grid
-            NCUtility.shared.setLayoutForView(key: keyLayout, layout: layout)
+            NCUtility.shared.setLayoutForView(key: keyLayout, serverUrl: serverUrl, layout: layout)
         }
         }
     }
     }
     
     
@@ -506,7 +506,7 @@ extension NCSelect {
         var ascending: Bool
         var ascending: Bool
         var directoryOnTop: Bool
         var directoryOnTop: Bool
         
         
-        (layout, sort, ascending, groupBy, directoryOnTop, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: keyLayout)
+        (layout, sort, ascending, groupBy, directoryOnTop, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: keyLayout, serverUrl: serverUrl)
         
         
         if serverUrl == "" {
         if serverUrl == "" {
             
             

+ 1 - 1
iOSClient/Transfers/NCTransfers.swift

@@ -204,7 +204,7 @@ class NCTransfers: NCCollectionViewCommon  {
     override func reloadDataSource() {
     override func reloadDataSource() {
         super.reloadDataSource()
         super.reloadDataSource()
         
         
-        (layout, _, _, groupBy, _, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: layoutKey)
+        (layout, _, _, groupBy, _, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: layoutKey, serverUrl: "")
         
         
         metadatasSource = NCManageDatabase.sharedInstance.getMetadatas(predicate: NSPredicate(format: "(session CONTAINS 'upload') OR (session CONTAINS 'download')"), page: 1, limit: 100, sorted: "sessionTaskIdentifier", ascending: false)
         metadatasSource = NCManageDatabase.sharedInstance.getMetadatas(predicate: NSPredicate(format: "(session CONTAINS 'upload') OR (session CONTAINS 'download')"), page: 1, limit: 100, sorted: "sessionTaskIdentifier", ascending: false)
         self.dataSource = NCDataSource.init(metadatasSource: metadatasSource, sort: "sessionTaskIdentifier", ascending: true, directoryOnTop: false, filterLivePhoto: false)
         self.dataSource = NCDataSource.init(metadatasSource: metadatasSource, sort: "sessionTaskIdentifier", ascending: true, directoryOnTop: false, filterLivePhoto: false)

+ 4 - 4
iOSClient/Trash/NCTrash.swift

@@ -95,7 +95,7 @@ class NCTrash: UIViewController, UIGestureRecognizerDelegate, NCTrashListCellDel
         
         
         self.navigationItem.title = titleCurrentFolder
         self.navigationItem.title = titleCurrentFolder
 
 
-        (layout, _, _, groupBy, _, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: k_layout_view_trash)
+        (layout, _, _, groupBy, _, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: k_layout_view_trash, serverUrl: "")
         gridLayout.itemForLine = CGFloat(itemForLine)
         gridLayout.itemForLine = CGFloat(itemForLine)
         
         
         if layout == k_layout_list {
         if layout == k_layout_list {
@@ -172,7 +172,7 @@ class NCTrash: UIViewController, UIGestureRecognizerDelegate, NCTrashListCellDel
                 })
                 })
             })
             })
             layout = k_layout_list
             layout = k_layout_list
-            NCUtility.shared.setLayoutForView(key: k_layout_view_trash, layout: layout)
+            NCUtility.shared.setLayoutForView(key: k_layout_view_trash, serverUrl: "", layout: layout)
         } else {
         } else {
             // grid layout
             // grid layout
             UIView.animate(withDuration: 0.0, animations: {
             UIView.animate(withDuration: 0.0, animations: {
@@ -183,7 +183,7 @@ class NCTrash: UIViewController, UIGestureRecognizerDelegate, NCTrashListCellDel
                 })
                 })
             })
             })
             layout = k_layout_grid
             layout = k_layout_grid
-            NCUtility.shared.setLayoutForView(key: k_layout_view_trash, layout: layout)
+            NCUtility.shared.setLayoutForView(key: k_layout_view_trash, serverUrl: "", layout: layout)
         }
         }
     }
     }
     
     
@@ -570,7 +570,7 @@ extension NCTrash {
         var sort: String
         var sort: String
         var ascending: Bool
         var ascending: Bool
         
         
-        (layout, sort, ascending, groupBy, _, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: k_layout_view_trash)
+        (layout, sort, ascending, groupBy, _, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: k_layout_view_trash, serverUrl: "")
         
         
         datasource.removeAll()
         datasource.removeAll()
         
         

+ 22 - 19
iOSClient/Utility/NCUtility.swift

@@ -147,14 +147,15 @@ class NCUtility: NSObject {
         return blurEffectView
         return blurEffectView
     }
     }
     
     
-    func setLayoutForView(key: String, layout: String, sort: String, ascending: Bool, groupBy: String, directoryOnTop: Bool, titleButton: String, itemForLine: Int) {
+    func setLayoutForView(key: String, serverUrl: String, layout: String, sort: String, ascending: Bool, groupBy: String, directoryOnTop: Bool, titleButton: String, itemForLine: Int) {
         
         
         let string =  layout + "|" + sort + "|" + "\(ascending)" + "|" + groupBy + "|" + "\(directoryOnTop)" + "|" + titleButton + "|" + "\(itemForLine)"
         let string =  layout + "|" + sort + "|" + "\(ascending)" + "|" + groupBy + "|" + "\(directoryOnTop)" + "|" + titleButton + "|" + "\(itemForLine)"
+        let key = key + serverUrl
         
         
         UICKeyChainStore.setString(string, forKey: key, service: k_serviceShareKeyChain)
         UICKeyChainStore.setString(string, forKey: key, service: k_serviceShareKeyChain)
     }
     }
     
     
-    func setLayoutForView(key: String, layout: String) {
+    func setLayoutForView(key: String, serverUrl: String, layout: String) {
         
         
         var sort: String
         var sort: String
         var ascending: Bool
         var ascending: Bool
@@ -163,57 +164,59 @@ class NCUtility: NSObject {
         var titleButton: String
         var titleButton: String
         var itemForLine: Int
         var itemForLine: Int
 
 
-        (_, sort, ascending, groupBy, directoryOnTop, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: k_layout_view_favorite)
+        (_, sort, ascending, groupBy, directoryOnTop, titleButton, itemForLine) = NCUtility.shared.getLayoutForView(key: k_layout_view_favorite, serverUrl: serverUrl)
 
 
-        setLayoutForView(key: key, layout: layout, sort: sort, ascending: ascending, groupBy: groupBy, directoryOnTop: directoryOnTop, titleButton: titleButton, itemForLine: itemForLine)
+        setLayoutForView(key: key, serverUrl: serverUrl, layout: layout, sort: sort, ascending: ascending, groupBy: groupBy, directoryOnTop: directoryOnTop, titleButton: titleButton, itemForLine: itemForLine)
     }
     }
     
     
-    @objc func getLayoutForView(key: String) -> (String) {
+    @objc func getLayoutForView(key: String, serverUrl: String) -> (String) {
         
         
         var layout: String
         var layout: String
-        (layout, _, _, _, _, _, _) = NCUtility.shared.getLayoutForView(key: key)
+        (layout, _, _, _, _, _, _) = NCUtility.shared.getLayoutForView(key: key, serverUrl: serverUrl)
         return layout
         return layout
     }
     }
     
     
-    @objc func getSortedForView(key: String) -> (String) {
+    @objc func getSortedForView(key: String, serverUrl: String) -> (String) {
         
         
         var sort: String
         var sort: String
-        (_, sort, _, _, _, _, _) = NCUtility.shared.getLayoutForView(key: key)
+        (_, sort, _, _, _, _, _) = NCUtility.shared.getLayoutForView(key: key, serverUrl: serverUrl)
         return sort
         return sort
     }
     }
     
     
-    @objc func getAscendingForView(key: String) -> (Bool) {
+    @objc func getAscendingForView(key: String, serverUrl: String) -> (Bool) {
         
         
         var ascending: Bool
         var ascending: Bool
-        (_, _, ascending, _, _, _, _) = NCUtility.shared.getLayoutForView(key: key)
+        (_, _, ascending, _, _, _, _) = NCUtility.shared.getLayoutForView(key: key, serverUrl: serverUrl)
         return ascending
         return ascending
     }
     }
     
     
-    @objc func getGroupByForView(key: String) -> (String) {
+    @objc func getGroupByForView(key: String, serverUrl: String) -> (String) {
         
         
         var groupBy: String
         var groupBy: String
-        (_, _, _, groupBy, _, _, _) = NCUtility.shared.getLayoutForView(key: key)
+        (_, _, _, groupBy, _, _, _) = NCUtility.shared.getLayoutForView(key: key, serverUrl: serverUrl)
         return groupBy
         return groupBy
     }
     }
     
     
-    @objc func getDirectoryOnTopForView(key: String) -> (Bool) {
+    @objc func getDirectoryOnTopForView(key: String, serverUrl: String) -> (Bool) {
         
         
         var directoryOnTop: Bool
         var directoryOnTop: Bool
-        (_, _, _, _, directoryOnTop, _, _) = NCUtility.shared.getLayoutForView(key: key)
+        (_, _, _, _, directoryOnTop, _, _) = NCUtility.shared.getLayoutForView(key: key, serverUrl: serverUrl)
         return directoryOnTop
         return directoryOnTop
     }
     }
     
     
-    @objc func getTitleButtonForView(key: String) -> (String) {
+    @objc func getTitleButtonForView(key: String, serverUrl: String) -> (String) {
         
         
         var titleButton: String
         var titleButton: String
-        (_, _, _, _, _, titleButton, _) = NCUtility.shared.getLayoutForView(key: key)
+        (_, _, _, _, _, titleButton, _) = NCUtility.shared.getLayoutForView(key: key, serverUrl: serverUrl)
         return titleButton
         return titleButton
     }
     }
     
     
-    func getLayoutForView(key: String) -> (layout: String, sort: String, ascending: Bool, groupBy: String, directoryOnTop: Bool, titleButton: String, itemForLine: Int) {
+    func getLayoutForView(key: String, serverUrl: String) -> (layout: String, sort: String, ascending: Bool, groupBy: String, directoryOnTop: Bool, titleButton: String, itemForLine: Int) {
+        
+        let key = key + serverUrl
         
         
         guard let string = UICKeyChainStore.string(forKey: key, service: k_serviceShareKeyChain) else {
         guard let string = UICKeyChainStore.string(forKey: key, service: k_serviceShareKeyChain) else {
-            setLayoutForView(key: key, layout: k_layout_list, sort: "fileName", ascending: true, groupBy: "none", directoryOnTop: true, titleButton: "_sorted_by_name_a_z_", itemForLine: 3)
+            setLayoutForView(key: key, serverUrl: serverUrl, layout: k_layout_list, sort: "fileName", ascending: true, groupBy: "none", directoryOnTop: true, titleButton: "_sorted_by_name_a_z_", itemForLine: 3)
             return (k_layout_list, "fileName", true, "none", true, "_sorted_by_name_a_z_", 3)
             return (k_layout_list, "fileName", true, "none", true, "_sorted_by_name_a_z_", 3)
         }
         }
 
 
@@ -226,7 +229,7 @@ class NCUtility: NSObject {
             return (array[0], array[1], sort.boolValue, array[3], directoryOnTop.boolValue, array[5], Int(itemForLine.intValue))
             return (array[0], array[1], sort.boolValue, array[3], directoryOnTop.boolValue, array[5], Int(itemForLine.intValue))
         }
         }
         
         
-        setLayoutForView(key: key, layout: k_layout_list, sort: "fileName", ascending: true, groupBy: "none", directoryOnTop: true, titleButton: "_sorted_by_name_a_z_", itemForLine: 3)
+        setLayoutForView(key: key, serverUrl: serverUrl, layout: k_layout_list, sort: "fileName", ascending: true, groupBy: "none", directoryOnTop: true, titleButton: "_sorted_by_name_a_z_", itemForLine: 3)
         return (k_layout_list, "fileName", true, "none", true, "_sorted_by_name_a_z_", 3)
         return (k_layout_list, "fileName", true, "none", true, "_sorted_by_name_a_z_", 3)
     }
     }
         
         

+ 1 - 1
iOSClient/Viewer/NCViewerImage/NCViewerImageCommon.swift

@@ -52,7 +52,7 @@ class NCViewerImageCommon: NSObject {
                 completion(metadatas)
                 completion(metadatas)
             }
             }
         } else {
         } else {
-            let metadatas = NCManageDatabase.sharedInstance.getMetadatasViewer(predicate: NSPredicate(format: "account == %@ AND serverUrl == %@ AND (typeFile == %@ || typeFile == %@ || typeFile == %@)", metadata.account, metadata.serverUrl, k_metadataTypeFile_image, k_metadataTypeFile_video, k_metadataTypeFile_audio), sorted: NCUtility.shared.getSortedForView(key: k_layout_view_main), ascending: NCUtility.shared.getAscendingForView(key: k_layout_view_main))
+            let metadatas = NCManageDatabase.sharedInstance.getMetadatasViewer(predicate: NSPredicate(format: "account == %@ AND serverUrl == %@ AND (typeFile == %@ || typeFile == %@ || typeFile == %@)", metadata.account, metadata.serverUrl, k_metadataTypeFile_image, k_metadataTypeFile_video, k_metadataTypeFile_audio), sorted: NCUtility.shared.getSortedForView(key: k_layout_view_files, serverUrl: metadata.serverUrl), ascending: NCUtility.shared.getAscendingForView(key: k_layout_view_files, serverUrl: metadata.serverUrl))
             completion(metadatas)
             completion(metadatas)
         }
         }
     }
     }