marinofaggiana 4 жил өмнө
parent
commit
115c034fb4

+ 2 - 7
iOSClient/Main/Colleaction Common/NCCollectionViewCommon.swift

@@ -1219,15 +1219,10 @@ extension NCCollectionViewCommon: UICollectionViewDelegate {
                 return
             }
             
-            if metadata.typeFile == k_metadataTypeFile_video {
-                NCViewer.shared.view(viewController: self, metadata: metadataTouch, metadatas: [metadataTouch])
-                return
-            }
-            
-            if metadata.typeFile == k_metadataTypeFile_image {
+            if metadata.typeFile == k_metadataTypeFile_image || metadata.typeFile == k_metadataTypeFile_video || metadata.typeFile == k_metadataTypeFile_audio {
                 var metadatas: [tableMetadata] = []
                 for metadata in dataSource.metadatas {
-                    if metadata.typeFile == k_metadataTypeFile_image || metadata.typeFile == k_metadataTypeFile_video {
+                    if metadata.typeFile == k_metadataTypeFile_image || metadata.typeFile == k_metadataTypeFile_video || metadata.typeFile == k_metadataTypeFile_audio {
                         metadatas.append(metadata)
                     }
                 }

+ 2 - 15
iOSClient/Viewer/NCViewer.swift

@@ -40,21 +40,8 @@ class NCViewer: NSObject {
         self.metadata = metadata
         self.metadatas = metadatas
         
-        // VIDEO AUDIO
-        if metadata.typeFile == k_metadataTypeFile_audio || metadata.typeFile == k_metadataTypeFile_video {
-            
-            if let navigationController = getPushNavigationController(viewController: viewController, serverUrl: metadata.serverUrl) {
-                let viewController:NCViewerVideo = UIStoryboard(name: "NCViewerVideo", bundle: nil).instantiateInitialViewController() as! NCViewerVideo
-            
-                viewController.metadata = metadata
-
-                navigationController.pushViewController(viewController, animated: true)
-            }
-            return
-        }
-        
-        // IMAGE
-        if metadata.typeFile == k_metadataTypeFile_image {
+        // IMAGE AUDIO VIDEO
+        if metadata.typeFile == k_metadataTypeFile_image || metadata.typeFile == k_metadataTypeFile_audio || metadata.typeFile == k_metadataTypeFile_video {
             
             if let navigationController = getPushNavigationController(viewController: viewController, serverUrl: metadata.serverUrl) {
                 

+ 23 - 6
iOSClient/Viewer/NCViewerImage/NCViewerImagePageContainer.swift

@@ -46,6 +46,7 @@ class NCViewerImagePageContainer: UIViewController, UIGestureRecognizerDelegate
     var currentMetadata: tableMetadata = tableMetadata()
     var currentIndex = 0
     var nextIndex: Int?
+    var autostratVideo: Bool = false
    
     var startPanLocation = CGPoint.zero
     let panDistanceForPopViewController: CGFloat = 150
@@ -69,9 +70,14 @@ class NCViewerImagePageContainer: UIViewController, UIGestureRecognizerDelegate
         
         let viewerImageZoom = UIStoryboard(name: "NCViewerImage", bundle: nil).instantiateViewController(withIdentifier: "NCViewerImageZoom") as! NCViewerImageZoom
         
+        let metadata = metadatas[currentIndex]
+        if metadata.typeFile == k_metadataTypeFile_video || metadata.typeFile == k_metadataTypeFile_audio {
+            autostratVideo = true
+        }
+        
         viewerImageZoom.index = currentIndex
-        viewerImageZoom.image = getImageMetadata(metadatas[currentIndex])
-        viewerImageZoom.metadata = metadatas[currentIndex]
+        viewerImageZoom.image = getImageMetadata(metadata)
+        viewerImageZoom.metadata = metadata
         viewerImageZoom.delegate = self
 
         singleTapGestureRecognizer.require(toFail: viewerImageZoom.doubleTapGestureRecognizer)
@@ -279,13 +285,24 @@ class NCViewerImagePageContainer: UIViewController, UIGestureRecognizerDelegate
     
     //MARK: - Delegate Image Zoom
 
-    func viewDidAppearImageZoom(viewerImageZoom: NCViewerImageZoom, metadata: tableMetadata) {
-        
+    func viewWillAppearImageZoom(viewerImageZoom: NCViewerImageZoom, metadata: tableMetadata) {
+
+        navigationItem.title = metadata.fileNameView
+
         currentMetadata = metadata
         currentViewerImageZoom = viewerImageZoom
         
-        navigationItem.title = metadata.fileNameView
-        
+        if (currentMetadata.typeFile == k_metadataTypeFile_video || currentMetadata.typeFile == k_metadataTypeFile_audio) && autostratVideo {
+            autostratVideo = false
+            if let viewerImageVideo = UIStoryboard(name: "NCViewerImageVideo", bundle: nil).instantiateInitialViewController() as? NCViewerImageVideo {
+                viewerImageVideo.metadata = currentMetadata
+                present(viewerImageVideo, animated: false) { }
+            }
+        }
+    }
+    
+    func viewDidAppearImageZoom(viewerImageZoom: NCViewerImageZoom, metadata: tableMetadata) {
+                
         if !NCOperationQueue.shared.downloadExists(metadata: metadata) {
             self.progressView.progress = 0
         }

+ 6 - 0
iOSClient/Viewer/NCViewerImage/NCViewerImageZoom.swift

@@ -72,6 +72,12 @@ class NCViewerImageZoom: UIViewController {
         view.addGestureRecognizer(doubleTapGestureRecognizer)
     }
     
+    override func viewWillAppear(_ animated: Bool) {
+        super.viewWillAppear(animated)
+
+        delegate?.viewWillAppearImageZoom(viewerImageZoom: self, metadata: metadata)
+    }
+    
     override func viewDidAppear(_ animated: Bool) {
         super.viewDidAppear(animated)