Browse Source

body

Signed-off-by: marinofaggiana <marino.faggiana@nextcloud.com>
marinofaggiana 2 năm trước cách đây
mục cha
commit
216a39f6bc

+ 1 - 1
.swiftlint.yml

@@ -41,6 +41,7 @@ excluded:
   - File Provider Extension/FileProviderExtension.swift
   - File Provider Extension/FileProviderUtility.swift
   - Notification Service Extension/NotificationService.swift
+  - Widget/Nextcloud/NextcloudData.swift
   - iOSClient/Activity/NCActivity.swift
   - iOSClient/Activity/NCActivityTableViewCell.swift
   - iOSClient/AppDelegate.swift
@@ -133,5 +134,4 @@ excluded:
   - iOSClient/Viewer/NCViewerProviderContextMenu.swift
   - iOSClient/Viewer/NCViewerRichdocument/NCViewerRichdocument.swift
 
-
 reporter: "xcode"

+ 2 - 0
Nextcloud.xcodeproj/project.pbxproj

@@ -411,6 +411,7 @@
 		F7BD71E62636EAFC00643C34 /* NCNetworkingE2EE.swift in Sources */ = {isa = PBXBuildFile; fileRef = F785EE9C246196DF00B3F945 /* NCNetworkingE2EE.swift */; };
 		F7C1EEA525053A9C00866ACC /* NCDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7C1EEA425053A9C00866ACC /* NCDataSource.swift */; };
 		F7C7B25028B8AD4500E7115D /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = F7E70DE91A24DE4100E1B66A /* Localizable.strings */; };
+		F7C7B25128B8B0C400E7115D /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F7F67BB81A24D27800EE80DA /* Images.xcassets */; };
 		F7C7B489245EBA4100D93E60 /* NCViewerQuickLook.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7C7B488245EBA4100D93E60 /* NCViewerQuickLook.swift */; };
 		F7C9555321F0C4CA0024296E /* NCActivity.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = F7C9555221F0C4CA0024296E /* NCActivity.storyboard */; };
 		F7C9555521F0C5470024296E /* NCActivity.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7C9555421F0C5470024296E /* NCActivity.swift */; };
@@ -2435,6 +2436,7 @@
 			buildActionMask = 2147483647;
 			files = (
 				F72EA95B28B7C1EE00C88F0C /* Custom.xcassets in Resources */,
+				F7C7B25128B8B0C400E7115D /* Images.xcassets in Resources */,
 				F7C7B25028B8AD4500E7115D /* Localizable.strings in Resources */,
 				F7346E2328B0FEBA006CE2D2 /* Assets.xcassets in Resources */,
 			);

+ 31 - 6
Widget/Nextcloud/NextcloudData.swift

