From ed45359863cf617d94e8f39506971a515c495304 Mon Sep 17 00:00:00 2001 From: ezavod Date: Sat, 3 Jun 2017 14:33:46 +0200 Subject: [PATCH] fix(ui): add date message before info messages Fixes #4388. Separated date message in its own function. Also added date message before info messages like it is already done with normal chat messages. --- src/widget/form/genericchatform.cpp | 17 ++++++++++++++--- src/widget/form/genericchatform.h | 1 + 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/widget/form/genericchatform.cpp b/src/widget/form/genericchatform.cpp index b4163008e..de6b52cf6 100644 --- a/src/widget/form/genericchatform.cpp +++ b/src/widget/form/genericchatform.cpp @@ -402,9 +402,7 @@ ChatMessage::Ptr GenericChatForm::createMessage(const ToxPk& author, const QStri bool isSelf = author == core->getSelfId().getPublicKey(); QString authorStr = isSelf ? core->getUsername() : resolveToxPk(author); if (getLatestDate() != QDate::currentDate()) { - const Settings& s = Settings::getInstance(); - QString dateText = QDate::currentDate().toString(s.getDateFormat()); - addSystemInfoMessage(dateText, ChatMessage::INFO, QDateTime()); + addSystemDateMessage(); } ChatMessage::Ptr msg; @@ -553,10 +551,23 @@ void GenericChatForm::onChatMessageFontChanged(const QFont& font) void GenericChatForm::addSystemInfoMessage(const QString& message, ChatMessage::SystemMessageType type, const QDateTime& datetime) { + if (getLatestDate() != QDate::currentDate()) { + addSystemDateMessage(); + } + previousId = ToxPk(); insertChatMessage(ChatMessage::createChatInfoMessage(message, type, datetime)); } +void GenericChatForm::addSystemDateMessage() +{ + const Settings& s = Settings::getInstance(); + QString dateText = QDate::currentDate().toString(s.getDateFormat()); + + previousId = ToxPk(); + insertChatMessage(ChatMessage::createChatInfoMessage(dateText, ChatMessage::INFO, QDateTime())); +} + void GenericChatForm::clearChatArea() { clearChatArea(true); diff --git a/src/widget/form/genericchatform.h b/src/widget/form/genericchatform.h index 78354523b..785666b1c 100644 --- a/src/widget/form/genericchatform.h +++ b/src/widget/form/genericchatform.h @@ -101,6 +101,7 @@ protected slots: private: void retranslateUi(); + void addSystemDateMessage(); protected: ChatMessage::Ptr createMessage(const ToxPk& author, const QString& message,