Browse Source

first

Signed-off-by: marinofaggiana <ios@nextcloud.com>
marinofaggiana 2 years ago
parent
commit
e9874f14ff

+ 6 - 0
iOSClient/Data/NCDataSource.swift

@@ -436,6 +436,7 @@ class NCMetadataForSection: NSObject {
     public var totalSize: Int64 = 0
     public var metadataShare: [String: tableShare] = [:]
     public var metadataOffLine: [String] = []
+    public var directories: [tableDirectory]?
 
     init(sectionValue: String, metadatas: [tableMetadata], shares: [tableShare], localFiles: [tableLocalFile], lastSearchResult: NCCSearchResult?, sort: String, ascending: Bool, directoryOnTop: Bool, favoriteOnTop: Bool, filterLivePhoto: Bool) {
 
@@ -471,6 +472,8 @@ class NCMetadataForSection: NSObject {
         numFile = 0
         totalSize = 0
 
+        var ocIds: [String] = []
+
         // Metadata order
         //
         if sort != "none" && sort != "" {
@@ -548,6 +551,7 @@ class NCMetadataForSection: NSObject {
 
             //Info
             if metadata.directory {
+                ocIds.append(metadata.ocId)
                 numDirectory += 1
             } else {
                 numFile += 1
@@ -555,6 +559,8 @@ class NCMetadataForSection: NSObject {
             }
         }
 
+        directories = NCManageDatabase.shared.getTablesDirectory(predicate: NSPredicate(format: "ocId IN %@", ocIds), sorted: "serverUrl", ascending: true)
+
         metadatas.removeAll()
 
         // Struct view : favorite dir -> favorite file -> directory -> files

+ 2 - 1
iOSClient/Data/NCDatabase.swift

@@ -260,7 +260,8 @@ class tableDirectEditingEditors: Object {
 class tableDirectory: Object {
 
     @objc dynamic var account = ""
-    @objc dynamic var color: String?
+    @objc dynamic var colorFolder: String?
+    @objc dynamic var colorBackground: String?
     @objc dynamic var e2eEncrypted: Bool = false
     @objc dynamic var etag = ""
     @objc dynamic var favorite: Bool = false

+ 12 - 0
iOSClient/Images.xcassets/palette.imageset/Contents.json

@@ -0,0 +1,12 @@
+{
+  "images" : [
+    {
+      "filename" : "palette.svg",
+      "idiom" : "universal"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

File diff suppressed because it is too large
+ 0 - 0
iOSClient/Images.xcassets/palette.imageset/palette.svg


+ 1 - 0
iOSClient/Main/Collection Common/NCCollectionViewCommon.swift

@@ -1523,6 +1523,7 @@ extension NCCollectionViewCommon: UICollectionViewDataSource {
         guard let metadata = dataSource.cellForItemAt(indexPath: indexPath) else { return cell }
 
         let tableShare = dataSource.metadatasForSection[indexPath.section].metadataShare[metadata.ocId]
+        let tableDirectory = dataSource.metadatasForSection[indexPath.section].directories?.filter({ $0.ocId == metadata.ocId }).first
         var isShare = false
         var isMounted = false
         var a11yValues: [String] = []

+ 24 - 0
iOSClient/Menu/NCCollectionViewCommon+Menu.swift

@@ -294,6 +294,30 @@ extension NCCollectionViewCommon {
             }
         }
 
+        //
+        // CHANGE COLOR
+        //
+        if metadata.directory {
+            actions.append(
+                NCMenuAction(
+                    title: NSLocalizedString("_change_color_", comment: ""),
+                    icon: NCUtility.shared.loadImage(named: "palette"),
+                    action: { _ in
+                        if let vcBackgroundImageColor = UIStoryboard(name: "NCBackgroundImageColor", bundle: nil).instantiateInitialViewController() as? NCBackgroundImageColor {
+
+                            vcBackgroundImageColor.delegate = self
+                            //vcBackgroundImageColor.setupColor = collectionView.backgroundColor
+
+                            let popup = NCPopupViewController(contentController: vcBackgroundImageColor, popupWidth: vcBackgroundImageColor.width, popupHeight: vcBackgroundImageColor.height)
+                            popup.backgroundAlpha = 0
+
+                            self.present(popup, animated: true)
+                        }
+                    }
+                )
+            )
+        }
+
         //
         // DELETE
         //

+ 1 - 1
iOSClient/NCGlobal.swift

@@ -113,7 +113,7 @@ class NCGlobal: NSObject {
     // Database Realm
     //
     let databaseDefault                             = "nextcloud.realm"
-    let databaseSchemaVersion: UInt64               = 232
+    let databaseSchemaVersion: UInt64               = 233
 
     // Intro selector
     //

Some files were not shown because too many files changed in this diff