Only one star per list, restore users in poll results
This commit is contained in:
parent
8258867407
commit
80ecf50e74
9 changed files with 41 additions and 9 deletions
|
@ -147,9 +147,8 @@ ListItem {
|
||||||
messageListItem.messageReactions = null;
|
messageListItem.messageReactions = null;
|
||||||
selectReactionBubble.visible = false;
|
selectReactionBubble.visible = false;
|
||||||
} else {
|
} else {
|
||||||
if (messageListItem.chatReactions) {
|
selectReactionBubble.visible = !selectReactionBubble.visible;
|
||||||
selectReactionBubble.visible = !selectReactionBubble.visible;
|
elementSelected(index);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -181,6 +180,19 @@ ListItem {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Connections {
|
||||||
|
target: chatPage
|
||||||
|
onResetElements: {
|
||||||
|
messageListItem.messageReactions = null;
|
||||||
|
selectReactionBubble.visible = false;
|
||||||
|
}
|
||||||
|
onElementSelected: {
|
||||||
|
if (elementIndex !== index) {
|
||||||
|
selectReactionBubble.visible = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Loader {
|
Loader {
|
||||||
id: contextMenuLoader
|
id: contextMenuLoader
|
||||||
active: false
|
active: false
|
||||||
|
@ -285,6 +297,9 @@ ListItem {
|
||||||
messageListItem.messageReactions = null;
|
messageListItem.messageReactions = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
onReactionsUpdated: {
|
||||||
|
chatReactions = tdLibWrapper.getChatReactions(page.chatInformation.id);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Timer {
|
Timer {
|
||||||
|
|
|
@ -67,6 +67,8 @@ Page {
|
||||||
property bool doSendBotStartMessage
|
property bool doSendBotStartMessage
|
||||||
property string sendBotStartMessageParameter
|
property string sendBotStartMessageParameter
|
||||||
property var availableReactions
|
property var availableReactions
|
||||||
|
signal resetElements()
|
||||||
|
signal elementSelected(int elementIndex)
|
||||||
|
|
||||||
states: [
|
states: [
|
||||||
State {
|
State {
|
||||||
|
@ -480,7 +482,10 @@ Page {
|
||||||
if (pageStack.depth === 1) {
|
if (pageStack.depth === 1) {
|
||||||
// Only clear chat model if navigated back to overview page. In other cases we keep the information...
|
// Only clear chat model if navigated back to overview page. In other cases we keep the information...
|
||||||
chatModel.clear();
|
chatModel.clear();
|
||||||
|
} else {
|
||||||
|
resetElements();
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -143,10 +143,11 @@ Page {
|
||||||
|
|
||||||
Connections {
|
Connections {
|
||||||
target: tdLibWrapper
|
target: tdLibWrapper
|
||||||
onUsersReceived: {
|
onMessageSendersReceived: {
|
||||||
|
Debug.log("Received poll users...")
|
||||||
if(extra === optionDelegate.usersResponseIdentifierString) {
|
if(extra === optionDelegate.usersResponseIdentifierString) {
|
||||||
for(var i = 0; i < userIds.length; i += 1) {
|
for(var i = 0; i < senders.length; i += 1) {
|
||||||
optionDelegate.users.append({id: userIds[i], user:tdLibWrapper.getUserInformation(userIds[i])});
|
optionDelegate.users.append({id: senders[i].user_id, user:tdLibWrapper.getUserInformation(senders[i].user_id)});
|
||||||
}
|
}
|
||||||
loadUsersTimer.start();
|
loadUsersTimer.start();
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,7 @@ Name: harbour-fernschreiber
|
||||||
|
|
||||||
Summary: Fernschreiber is a Telegram client for Sailfish OS
|
Summary: Fernschreiber is a Telegram client for Sailfish OS
|
||||||
Version: 0.17
|
Version: 0.17
|
||||||
Release: 8
|
Release: 10
|
||||||
Group: Qt/Qt
|
Group: Qt/Qt
|
||||||
License: LICENSE
|
License: LICENSE
|
||||||
URL: http://werkwolf.eu/
|
URL: http://werkwolf.eu/
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
Name: harbour-fernschreiber
|
Name: harbour-fernschreiber
|
||||||
Summary: Fernschreiber is a Telegram client for Sailfish OS
|
Summary: Fernschreiber is a Telegram client for Sailfish OS
|
||||||
Version: 0.17
|
Version: 0.17
|
||||||
Release: 8
|
Release: 10
|
||||||
# The contents of the Group field should be one of the groups listed here:
|
# The contents of the Group field should be one of the groups listed here:
|
||||||
# https://github.com/mer-tools/spectacle/blob/master/data/GROUPS
|
# https://github.com/mer-tools/spectacle/blob/master/data/GROUPS
|
||||||
Group: Qt/Qt
|
Group: Qt/Qt
|
||||||
|
|
|
@ -160,6 +160,7 @@ TDLibReceiver::TDLibReceiver(void *tdLibClient, QObject *parent) : QThread(paren
|
||||||
handlers.insert("updateChatPinnedMessage", &TDLibReceiver::processUpdateChatPinnedMessage);
|
handlers.insert("updateChatPinnedMessage", &TDLibReceiver::processUpdateChatPinnedMessage);
|
||||||
handlers.insert("updateMessageIsPinned", &TDLibReceiver::processUpdateMessageIsPinned);
|
handlers.insert("updateMessageIsPinned", &TDLibReceiver::processUpdateMessageIsPinned);
|
||||||
handlers.insert("users", &TDLibReceiver::processUsers);
|
handlers.insert("users", &TDLibReceiver::processUsers);
|
||||||
|
handlers.insert("messageSenders", &TDLibReceiver::processMessageSenders);
|
||||||
handlers.insert("error", &TDLibReceiver::processError);
|
handlers.insert("error", &TDLibReceiver::processError);
|
||||||
handlers.insert("ok", &TDLibReceiver::ok);
|
handlers.insert("ok", &TDLibReceiver::ok);
|
||||||
handlers.insert("secretChat", &TDLibReceiver::processSecretChat);
|
handlers.insert("secretChat", &TDLibReceiver::processSecretChat);
|
||||||
|
@ -634,6 +635,12 @@ void TDLibReceiver::processUsers(const QVariantMap &receivedInformation)
|
||||||
emit usersReceived(receivedInformation.value(_EXTRA).toString(), receivedInformation.value("user_ids").toList(), receivedInformation.value(TOTAL_COUNT).toInt());
|
emit usersReceived(receivedInformation.value(_EXTRA).toString(), receivedInformation.value("user_ids").toList(), receivedInformation.value(TOTAL_COUNT).toInt());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TDLibReceiver::processMessageSenders(const QVariantMap &receivedInformation)
|
||||||
|
{
|
||||||
|
LOG("Received Message Senders");
|
||||||
|
emit messageSendersReceived(receivedInformation.value(_EXTRA).toString(), receivedInformation.value("senders").toList(), receivedInformation.value(TOTAL_COUNT).toInt());
|
||||||
|
}
|
||||||
|
|
||||||
void TDLibReceiver::processError(const QVariantMap &receivedInformation)
|
void TDLibReceiver::processError(const QVariantMap &receivedInformation)
|
||||||
{
|
{
|
||||||
LOG("Received an error");
|
LOG("Received an error");
|
||||||
|
|
|
@ -88,7 +88,8 @@ signals:
|
||||||
void chatTitleUpdated(const QString &chatId, const QString &title);
|
void chatTitleUpdated(const QString &chatId, const QString &title);
|
||||||
void chatPinnedMessageUpdated(qlonglong chatId, qlonglong pinnedMessageId);
|
void chatPinnedMessageUpdated(qlonglong chatId, qlonglong pinnedMessageId);
|
||||||
void messageIsPinnedUpdated(qlonglong chatId, qlonglong messageId, bool isPinned);
|
void messageIsPinnedUpdated(qlonglong chatId, qlonglong messageId, bool isPinned);
|
||||||
void usersReceived(const QString &extra, const QVariantList &userIds, int totalUsers);
|
void usersReceived(const QString &extra, const QVariantList &senders, int totalUsers);
|
||||||
|
void messageSendersReceived(const QString &extra, const QVariantList &userIds, int totalUsers);
|
||||||
void errorReceived(const int code, const QString &message, const QString &extra);
|
void errorReceived(const int code, const QString &message, const QString &extra);
|
||||||
void secretChat(qlonglong secretChatId, const QVariantMap &secretChat);
|
void secretChat(qlonglong secretChatId, const QVariantMap &secretChat);
|
||||||
void secretChatUpdated(qlonglong secretChatId, const QVariantMap &secretChat);
|
void secretChatUpdated(qlonglong secretChatId, const QVariantMap &secretChat);
|
||||||
|
@ -173,6 +174,7 @@ private:
|
||||||
void processUpdateChatPinnedMessage(const QVariantMap &receivedInformation);
|
void processUpdateChatPinnedMessage(const QVariantMap &receivedInformation);
|
||||||
void processUpdateMessageIsPinned(const QVariantMap &receivedInformation);
|
void processUpdateMessageIsPinned(const QVariantMap &receivedInformation);
|
||||||
void processUsers(const QVariantMap &receivedInformation);
|
void processUsers(const QVariantMap &receivedInformation);
|
||||||
|
void processMessageSenders(const QVariantMap &receivedInformation);
|
||||||
void processError(const QVariantMap &receivedInformation);
|
void processError(const QVariantMap &receivedInformation);
|
||||||
void processSecretChat(const QVariantMap &receivedInformation);
|
void processSecretChat(const QVariantMap &receivedInformation);
|
||||||
void processUpdateSecretChat(const QVariantMap &receivedInformation);
|
void processUpdateSecretChat(const QVariantMap &receivedInformation);
|
||||||
|
|
|
@ -176,6 +176,7 @@ void TDLibWrapper::initializeTDLibReceiver() {
|
||||||
connect(this->tdLibReceiver, SIGNAL(chatPinnedMessageUpdated(qlonglong, qlonglong)), this, SIGNAL(chatPinnedMessageUpdated(qlonglong, qlonglong)));
|
connect(this->tdLibReceiver, SIGNAL(chatPinnedMessageUpdated(qlonglong, qlonglong)), this, SIGNAL(chatPinnedMessageUpdated(qlonglong, qlonglong)));
|
||||||
connect(this->tdLibReceiver, SIGNAL(messageIsPinnedUpdated(qlonglong, qlonglong, bool)), this, SLOT(handleMessageIsPinnedUpdated(qlonglong, qlonglong, bool)));
|
connect(this->tdLibReceiver, SIGNAL(messageIsPinnedUpdated(qlonglong, qlonglong, bool)), this, SLOT(handleMessageIsPinnedUpdated(qlonglong, qlonglong, bool)));
|
||||||
connect(this->tdLibReceiver, SIGNAL(usersReceived(QString, QVariantList, int)), this, SIGNAL(usersReceived(QString, QVariantList, int)));
|
connect(this->tdLibReceiver, SIGNAL(usersReceived(QString, QVariantList, int)), this, SIGNAL(usersReceived(QString, QVariantList, int)));
|
||||||
|
connect(this->tdLibReceiver, SIGNAL(messageSendersReceived(QString, QVariantList, int)), this, SIGNAL(messageSendersReceived(QString, QVariantList, int)));
|
||||||
connect(this->tdLibReceiver, SIGNAL(errorReceived(int, QString, QString)), this, SLOT(handleErrorReceived(int, QString, QString)));
|
connect(this->tdLibReceiver, SIGNAL(errorReceived(int, QString, QString)), this, SLOT(handleErrorReceived(int, QString, QString)));
|
||||||
connect(this->tdLibReceiver, SIGNAL(contactsImported(QVariantList, QVariantList)), this, SIGNAL(contactsImported(QVariantList, QVariantList)));
|
connect(this->tdLibReceiver, SIGNAL(contactsImported(QVariantList, QVariantList)), this, SIGNAL(contactsImported(QVariantList, QVariantList)));
|
||||||
connect(this->tdLibReceiver, SIGNAL(messageEditedUpdated(qlonglong, qlonglong, QVariantMap)), this, SIGNAL(messageEditedUpdated(qlonglong, qlonglong, QVariantMap)));
|
connect(this->tdLibReceiver, SIGNAL(messageEditedUpdated(qlonglong, qlonglong, QVariantMap)), this, SIGNAL(messageEditedUpdated(qlonglong, qlonglong, QVariantMap)));
|
||||||
|
|
|
@ -323,6 +323,7 @@ signals:
|
||||||
void chatTitleUpdated(const QString &chatId, const QString &title);
|
void chatTitleUpdated(const QString &chatId, const QString &title);
|
||||||
void chatPinnedMessageUpdated(qlonglong chatId, qlonglong pinnedMessageId);
|
void chatPinnedMessageUpdated(qlonglong chatId, qlonglong pinnedMessageId);
|
||||||
void usersReceived(const QString &extra, const QVariantList &userIds, int totalUsers);
|
void usersReceived(const QString &extra, const QVariantList &userIds, int totalUsers);
|
||||||
|
void messageSendersReceived(const QString &extra, const QVariantList &senders, int totalUsers);
|
||||||
void errorReceived(int code, const QString &message, const QString &extra);
|
void errorReceived(int code, const QString &message, const QString &extra);
|
||||||
void contactsImported(const QVariantList &importerCount, const QVariantList &userIds);
|
void contactsImported(const QVariantList &importerCount, const QVariantList &userIds);
|
||||||
void messageNotFound(qlonglong chatId, qlonglong messageId);
|
void messageNotFound(qlonglong chatId, qlonglong messageId);
|
||||||
|
|
Loading…
Reference in a new issue