|
|
|
|
@ -365,6 +365,24 @@ MessageList::MessageList(DbManager* db, AudioRecorder* recorder, QWidget *parent
|
|
|
|
|
m_talkingLabel->hide(); |
|
|
|
|
hl->addWidget(m_talkingLabel); |
|
|
|
|
|
|
|
|
|
m_inviteBtn = new QPushButton(QStringLiteral("+"), header); |
|
|
|
|
m_inviteBtn->setAccessibleName(QStringLiteral("Пригласить в группу")); |
|
|
|
|
m_inviteBtn->setToolTip(QStringLiteral("Пригласить в группу")); |
|
|
|
|
m_inviteBtn->setFixedSize(34, 30); |
|
|
|
|
m_inviteBtn->setCursor(Qt::PointingHandCursor); |
|
|
|
|
m_inviteBtn->hide(); |
|
|
|
|
hl->addWidget(m_inviteBtn); |
|
|
|
|
connect(m_inviteBtn, &QPushButton::clicked, this, [this]() { |
|
|
|
|
if (!m_db || !isDmChannel(m_currentChannelId)) return; |
|
|
|
|
for (const auto& conv : m_db->getDmConversations()) { |
|
|
|
|
if (conv.convId == dmConvId(m_currentChannelId)) { |
|
|
|
|
emit inviteRequested(QString(), conv.peerNodeId, m_channelTitle->text()); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
GUI_ERROR("invite PM: conversation not found target=%s", qPrintable(m_currentChannelId)); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
m_callBtn = new QPushButton(QStringLiteral("☎"), header); |
|
|
|
|
m_callBtn->setAccessibleName(QStringLiteral("Позвонить")); |
|
|
|
|
m_callBtn->setFixedSize(34, 30); |
|
|
|
|
@ -625,6 +643,7 @@ void MessageList::loadChannel(const QString& channelId) {
|
|
|
|
|
m_currentChannelId = channelId; |
|
|
|
|
clearDmCallRoute(); |
|
|
|
|
m_callBtn->setVisible(isDmChannel(channelId)); |
|
|
|
|
m_inviteBtn->setVisible(isDmChannel(channelId)); |
|
|
|
|
m_peerStatus->setVisible(isDmChannel(channelId)); |
|
|
|
|
m_radioBtn->setVisible(!isDmChannel(channelId)); |
|
|
|
|
m_inputBar->setRecordingContext(m_db ? m_db->dbPath() + "/media" : QString(), channelId); |
|
|
|
|
|