Fix to not show the call started info when there is no active call - #6503
Merged
Conversation
The call-started banner was reconstructed by scanning whatever chat
message window happened to be loaded (tail, an anchor/context jump, or
a paginated history block). Since a loaded window's contents don't
necessarily reflect what's actually happening right now, this made the
banner reappear for calls that had long since ended, or even show up
in chats with no call at all.
Drive it from the conversation's own hasCall flag instead — the
server's authoritative answer to "is a call currently active" — and
make sure it stays fresh by triggering the existing room-refresh path
(already used for lobby/pin changes) on call-related system messages.
This drops the actor chip from the banner ("started by X"), since
hasCall alone can't identify who started the call; the "conversation
will be deleted after the call" warning is unaffected and keeps using
its own, narrower system-message check.
Assisted-by: Claude Sonnet 5 <noreply@anthropic.com>
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
this ensures room is not refreshed (server is bombed with refresh requests) when browsing the chat history Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
for all of them it makes sense to apply the age check Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
As we only rely on hasCall now, for simplicity the chip with the caller was removed. It can be reimplemented in the future, but as the deriving from chat messages was quite buggy, we should keep it simple for now. Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
mahibi
force-pushed
the
bugfix/noid/fixCallStartedInfoWhenNoCall2
branch
from
August 18, 2026 09:18
3b6236e to
40d0a66
Compare
mahibi
marked this pull request as ready for review
August 18, 2026 09:38
Contributor
|
APK file: https://github.com/nextcloud/talk-android/actions/runs/32120869099/artifacts/9319597164 |
rapterjet2004
approved these changes
Aug 18, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The "started a call" panel inside the chat had bugs that were introduced with #6226. It was only checking if the last message in the chat was a call message. But that could also be an old chatBlock, loaded via the search feature. So the call started panel would also show up in this case.
With the current PR, the decision to show the call started banner is solely based on the hasCall flag of the conversation. If a call message is loaded that is not older than 3 hours, it will trigger the needsRoomRefresh. This is debounced to not fire it too often.
For simplicity, for now the actor chip is removed from the call started panel.
🏁 Checklist
/backport to stable-xx.x🤖 AI (if applicable)