Merge pull request 'origin_merged' (#8) from sprainbrains/harbour-fernschreiber:origin_merged into master

Reviewed-on: #8
This commit is contained in:
medvedych 2023-11-18 22:36:19 +03:00
commit 400cda8dcd
15 changed files with 14 additions and 96 deletions

View file

@ -561,6 +561,15 @@ int ChatListModel::updateChatOrder(int chatIndex)
return newIndex;
}
void ChatListModel::enableRefreshTimer()
{
// Start timestamp refresh timer if not yet active (usually when the first visible chat is discovered)
if (!relativeTimeRefreshTimer->isActive()) {
LOG("Enabling refresh timer");
relativeTimeRefreshTimer->start();
}
}
void ChatListModel::calculateUnreadState()
{
if (this->appSettings->onlineOnlyMode()) {
@ -599,6 +608,7 @@ void ChatListModel::addVisibleChat(ChatData *chat)
this->tdLibWrapper->registerJoinChat();
emit chatJoined(chat->chatId, chat->chatData.value("title").toString());
}
enableRefreshTimer();
}
void ChatListModel::updateChatVisibility(const TDLibWrapper::Group *group)
@ -687,6 +697,7 @@ void ChatListModel::setShowAllChats(bool showAll)
void ChatListModel::handleChatDiscovered(const QString &, const QVariantMap &chatToBeAdded)
{
LOG("New chat discovered");
ChatData *chat = new ChatData(tdLibWrapper, chatToBeAdded);
const TDLibWrapper::Group *group = tdLibWrapper->getGroup(chat->groupId);
@ -705,12 +716,8 @@ void ChatListModel::handleChatDiscovered(const QString &, const QVariantMap &cha
LOG("Hidden chat" << chat->chatId);
hiddenChats.insert(chat->chatId, chat);
} else {
LOG("Visible chat" << chat->chatId);
addVisibleChat(chat);
// Start timestamp refresh timer when the first visible chat is discovered
if (!relativeTimeRefreshTimer->isActive()) {
relativeTimeRefreshTimer->start();
}
}
}
@ -1034,5 +1041,6 @@ void ChatListModel::handleRelativeTimeRefreshTimer()
LOG("Refreshing timestamps");
QVector<int> roles;
roles.append(ChatListModel::RoleLastMessageDate);
roles.append(ChatListModel::RoleLastMessageStatus);
emit dataChanged(index(0), index(chatList.size() - 1), roles);
}

View file

@ -108,6 +108,7 @@ private:
void updateChatVisibility(const TDLibWrapper::Group *group);
void updateSecretChatVisibility(const QVariantMap secretChatDetails);
int updateChatOrder(int chatIndex);
void enableRefreshTimer();
private:
TDLibWrapper *tdLibWrapper;

View file

@ -495,13 +495,6 @@
<translation>Sie haben noch keine Chats.</translation>
</message>
</context>
<context>
<name>ContactSync</name>
<message>
<source>Could not synchronize your contacts with Telegram.</source>
<translation>Konnte Ihre Kontakte nicht mit Telegram synchronisieren.</translation>
</message>
</context>
<context>
<name>CoverPage</name>
<message>

View file

@ -495,13 +495,6 @@
<translation>You don&apos;t have any chats yet.</translation>
</message>
</context>
<context>
<name>ContactSync</name>
<message>
<source>Could not synchronize your contacts with Telegram.</source>
<translation type="unfinished">Could not synchronize your contacts with Telegram.</translation>
</message>
</context>
<context>
<name>CoverPage</name>
<message>

View file

@ -495,13 +495,6 @@
<translation>No hay todavía conversaciones.</translation>
</message>
</context>
<context>
<name>ContactSync</name>
<message>
<source>Could not synchronize your contacts with Telegram.</source>
<translation>No se puede sincronizar los contactos con Telegrama.</translation>
</message>
</context>
<context>
<name>CoverPage</name>
<message>

View file

@ -495,13 +495,6 @@
<translation>Sinulla ei ole vielä keskusteluja.</translation>
</message>
</context>
<context>
<name>ContactSync</name>
<message>
<source>Could not synchronize your contacts with Telegram.</source>
<translation type="unfinished">Yhteystietojasi ei voitu synkronoida Telegramin kanssa.</translation>
</message>
</context>
<context>
<name>CoverPage</name>
<message>

View file

@ -495,13 +495,6 @@
<translation>Vous n&apos;avez aucune conversation.</translation>
</message>
</context>
<context>
<name>ContactSync</name>
<message>
<source>Could not synchronize your contacts with Telegram.</source>
<translation>Impossible de synchroniser vos contacts avec Telegram.</translation>
</message>
</context>
<context>
<name>CoverPage</name>
<message>

View file

@ -485,13 +485,6 @@
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>ContactSync</name>
<message>
<source>Could not synchronize your contacts with Telegram.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>CoverPage</name>
<message>

View file

@ -495,13 +495,6 @@
<translation>Nessuna chat presente</translation>
</message>
</context>
<context>
<name>ContactSync</name>
<message>
<source>Could not synchronize your contacts with Telegram.</source>
<translation type="unfinished">Sincronizzazione contatti con Telegram non riuscita</translation>
</message>
</context>
<context>
<name>CoverPage</name>
<message>

View file

@ -505,13 +505,6 @@
<translation>Nie masz jeszcze żadnych czatów.</translation>
</message>
</context>
<context>
<name>ContactSync</name>
<message>
<source>Could not synchronize your contacts with Telegram.</source>
<translation>Nie można zsynchonizaować kontaktów z Telegramem.</translation>
</message>
</context>
<context>
<name>CoverPage</name>
<message>

View file

@ -505,13 +505,6 @@
<translation>Тут пока ничего нет</translation>
</message>
</context>
<context>
<name>ContactSync</name>
<message>
<source>Could not synchronize your contacts with Telegram.</source>
<translation>Невозможно синхронизировать ваши контакты с Телеграм.</translation>
</message>
</context>
<context>
<name>CoverPage</name>
<message>

View file

@ -505,13 +505,6 @@
<translation>Nemáte žiadne čety.</translation>
</message>
</context>
<context>
<name>ContactSync</name>
<message>
<source>Could not synchronize your contacts with Telegram.</source>
<translation>Nemožno synchonizovať kontakty s Telegramom.</translation>
</message>
</context>
<context>
<name>CoverPage</name>
<message>

View file

@ -495,13 +495,6 @@
<translation>Du har inga chattar än.</translation>
</message>
</context>
<context>
<name>ContactSync</name>
<message>
<source>Could not synchronize your contacts with Telegram.</source>
<translation>Kunde inte synkronisera dina kontakter med Telegram.</translation>
</message>
</context>
<context>
<name>CoverPage</name>
<message>

View file

@ -485,13 +485,6 @@
<translation></translation>
</message>
</context>
<context>
<name>ContactSync</name>
<message>
<source>Could not synchronize your contacts with Telegram.</source>
<translation type="unfinished"> Telegram </translation>
</message>
</context>
<context>
<name>CoverPage</name>
<message>

View file

@ -495,13 +495,6 @@
<translation>You don&apos;t have any chats yet.</translation>
</message>
</context>
<context>
<name>ContactSync</name>
<message>
<source>Could not synchronize your contacts with Telegram.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>CoverPage</name>
<message>