Parcourir la source

willMove is not a delegate method of UINavigationControllerDelegate, also super needs to be called when overwriting this vc method

cyberta il y a 3 ans
Parent
commit
c9154848df
1 fichiers modifiés avec 11 ajouts et 13 suppressions
  1. 11 13
      deltachat-ios/Chat/ChatViewController.swift

+ 11 - 13
deltachat-ios/Chat/ChatViewController.swift

@@ -240,7 +240,6 @@ class ChatViewController: UITableViewController {
         self.highlightedMsg = highlightedMsg
         super.init(nibName: nil, bundle: nil)
         hidesBottomBarWhenPushed = true
-        self.navigationController?.delegate = self
     }
 
     required init?(coder _: NSCoder) {
@@ -421,6 +420,17 @@ class ChatViewController: UITableViewController {
         audioController.stopAnyOngoingPlaying()
     }
 
+    override func willMove(toParent parent: UIViewController?) {
+        super.willMove(toParent: parent)
+        if parent == nil {
+            // logger.debug("chat observer: remove")
+            removeObservers()
+        } else {
+            // logger.debug("chat observer: setup")
+            setupObservers()
+        }
+     }
+
     private func setupObservers() {
         let nc = NotificationCenter.default
         msgChangedObserver = nc.addObserver(
@@ -1800,15 +1810,3 @@ extension ChatViewController: ChatInputTextViewPasteDelegate {
     }
 }
 
-// MARK: - UINavigationControllerDelegate
-extension ChatViewController: UINavigationControllerDelegate {
-    override func willMove(toParent parent: UIViewController?) {
-        if parent == nil {
-            //logger.debug("chat observer: remove")
-            removeObservers()
-        } else {
-            //logger.debug("chat observer: setup")
-            setupObservers()
-        }
-     }
-}