浏览代码

don't deinit keyboardManager in ChatViewController too early: keep reacting on keyboard showing up after coming back from profile. Still avoids a memory leak (follow-up of ced2035196beb170abc6ca3140edff82f5cb5620)

cyberta 3 年之前
父节点
当前提交
6967e9f5c7
共有 1 个文件被更改,包括 6 次插入1 次删除
  1. 6 1
      deltachat-ios/Chat/ChatViewController.swift

+ 6 - 1
deltachat-ios/Chat/ChatViewController.swift

@@ -518,7 +518,6 @@ class ChatViewController: UITableViewController {
         audioController.stopAnyOngoingPlaying()
         audioController.stopAnyOngoingPlaying()
         messageInputBar.inputTextView.resignFirstResponder()
         messageInputBar.inputTextView.resignFirstResponder()
         wasInputBarFirstResponder = false
         wasInputBarFirstResponder = false
-        keyboardManager = nil
     }
     }
 
 
     override func willMove(toParent parent: UIViewController?) {
     override func willMove(toParent parent: UIViewController?) {
@@ -533,6 +532,12 @@ class ChatViewController: UITableViewController {
         }
         }
      }
      }
 
 
+    override func didMove(toParent parent: UIViewController?) {
+        if parent == nil {
+            keyboardManager = nil
+        }
+    }
+
     private func setupObservers() {
     private func setupObservers() {
         let nc = NotificationCenter.default
         let nc = NotificationCenter.default
         msgChangedObserver = nc.addObserver(
         msgChangedObserver = nc.addObserver(