Only do it for current account, this avoid to emit needsHost() for
all accounts with the same conversation
GitLab: #1579
Change-Id: I147b2f72fd4c1000949500309eae1970cdbd033f
Loading the profile elements from disk is now deferred to consumption. Implements a basic caching mechanism for the displayname and avatar elements.
Gitlab: #1459
Change-Id: Ic5aeec6649c198f617b9269409ded647c7536b8f
cf jami-docs/developer/delivery-status
+ Basically this patch uses the new SwarmMessage.status to show
current interaction status.
+ setRead only updates the status if the interaction is newer (else,
because signal are not guaranteed to be ordered, this can cause the
lastDisplayed_ to be incorrect).
+ Some old code is removed and unused signal
+ MessageReceived updates status if needed
GitLab: #1487
Change-Id: I4d4d5dce8dc12ab638e89e3f8431810b29a72087
- Avoids manually building local file URIs which was causing long load times for conversations on Windows.
- Fixes an issue where missing images were caused by a interaction updates erasing the message bodies.
Change-Id: I4c65f73cf9f46da5a9ae899940cb205cb34ffae2
When a user misses a call, they receive a message saying so in the chat
and get a notification for that message, but the notification's body was
empty instead of matching the message's content.
Change-Id: I24971d1d0a976ea3ab15ac30c4e9ed33fdf3d760
Removes some remaining excess complexity in the way interactions are managed by the client. Removes raw iterator access and provides thread-safe alternatives.
Change-Id: I482bf599de869245f96c4aab418127f30508ef41
With Jami-Daemon >= 14.0.0, the client doesn't need to construct
itself the history. This part is now handled by the daemon.
This patch uses the new API:
+ loadConversationMessages->loadConversation
+ SwarmMessageReceived/SwarmMessageUpdated/ReactionAdded/ReactionRemoved
+ remove MessageReceived
+ ConversationLoaded->SwarmLoaded
+ No need to use loadConversationUntil, the daemon will load whatever
the client needs.
+ No need to clear cache, just reset the body and emit data changes
Everything should work like before (even re-translation & changing
preview preference)
Change-Id: Iaf1fa3e84e8e157ae2d0bec210977f9a34415ebc
There was no way to differentiate a 1:1 incoming call and a call
from a swarm, because username couldn't be checked. Now, create
conversation only if it's a 1:1 call
Change-Id: I0094967914b4888d083b9adc1d2b11de467d6f48
To be able to show calls that are transfered, we must catch new calls
from callstatechanged signal. Move all logic from newincomingcall to
callstatechanged.
Change-Id: Ibd3ff5f8b4009895b3165348fd1638956f5f66d9
This use case has been observed when taking a look at the system tray
icon, which uses conversation model's notificationsCount() to define
whether or not to show a red dot. As we don't want this for muted
conversations these are ignored.
Change-Id: Ic185de9170dfcbfbd8ffc3513676dd90471f3baa
We sort the invites by last interactions. However on swarm, there
is no interaction yet. Add one with the received timestamp given
by the daemon.
(Regression appears because we were showing trust request before
not conversation requests)
Change-Id: Ic7f4d1a5d485325c95a19c2c38ae9c74630829ce
GitLab: #956
Because in a swarm you can talk with non contacts, we should at
least retrieve the username when possible.
Change-Id: Ie01cd10cc1231fc4024bd5a08c30c08d69e8e7f0
GitLab: #948
Show notification when a peer is sharing its position on the non
current conversation.
This needed a lot of changes. Now we store shared position via
accountId + peer.
This also fix location icons and keep state when changing from
one account to another.
Change-Id: I8c1848890efa09f6e296e9da779a355167e4d3d4
GitLab: #888
+ Add call buttons to start a new call
+ React to events from the swarm
+ call interactions (Join call/Call ended, etc)
+ active calls area
+ Add call management logic in LRC
+ Feature is enabled via the experimental checkbox
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/312
Change-Id: I83fd20b5e772097c0792bdc66feec69b0cb0009a