@@ -40,10 +40,31 @@ struct NextcloudDataEntry: TimelineEntry {
 }
 
 let nextcloudDatasTest: [NextcloudData] = [
-    .init(id: "0", image: "nextcloud", title: "title 1", subTitle: "subTitle - description 1", url: URL(string: "https://nextcloud.com/")!),
-    .init(id: "1", image: "nextcloud", title: "title 2", subTitle: "subTitle - description 2", url: URL(string: "https://nextcloud.com/")!),
-    .init(id: "2", image: "nextcloud", title: "title 3", subTitle: "subTitle - description 3", url: URL(string: "https://nextcloud.com/")!),
-    .init(id: "3", image: "nextcloud", title: "title 4", subTitle: "subTitle - description 4", url: URL(string: "https://nextcloud.com/")!)
+    .init(id: "1",
+          image: "/Users/marinofaggiana/Library/Developer/CoreSimulator/Devices/BDE5102B-F3D3-4951-804B-A9E7F6253D56/data/Containers/Shared/AppGroup/D425298A-F6F7-482A-BD07-7ECD42B2836B/File Provider Storage/00395828ocvhmkstoevb/63074889b016c.small.ico",
+          title: "title 1",
+          subTitle: "subTitle - description 1",
+          url: URL(string: "https://nextcloud.com/")!),
+    .init(id: "2",
+          image: "/Users/marinofaggiana/Library/Developer/CoreSimulator/Devices/BDE5102B-F3D3-4951-804B-A9E7F6253D56/data/Containers/Shared/AppGroup/D425298A-F6F7-482A-BD07-7ECD42B2836B/File Provider Storage/00392008ocvhmkstoevb/a339c916eea984af8ada3815e1f0e9c6.small.ico",
+          title: "title 2",
+          subTitle: "subTitle - description 2",
+          url: URL(string: "https://nextcloud.com/")!),
+    .init(id: "3",
+          image: "/Users/marinofaggiana/Library/Developer/CoreSimulator/Devices/BDE5102B-F3D3-4951-804B-A9E7F6253D56/data/Containers/Shared/AppGroup/D425298A-F6F7-482A-BD07-7ECD42B2836B/File Provider Storage/00391801ocvhmkstoevb/62f4c03fd46bd.small.ico",
+          title: "title 3",
+          subTitle: "subTitle - description 3",
+          url: URL(string: "https://nextcloud.com/")!),
+    .init(id: "4",
+          image: "/Users/marinofaggiana/Library/Developer/CoreSimulator/Devices/BDE5102B-F3D3-4951-804B-A9E7F6253D56/data/Containers/Shared/AppGroup/D425298A-F6F7-482A-BD07-7ECD42B2836B/File Provider Storage/00392070ocvhmkstoevb/00340fefc50d1fee8491de0c5dc1864b.small.ico",
+          title: "title 4",
+          subTitle: "subTitle - description 4",
+          url: URL(string: "https://nextcloud.com/")!),
+    .init(id: "5",
+          image: "file",
+          title: "title 4",
+          subTitle: "subTitle - description 4",
+          url: URL(string: "https://nextcloud.com/")!)
 ]
 
 func readNextcloudData(completion: @escaping (_ NextcloudDatas: [NextcloudData], _ isPlaceholder: Bool, _ footerText: String) -> Void) {
@@ -121,7 +142,7 @@ func readNextcloudData(completion: @escaping (_ NextcloudDatas: [NextcloudData],
         </d:order>
     </d:orderby>
     <d:limit>
-        <d:nresults>4</d:nresults>
+        <d:nresults>5</d:nresults>
     </d:limit>
     </d:basicsearch>
     </d:searchrequest>
@@ -155,7 +176,11 @@ func readNextcloudData(completion: @escaping (_ NextcloudDatas: [NextcloudData],
             var nextcloudDatas: [NextcloudData] = []
             for file in files {
                 let subTitle = CCUtility.dateDiff(file.date as Date) + " · " + CCUtility.transformedSize(file.size)
-                let nextcloudData = NextcloudData.init(id: file.ocId, image: "", title: file.fileName, subTitle: subTitle, url: URL(string: "https://nextcloud.com/")!)
+                let iconImagePath = CCUtility.getDirectoryProviderStorageIconOcId(file.ocId, etag: file.etag)!
+                //if FileManager().fileExists(atPath: iconImagePath) {
+                //    (cell as! NCCellProtocol).filePreviewImageView?.image =  UIImage(contentsOfFile: CCUtility.getDirectoryProviderStorageIconOcId(metadata.ocId, etag: metadata.etag))
+                //}
+                let nextcloudData = NextcloudData.init(id: file.ocId, image: iconImagePath, title: file.fileName, subTitle: subTitle, url: URL(string: "https://nextcloud.com/")!)
                 nextcloudDatas.append(nextcloudData)
             }
             if errorCode != 0 {

+ 8 - 7
Widget/Nextcloud/NextcloudWidgetView.swift

@@ -34,7 +34,7 @@ struct NextcloudWidgetView: View {
                     .scaledToFit()
                     .frame(width: 10, height: 10)
                     .cornerRadius(3)
-                Text(NCBrandOptions.shared.brand + "c")
+                Text(NCBrandOptions.shared.brand + "w")
                     .font(.system(size: 11))
                     .textCase(.uppercase)
             }
@@ -45,16 +45,17 @@ struct NextcloudWidgetView: View {
                     ForEach(entry.nextcloudDatas, id: \.id) { element in
                         Link(destination: element.url) {
                             HStack {
-                                Image(element.image)
+                                Image(uiImage: (UIImage(contentsOfFile: element.image) ?? UIImage(named: "file"))!)
                                     .resizable()
-                                    .aspectRatio(contentMode: .fit)
-                                    .frame(width: 40, height: 40)
-                                    .clipShape(Circle())
+                                    .scaledToFill()
+                                    .frame(width: 30, height: 30)
+                                    .clipped()
+                                    .cornerRadius(4)
                                 VStack(alignment: .leading) {
                                     Text(element.title)
-                                        .font(.headline)
+                                        .font(.system(size: 12))
                                     Text(element.subTitle)
-                                        .font(.subheadline)
+                                        .font(.system(size: CGFloat(10)))
                                         .foregroundColor(Color(white: 0.4745))
                                 }
                                 Spacer()