François-Simon Fauteux-Chapleau 96c00ff019 interaction: set body and transferStatus of DATA_TRANSFER messages
This patch adds code in the interaction::Info::init function so that the
"body" and "transferStatus" fields are always set when an Info struct is
constructed for a message of type DATA_TRANSFER.

This removes some code duplication in conversationmodel.cpp, where these
fields were being set as an extra step after construction in three
different places.

It also fixes a bug in the ConversationModelPimpl::slotMessageUpdated
function, which did *not* set the "body" of DATA_TRANSFER messages. The
body was therefore empty instead of containing a file path, which is
what caused the image preview bug described in the following issue:
GitLab: #1671

The patch also reverts a change that was made in the
MessageListModel::update function by commit
d2eba1d91e. This change was a workaround
for the above bug, but it is no longer necessary (and it broke message
deletion, which relies on the body of the deleted message being set to
the empty string).
GitLab: #1825

Change-Id: I5848b93a12c1ef7b3735c5c6db6b32a9bbc4041d
2024-08-22 11:48:48 -04:00
2023-11-23 08:52:36 -05:00
2023-07-27 09:59:43 -04:00
2024-04-11 16:04:45 -04:00
2024-08-13 10:54:57 -04:00
2024-08-13 14:27:22 -04:00
2022-10-07 17:30:06 -04:00
2024-04-30 11:41:35 -04:00
2024-01-03 09:54:49 -05:00

Jami

jami-logo

Share, freely and privately

Introduction

Jami provides all its users a universal communication tool, autonomous, free, secure and built on a distributed architecture thus requiring no authority or central server to function.

jami is the cross platform client for Jami.

For more information about the jami project, see the following:

Getting involved

Notes

  • Coding style is managed by the clang-format and qmlformat, if you want to contribute, please use the pre-commit hook automatically installed with ./build.py --init --qt=<path/to/qt>
  • We use gerrit for our review. Please read about working with Gerrit if you want to submit patches.

Build

cf INSTALL.md

License

Copyright (C) 2020-2024 Savoir-faire Linux Inc.

Jami is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

See COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html for the full GPLv3 license.

Description
Client based on Qt for GNU/Linux, macOS and Windows
Readme 102 MiB
Languages
C++ 47.8%
QML 43.4%
Python 2%
Shell 1.6%
CMake 1.6%
Other 3.4%