mirror of
https://github.com/savoirfairelinux/jami-client-qt.git
synced 2025-12-29 12:36:34 +08:00
feature: documents flow in the swarmDetailsPanel
Change-Id: I24a94b9ced0ec3930a0b9e20f3fa0440e2d8fd00 Signed-off-by: Nicolas Vengeon <nicolas.vengeon@savoirfairelinux.com>
This commit is contained in:
@@ -49,6 +49,7 @@ MessagesAdapter::MessagesAdapter(AppSettingsManager* settingsManager,
|
||||
: QmlAdapterBase(instance, parent)
|
||||
, settingsManager_(settingsManager)
|
||||
, previewEngine_(previewEngine)
|
||||
, mediaInteractions_(std::make_unique<MessageListModel>())
|
||||
{
|
||||
connect(lrcInstance_, &LRCInstance::selectedConvUidChanged, [this]() {
|
||||
set_replyToId("");
|
||||
@@ -136,6 +137,12 @@ MessagesAdapter::connectConversationModel()
|
||||
this,
|
||||
&MessagesAdapter::onComposingStatusChanged,
|
||||
Qt::UniqueConnection);
|
||||
|
||||
QObject::connect(currentConversationModel,
|
||||
&ConversationModel::messagesFoundProcessed,
|
||||
this,
|
||||
&MessagesAdapter::onMessagesFoundProcessed,
|
||||
Qt::UniqueConnection);
|
||||
}
|
||||
|
||||
void
|
||||
@@ -517,6 +524,33 @@ MessagesAdapter::onComposingStatusChanged(const QString& convId,
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
MessagesAdapter::onMessagesFoundProcessed(const QString& accountId,
|
||||
const VectorMapStringString& messageIds,
|
||||
const QVector<interaction::Info>& messageInformations)
|
||||
{
|
||||
if (lrcInstance_->get_currentAccountId() != accountId) {
|
||||
return;
|
||||
}
|
||||
bool isSearchInProgress = messageIds.length();
|
||||
if (isSearchInProgress) {
|
||||
int index = -1;
|
||||
Q_FOREACH (const MapStringString& msg, messageIds) {
|
||||
index++;
|
||||
try {
|
||||
std::pair<QString, interaction::Info> message(msg["id"],
|
||||
messageInformations.at(index));
|
||||
mediaInteractions_->insert(message);
|
||||
} catch (...) {
|
||||
qWarning() << "error in onMessagesFoundProcessed, message insertion on index: "
|
||||
<< index;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
set_mediaMessageListModel(QVariant::fromValue(mediaInteractions_.get()));
|
||||
}
|
||||
}
|
||||
|
||||
QList<QString>
|
||||
MessagesAdapter::conversationTypersUrlToName(const QSet<QString>& typersSet)
|
||||
{
|
||||
@@ -637,3 +671,18 @@ MessagesAdapter::getFormattedDay(const quint64 timestamp)
|
||||
|
||||
return dateLocale;
|
||||
}
|
||||
|
||||
void
|
||||
MessagesAdapter::getConvMedias()
|
||||
{
|
||||
auto accountId = lrcInstance_->get_currentAccountId();
|
||||
auto convId = lrcInstance_->get_selectedConvUid();
|
||||
|
||||
mediaInteractions_.reset(new MessageListModel(this));
|
||||
|
||||
try {
|
||||
lrcInstance_->getCurrentConversationModel()->getConvMediasInfos(accountId, convId);
|
||||
} catch (...) {
|
||||
qDebug() << "Exception during getConvMedia:";
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user