Elide Qt invitation links with consistent layout and full-address selection
This commit is contained in:
1 parent
12e09cb0ed
commit
6ad89a4f6a
2 files changed
+43
-14
No files matched your search
@@ -1151,6 +1151,14 @@ void MessageList::onDmMessages(const uint8_t* data, int len) {
|
||||
qint64 ts = (qint64)message.value("ts").toDouble();
|
||||
quint64 author = message.value("author").toString().toULongLong();
|
||||
QString text = message.value("data").toString();
|
||||
const bool invite = message.value("ct").toString() == QStringLiteral("invite");
|
||||
const QString inviteLink = invite ? text : QString();
|
||||
if (invite) {
|
||||
const QString groupName = message.value("tags").toObject().value("group_name").toString();
|
||||
text = tr("Приглашение в группу «%1»").arg(groupName) + '\n' + inviteLink;
|
||||
GUI_DEBUG("invite PM: rendered conv=%s seq=%lld group_name_bytes=%d link_bytes=%d", qPrintable(m_currentChannelId),
|
||||
(long long)seq, (int)groupName.toUtf8().size(), (int)inviteLink.size());
|
||||
}
|
||||
bool file = message.value("ct").toString() == "file";
|
||||
QString state = message.value("media_status").toString();
|
||||
QString status;
|
||||
@@ -1181,6 +1189,7 @@ void MessageList::onDmMessages(const uint8_t* data, int len) {
|
||||
item->setData(m_currentChannelId, MsgChannelIdRole);
|
||||
QString type = message.value("content_type").toString(QStringLiteral("text/plain"));
|
||||
item->setData(type, MsgContentTypeRole);
|
||||
if (invite) item->setData(inviteLink, MsgInviteLinkRole);
|
||||
if (file) {
|
||||
QString path = message.value("media_path").toString();
|
||||
item->setData(path, MsgVoiceFileRole);
|
||||
|
||||
Reference in new issue
Block a user