瀏覽代碼

new share view

marinofaggiana 5 年之前
父節點
當前提交
3b5d0fcce3

+ 2 - 2
iOSClient/Share/NCShare.swift

@@ -151,7 +151,7 @@ class NCShare: UIViewController, UIGestureRecognizerDelegate, NCShareLinkCellDel
         guard let tableShare = tableShare else { return }
 
         if tableShare.shareType == Int(shareTypeLink.rawValue) {
-            let views = NCShareCommon.sharedInstance.openViewMenuShareLink(view: self.view, tableShare: tableShare, metadata: metadata!)
+            let views = NCShareCommon.sharedInstance.openViewMenuShareLink(shareViewController: self, tableShare: tableShare, metadata: metadata!)
             shareLinkMenuView = views.shareLinkMenuView
             shareMenuViewWindow = views.viewWindow
             
@@ -159,7 +159,7 @@ class NCShare: UIViewController, UIGestureRecognizerDelegate, NCShareLinkCellDel
             tap.delegate = self
             shareMenuViewWindow?.addGestureRecognizer(tap)
         } else {
-            let views = NCShareCommon.sharedInstance.openViewMenuUser(view: self.view, tableShare: tableShare, metadata: metadata!)
+            let views = NCShareCommon.sharedInstance.openViewMenuUser(shareViewController: self, tableShare: tableShare, metadata: metadata!)
             shareUserMenuView = views.shareUserMenuView
             shareMenuViewWindow = views.viewWindow
             

+ 8 - 6
iOSClient/Share/NCShareCommon.swift

@@ -99,11 +99,11 @@ class NCShareCommon: NSObject {
         }
     }
     
-    func openViewMenuShareLink(view: UIView, tableShare: tableShare?, metadata: tableMetadata) -> (shareLinkMenuView: NCShareLinkMenuView, viewWindow: UIView) {
+    func openViewMenuShareLink(shareViewController: NCShare, tableShare: tableShare?, metadata: tableMetadata) -> (shareLinkMenuView: NCShareLinkMenuView, viewWindow: UIView) {
         
         var shareLinkMenuView: NCShareLinkMenuView
 
-        let globalPoint = view.superview?.convert(view.frame.origin, to: nil)
+        let globalPoint = shareViewController.view.superview?.convert(shareViewController.view.frame.origin, to: nil)
         
         let window = UIApplication.shared.keyWindow!
         let viewWindow = UIView(frame: window.bounds)
@@ -124,9 +124,10 @@ class NCShareCommon: NSObject {
         
         shareLinkMenuView.metadata = metadata
         shareLinkMenuView.viewWindow = viewWindow
+        shareLinkMenuView.shareViewController = shareViewController
         shareLinkMenuView.reloadData(idRemoteShared: tableShare?.idRemoteShared ?? 0)
         
-        let shareLinkMenuViewX = view.bounds.width/2 - shareLinkMenuView.width/2 + globalPoint!.x
+        let shareLinkMenuViewX = shareViewController.view.bounds.width/2 - shareLinkMenuView.width/2 + globalPoint!.x
         let shareLinkMenuViewY = globalPoint!.y
         
         shareLinkMenuView.frame = CGRect(x: shareLinkMenuViewX, y: shareLinkMenuViewY, width: shareLinkMenuView.width, height: shareLinkMenuView.height)
@@ -135,11 +136,11 @@ class NCShareCommon: NSObject {
         return(shareLinkMenuView: shareLinkMenuView, viewWindow: viewWindow)
     }
     
-    func openViewMenuUser(view: UIView, tableShare: tableShare?, metadata: tableMetadata) -> (shareUserMenuView: NCShareUserMenuView, viewWindow: UIView) {
+    func openViewMenuUser(shareViewController: NCShare, tableShare: tableShare?, metadata: tableMetadata) -> (shareUserMenuView: NCShareUserMenuView, viewWindow: UIView) {
         
         var shareUserMenuView: NCShareUserMenuView
         
-        let globalPoint = view.superview?.convert(view.frame.origin, to: nil)
+        let globalPoint = shareViewController.view.superview?.convert(shareViewController.view.frame.origin, to: nil)
         
         let window = UIApplication.shared.keyWindow!
         let viewWindow = UIView(frame: window.bounds)
@@ -160,9 +161,10 @@ class NCShareCommon: NSObject {
         
         shareUserMenuView.metadata = metadata
         shareUserMenuView.viewWindow = viewWindow
+        shareUserMenuView.shareViewController = shareViewController
         shareUserMenuView.reloadData(idRemoteShared: tableShare?.idRemoteShared ?? 0)
         
-        let shareUserMenuViewX = view.bounds.width/2 - shareUserMenuView.width/2 + globalPoint!.x
+        let shareUserMenuViewX = shareViewController.view.bounds.width/2 - shareUserMenuView.width/2 + globalPoint!.x
         let shareUserMenuViewY = globalPoint!.y + 100
         
         shareUserMenuView.frame = CGRect(x: shareUserMenuViewX, y: shareUserMenuViewY, width: shareUserMenuView.width, height: shareUserMenuView.height)

+ 9 - 1
iOSClient/Share/NCShareLinkMenuView.swift

@@ -67,7 +67,8 @@ class NCShareLinkMenuView: UIView, UIGestureRecognizerDelegate, NCShareNetworkin
     
     private var tableShare: tableShare?
     var metadata: tableMetadata?
-    
+    var shareViewController: NCShare?
+
     var viewWindow: UIView?
     var viewWindowCalendar: UIView?
     
@@ -104,6 +105,13 @@ class NCShareLinkMenuView: UIView, UIGestureRecognizerDelegate, NCShareNetworkin
     
     override func willMove(toWindow newWindow: UIWindow?) {
         super.willMove(toWindow: newWindow)
+        
+        if newWindow == nil {
+            // UIView disappear
+            shareViewController?.reloadData()
+        } else {
+            // UIView appear
+        }
     }
     
     func unLoad() {

+ 8 - 0
iOSClient/Share/NCShareUserMenuView.swift

@@ -56,6 +56,7 @@ class NCShareUserMenuView: UIView, UIGestureRecognizerDelegate, NCShareNetworkin
     
     private var tableShare: tableShare?
     var metadata: tableMetadata?
+    var shareViewController: NCShare?
     
     var viewWindow: UIView?
     var viewWindowCalendar: UIView?
@@ -88,6 +89,13 @@ class NCShareUserMenuView: UIView, UIGestureRecognizerDelegate, NCShareNetworkin
     
     override func willMove(toWindow newWindow: UIWindow?) {
         super.willMove(toWindow: newWindow)
+        
+        if newWindow == nil {
+            // UIView disappear
+            shareViewController?.reloadData()
+        } else {
+            // UIView appear
+        }
     }
     
     func unLoad() {