marinofaggiana 5 vuotta sitten
vanhempi
commit
a204c5eaaa
3 muutettua tiedostoa jossa 50 lisäystä ja 40 poistoa
  1. 6 6
      Share/CCCellShareExt.xib
  2. 38 20
      Share/CCloadItemData.swift
  3. 6 14
      Share/ShareViewController.m

+ 6 - 6
Share/CCCellShareExt.xib

@@ -16,7 +16,7 @@
                 <rect key="frame" x="0.0" y="0.0" width="597" height="80"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
-                    <imageView userInteractionEnabled="NO" contentMode="scaleAspectFill" translatesAutoresizingMaskIntoConstraints="NO" id="5">
+                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" translatesAutoresizingMaskIntoConstraints="NO" id="5">
                         <rect key="frame" x="10" y="5" width="70" height="70"/>
                         <constraints>
                             <constraint firstAttribute="height" constant="70" id="2Z3-9a-dWb"/>
@@ -24,7 +24,7 @@
                         </constraints>
                     </imageView>
                     <textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="VsB-d4-Sow">
-                        <rect key="frame" x="90" y="10" width="497" height="20"/>
+                        <rect key="frame" x="90" y="30" width="497" height="20"/>
                         <constraints>
                             <constraint firstAttribute="height" constant="20" id="Dk0-na-bfK"/>
                         </constraints>
@@ -32,11 +32,11 @@
                         <textInputTraits key="textInputTraits"/>
                     </textField>
                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="0Ow-Hb-LiN">
-                        <rect key="frame" x="90" y="50" width="497" height="20"/>
+                        <rect key="frame" x="90" y="55" width="497" height="20"/>
                         <constraints>
                             <constraint firstAttribute="height" constant="20" id="9pk-f4-eS9"/>
                         </constraints>
-                        <fontDescription key="fontDescription" type="system" pointSize="14"/>
+                        <fontDescription key="fontDescription" type="system" pointSize="12"/>
                         <nil key="textColor"/>
                         <nil key="highlightedColor"/>
                     </label>
@@ -45,11 +45,11 @@
                     <constraint firstItem="5" firstAttribute="centerY" secondItem="sQq-jC-UEV" secondAttribute="centerY" id="3LF-0l-IUQ"/>
                     <constraint firstItem="VsB-d4-Sow" firstAttribute="leading" secondItem="5" secondAttribute="trailing" constant="10" id="CrK-6o-Z32"/>
                     <constraint firstAttribute="trailing" secondItem="0Ow-Hb-LiN" secondAttribute="trailing" constant="10" id="DiV-IR-cy6"/>
-                    <constraint firstAttribute="bottom" secondItem="0Ow-Hb-LiN" secondAttribute="bottom" constant="10" id="ObO-OF-tvn"/>
+                    <constraint firstAttribute="bottom" secondItem="0Ow-Hb-LiN" secondAttribute="bottom" constant="5" id="ObO-OF-tvn"/>
                     <constraint firstItem="0Ow-Hb-LiN" firstAttribute="leading" secondItem="5" secondAttribute="trailing" constant="10" id="PFo-Au-ORj"/>
                     <constraint firstAttribute="trailing" secondItem="VsB-d4-Sow" secondAttribute="trailing" constant="10" id="Q94-2Q-wue"/>
+                    <constraint firstItem="VsB-d4-Sow" firstAttribute="centerY" secondItem="sQq-jC-UEV" secondAttribute="centerY" id="Vrf-0g-BdO"/>
                     <constraint firstItem="5" firstAttribute="leading" secondItem="sQq-jC-UEV" secondAttribute="leading" constant="10" id="fuA-E4-YoA"/>
-                    <constraint firstItem="VsB-d4-Sow" firstAttribute="top" secondItem="sQq-jC-UEV" secondAttribute="top" constant="10" id="i4S-x6-rac"/>
                 </constraints>
             </tableViewCellContentView>
             <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>

+ 38 - 20
Share/CCloadItemData.swift

