Browse Source

fix NPE for binding in onEmojiClickListener

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
Marcel Hibbe 2 years ago
parent
commit
1f5807b8de

+ 8 - 1
app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt

@@ -1679,6 +1679,7 @@ class ChatController(args: Bundle) :
             currentConversation?.sessionId != "0"
     }
 
+    @Suppress("Detekt.TooGenericExceptionCaught")
     override fun onAttach(view: View) {
         super.onAttach(view)
         Log.d(
@@ -1718,7 +1719,13 @@ class ChatController(args: Bundle) :
                     )
                 },
                 onEmojiClickListener = {
-                    binding.messageInputView.inputEditText?.editableText?.append(" ")
+                    try {
+                        binding.messageInputView.inputEditText?.editableText?.append(" ")
+                    } catch (npe: NullPointerException) {
+                        // view binding can be null
+                        // since this is called asynchronously and UI might have been destroyed in the meantime
+                        Log.i(WebViewLoginController.TAG, "UI destroyed - view binding already gone")
+                    }
                 }
             )
         }