Iterate through CPP elements and use positionView(ListView.Center)
as other approach seems bugguy or slower.
Change-Id: I43879969ccb457166879a156efb482e77ff07d6b
- isEmojiOnly changed to message containing only an emoji, not an edit or reply.
- adapted size
GitLab: #957
Change-Id: I78388a406a2a0b9c93f1c291850062fd9bf04a54
SFPM performs poorly compared to its C++ counterpart in cases where re-filtering often is required. Tests show SFPM taking roughly 10x that of QSFPM in certain cases when the entire conversation needs to be loaded.
Change-Id: I25792f0ab376ae11d42073a548934b743e59fa3e
So that users can know when a message is deleted and can check
previous version like any edited version.
Change-Id: If3c1daeec930bd4b0f359573b971790199397489
1. sourceParent and destinationParent were incorrect.
2. Moving always all the message can be incorrect if parentIdx >
msgIdx after a merge
Change-Id: I0ab8eeabb61926d5c0c22d8fed68c60d54178bf6
GitLab: #939
+ moveMessage was doing useless computation to move messages one
by one even if blocks are supported
+ beginMoveRows/endMoveRows seems to do weird stuff if all the rows
should be moved causing some crashes. beginReset in this case
doesn't trigger this weird behaviour and is more efficient.
Change-Id: Ia4eb3cdbbe74bf9215fb673cb9af571f67225ffe
+ 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
Handle application/edited-message type to support message edition.
Previous bodies are saved in the interaction to be able to get the
original post to avoid unwanted editions.
While loading a conversation, we store the editions in a temporary
map that we link once the edited message is detected. This work
because we can't edit a message before this message exists.
PreviousBodies in interaction.h contains every previous body detected
and the client can show previous version of the message in a popup.
Deleting a message works the same way, just that any message
with an empty body is not shown.
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/316
Change-Id: Ib158abd16ad4b629532de11694e88d86a12d72a8
If there was too much following merge commits, sometimes the
conversation was not correctly loaded.
Moreover, the lastMessageUID was not correctly calculated from
time to time, leading to empty conversations in the smartlist.
Change-Id: I1224269c5df72936ae51f34211ce3f63dbf606ff
-Emojis are shown without bubbles when sent alone
-Changes on message reply design ( animation now include files and emojis)
GitLab: #690
Signed-off-by: Nicolas Vengeon <nicolas.vengeon@savoirfairelinux.com>
Change-Id: I81d128367a9c393c76493e02ce88daf4f6a11bf4
use the size from the daemon if the file is downloaded, else
use the size from the commit.
Change-Id: Ia4e7123558e93a1ab0879feab9a141ceefaf183a
GitLab: #833
This is libjamiclient from the jami-libclient.git repository as of
767c45b8b09806ac05cbada720864df93588c047, with the following changes:
* src/libclient/newaccountmodel.cpp:
(NewAccountModelPimpl::removeFromAccounts): The lock wait inside
'#ifdef CHK_FREEABLE_BEFORE_ERASE_ACCOUNT' was not updated when the
type of 'accounts' was changed over the years from this:
std::map<std::string, account::Info>
to this:
std::map<QString, std::pair<account::Info, std::shared_ptr<Database>>>
Basically we need to get the 'first' of the pair for 'account::Info'.
So we now do that.
* src/libclient/avmodel.cpp:
* src/libclient/callbackshandler.cpp:
* src/libclient/contactmodel.cpp:
* src/libclient/conversationmodel.cpp:
* src/libclient/database.cpp:
* src/libclient/namedirectory.cpp:
* src/libclient/newaccountmodel.cpp:
* src/libclient/newcallmodel.cpp:
* src/libclient/newdevicemodel.cpp:
* src/libclient/peerdiscoverymodel.cpp:
* src/libclient/pluginmodel.cpp:
* src/libclient/smartinfohub.cpp:
* src/libclient/vcard.h:
* src/libclient/authority/storagehelper.cpp: Replace Qt's 'foreach'
with 'Q_FOREACH' and its 'emit' with 'Q_EMIT' because in the client-qt
code base we have '-DQT_NO_KEYWORDS' to avoid conflicts with other
libraries we use.
* cmake/FindLibJami.cmake: Import cmake/FindRing.cmake from the
jami-libclient.git repository. Then, rename RING_BUILD_DIR to
LIBJAMI_BUILD_DIR (though the old name is still supported for now).
Also update other references of Ring to Jami. Further, add additional
calls to 'find_library' to make sure specified local paths for libjami
are checked before system-wide ones (in case of older/obsolete libjami
being available system-wide, which might happen on GNU/Linux systems).
* translations/lrc_*.ts: Import translation files from the libclient
repository. The message location paths were corrected by running
"sed -i 's|../src|&/libclient|g' lrc_*.ts" in 'translations/'.
.tx/config: Add section for the newly-imported libclient translations.
* CMakeLists.txt: Reformat, plus various fixes and cleanups, such as
changing indentation to 2 spaces and wrapping lines at 70 characters,
renaming the parent directory of translations from 'ring' to 'jami',
and using all lowercase function calls. Also add copyright headers.
* src/app/appsettingsmanager.cpp:
(AppSettingsManager::loadTranslations):
* src/app/utilsadapter.cpp (UtilsAdapter::supportedLang): Update to
adapt to the renaming of the parent directory of translations from
'ring' to 'jami'.
GitLab: #748
Change-Id: I86e3b0fb30e554755023e7b858b6a0d132cd59ab