@@ -57,25 +57,36 @@ class CCloadItemData: NSObject {
                             
                             current.loadItem(forTypeIdentifier: kUTTypeItem as String, options: nil, completionHandler: {(item, error) -> Void in
                                 
+                                var fileNameOriginal: String?
+                                var fileName: String = ""
+                                
+                                let dateFormatter = DateFormatter()
+                                dateFormatter.dateFormat = "yyyy-MM-dd HH-mm-ss-"
+                                conuter += 1
+                                
+                                if let url = item as? NSURL {
+                                    fileNameOriginal = url.lastPathComponent!
+                                }
+                                
                                 if error == nil {
-                                    
-                                    let dateFormatter = DateFormatter()
-                                    dateFormatter.dateFormat = "yyyy-MM-dd HH-mm-ss-"
-                                    conuter += 1
-                                    
+                                                                        
                                     if let image = item as? UIImage {
                                         
                                         print("item as UIImage")
                                         
                                         if let pngImageData = image.pngData() {
                                         
-                                            let fileName = "\(dateFormatter.string(from: Date()))\(conuter).png"
+                                            if fileNameOriginal != nil {
+                                                fileName =  fileNameOriginal!
+                                            } else {
+                                                fileName = "\(dateFormatter.string(from: Date()))\(conuter).png"
+                                            }
+                                            
                                             let filenamePath = directory + fileName
-                                        
+                                            
                                             let result = (try? pngImageData.write(to: URL(fileURLWithPath: filenamePath), options: [.atomic])) != nil
                                         
                                             if result {
-                                         
                                                 filesName.append(fileName)
                                             }
                                             
@@ -89,11 +100,15 @@ class CCloadItemData: NSObject {
                                         
                                         print("item as url: \(String(describing: item))")
                                         
-                                        let ext = url.pathExtension
-                                        let fileName = "\(dateFormatter.string(from: Date()))\(conuter)." + ext
-
-                                        let filenamePath = directory + fileName
+                                        if fileNameOriginal != nil {
+                                            fileName =  fileNameOriginal!
+                                        } else {
+                                            let ext = url.pathExtension
+                                            fileName = "\(dateFormatter.string(from: Date()))\(conuter)." + ext
+                                        }
                                         
+                                        let filenamePath = directory + fileName
+                                      
                                         do {
                                             try FileManager.default.removeItem(atPath: filenamePath)
                                         }
@@ -130,15 +145,18 @@ class CCloadItemData: NSObject {
                                         
                                             print("item as NSdata")
                                         
-                                            let description = current.description
-                                        
-                                            let fullNameArr = description.components(separatedBy: "\"")
-                                            let fileExtArr = fullNameArr[1].components(separatedBy: ".")
-                                            let pathExtention = (fileExtArr[fileExtArr.count-1]).uppercased()
-                                        
-                                            let fileName = "\(dateFormatter.string(from: Date()))\(conuter).\(pathExtention)"
+                                            if fileNameOriginal != nil {
+                                                fileName =  fileNameOriginal!
+                                            } else {
+                                                let description = current.description
+                                                let fullNameArr = description.components(separatedBy: "\"")
+                                                let fileExtArr = fullNameArr[1].components(separatedBy: ".")
+                                                let pathExtention = (fileExtArr[fileExtArr.count-1]).uppercased()
+                                                fileName = "\(dateFormatter.string(from: Date()))\(conuter).\(pathExtention)"
+                                            }
+                                            
                                             let filenamePath = directory + fileName
-
+                                            
                                             FileManager.default.createFile(atPath: filenamePath, contents:data, attributes:nil)
                                                                                 
                                             filesName.append(fileName)

+ 6 - 14
Share/ShareViewController.m

@@ -37,6 +37,8 @@
     UIColor *tintColor;
     
     NSString *fileNameOriginal;
+    
+    UIBarButtonItem *rightButtonUpload, *leftButtonCancel;
 }
 @end
 
@@ -97,7 +99,6 @@
     [self loadDataSwift];
 }
 
-// Apparirà
 - (void)viewWillAppear:(BOOL)animated
 {
     [super viewWillAppear:animated];
@@ -109,22 +110,13 @@
     self.shareTable.backgroundColor = NCBrandColor.sharedInstance.backgroundView;
 }
 
-- (void)didReceiveMemoryWarning
-{
-    [super didReceiveMemoryWarning];
-    // Dispose of any resources that can be recreated.
-}
-
 - (void)closeShareViewController
 {
     [self.extensionContext completeRequestReturningItems:self.extensionContext.inputItems completionHandler:nil];
 }
 
-//
-// L'applicazione terminerà
-//
 - (void)applicationWillTerminate:(UIApplication *)application
-{    
+{
     NSLog(@"[LOG] bye bye, Nextcloud Share Extension!");
 }
 
@@ -134,11 +126,13 @@
 
 - (void)textFieldDidBeginEditing:(UITextField *)textField
 {
+    rightButtonUpload.enabled = false;
     fileNameOriginal = textField.text;
 }
 
 - (void)textFieldDidEndEditing:(UITextField *)textField
 {
+    rightButtonUpload.enabled = true;
     NSInteger index = [self.filesName indexOfObject:fileNameOriginal];
     if (index != NSNotFound) {
         self.filesName[index] = textField.text;
@@ -179,9 +173,7 @@
 #pragma --------------------------------------------------------------------------------------------
 
 - (void)navigationBarToolBar
-{    
-    UIBarButtonItem *rightButtonUpload, *leftButtonCancel;
-
+{
     // Theming
     if ([NCBrandOptions sharedInstance].use_themingColor) {
         tableCapabilities *capabilities = [[NCManageDatabase sharedInstance] getCapabilitesWithAccount:self.activeAccount];