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
Removes all migration mechanisms and support for database versions that haven't been used for several years. Also cleans up some includes.
Change-Id: Iaf071a455f77dd4daa57f16f9924703961aa64e0
- 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
- Declares global logging categories for libclient and the app
- Introduces some macros for categorized logging
- Removes the noisy namedirectory logs by default
- Logs file/line number URIs in debug mode
Change-Id: I9dadadc6e93ef91cc70d206b7225aeb7a06f8773
This commit makes the necessary changes to migrate from Qt 6.5.3 to
Qt 6.6.1 and fixes the following issues:
- EditedPopup.qml: "layout polish loop" and "recursive rearrange"
errors (GitLab: #1510) as well as an unreported bug where text was
clipped instead of elided
- BaseContextMenu.qml: QML warning ("Created graphical object was not
placed in the graphics scene.")
The daemon is also bumped in order to include a patch for a build issue
on openSUSE Leap (GitLab: #1552).
GitLab: #1466
Change-Id: I12df2f84067ebe961368879e08ff7ef275d93395
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
This commit fixes three issues related to tst_MessageOptions.qml:
1) There was no test to check that the call to createSIPAccount() at the
beginning of test_createMessageOptionsPopup() actually succeeded
2) The created account was not deleted at the end of the test
3) The test would occasionally crash due to an uncaught
std::out_of_range exception thrown by the
AccountModelPimpl::slotAccountDetailsChanged function. I've modified
the function to issue a warning instead, which makes it consistent
with AccountModelPimpl::slotVolatileAccountDetailsChanged and avoids
throwing an exception from a Qt slot (which is considered undefined
behavior according to the Qt documentation)
Change-Id: I4d939b29f27ee27de673aea7046997ef756fbcee
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
When adding/removing a file sharing we must add/remove
not only the video but also the audio media attributes
to the media change proposal.
GitLab: https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/485
Change-Id: Ifa6be8d500a43b1c2494501a4d6a6a6f009fdb62
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
It works with a Pimpl which the right pttlistener.cpp depending
on the platform you are on (macOs, windows or X11). It is a
global PTT which listen to key events during calls. If the
global PTT is not supported, a local PTT is set.
https://git.jami.net/savoirfairelinux/jami-project/-/issues/1402
Change-Id: I8399800966c737bb8e8a656ecbb6af7ac7cdde8c