Browse Source

fix to hide messageInputFragment when user has no restriction to write

The messageInputFragment was hidden by checkShowMessageInputView(), but it was immediately shown again by checkLobbyState()

This fix will execute checkShowMessageInputView() inside checkLobbyState() in the correct order.

Additionally, the check
checkLobbyState()
has to be already executed in
GetCapabilitiesInitialLoadState
as well as
checkShowCallButtons()

Otherwise the expected behavior would only be set after 30 seconds.

An improvemnt for the future must be to improve the capabilities handling.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
Marcel Hibbe 5 months ago
parent
commit
9e91bdeb1d
1 changed files with 5 additions and 3 deletions
  1. 5 3
      app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt

+ 5 - 3
app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt

@@ -577,7 +577,6 @@ class ChatActivity :
 
                     invalidateOptionsMenu()
                     checkShowCallButtons()
-                    checkShowMessageInputView()
                     checkLobbyState()
                     updateRoomTimerHandler()
                 }
@@ -603,6 +602,9 @@ class ChatActivity :
                     loadAvatarForStatusBar()
                     setupSwipeToReply()
                     setActionBarTitle()
+
+                    checkShowCallButtons()
+                    checkLobbyState()
                     updateRoomTimerHandler()
 
                     val urlForChatting = ApiUtils.getUrlForChat(chatApiVersion, conversationUser?.baseUrl, roomToken)
@@ -1892,12 +1894,12 @@ class ChatActivity :
             } else {
                 binding.lobby.lobbyView.visibility = View.GONE
                 binding.messagesListView.visibility = View.VISIBLE
-                binding.fragmentContainerActivityChat.visibility = View.VISIBLE
+                checkShowMessageInputView()
             }
         } else {
             binding.lobby.lobbyView.visibility = View.GONE
             binding.messagesListView.visibility = View.VISIBLE
-            binding.fragmentContainerActivityChat.visibility = View.VISIBLE
+            checkShowMessageInputView()
         }
     }