mirror of
https://github.com/qTox/qTox.git
synced 2024-03-22 14:00:36 +08:00
revert(chatlog): "remove part messages from chat"
This reverts commit 4c7ecb6024
.
This commit is contained in:
parent
bdbf1f61a8
commit
340496bd6e
|
@ -679,30 +679,6 @@ void ChatLog::reloadTheme()
|
|||
}
|
||||
}
|
||||
|
||||
void ChatLog::removeFirsts(const int num)
|
||||
{
|
||||
if (lines.size() > num) {
|
||||
lines.erase(lines.begin(), lines.begin()+num);
|
||||
} else {
|
||||
lines.clear();
|
||||
}
|
||||
|
||||
for (int i = 0; i < lines.size(); ++i) {
|
||||
lines[i]->setRow(i);
|
||||
}
|
||||
|
||||
moveSelectionRectUpIfSelected(num);
|
||||
}
|
||||
|
||||
void ChatLog::removeLasts(const int num)
|
||||
{
|
||||
if (lines.size() > num) {
|
||||
lines.erase(lines.end()-num, lines.end());
|
||||
} else {
|
||||
lines.clear();
|
||||
}
|
||||
}
|
||||
|
||||
void ChatLog::forceRelayout()
|
||||
{
|
||||
startResizeWorker();
|
||||
|
|
|
@ -55,8 +55,6 @@ public:
|
|||
void scrollToLine(ChatLine::Ptr line);
|
||||
void selectAll();
|
||||
void fontChanged(const QFont& font);
|
||||
void removeFirsts(const int num);
|
||||
void removeLasts(const int num);
|
||||
|
||||
QString getSelectedText() const;
|
||||
|
||||
|
|
|
@ -701,13 +701,7 @@ void GenericChatForm::loadHistoryTo(const QDateTime &time)
|
|||
{
|
||||
auto end = chatLog.getFirstIdx();
|
||||
if (time.isNull()) {
|
||||
if (messages.size() + 100 >= maxMessages) {
|
||||
end = ChatLogIdx(messages.rbegin()->first.get() - 100);
|
||||
chatWidget->removeLasts(100);
|
||||
removeLastsMessages(100);
|
||||
} else {
|
||||
end = messages.begin()->first;
|
||||
}
|
||||
end = messages.begin()->first;
|
||||
} else {
|
||||
end = firstItemAfterDate(time.date(), chatLog);
|
||||
}
|
||||
|
@ -724,14 +718,7 @@ void GenericChatForm::loadHistoryFrom(const QDateTime &time)
|
|||
{
|
||||
auto begin = chatLog.getFirstIdx();
|
||||
if (time.isNull()) {
|
||||
if (messages.size() + 100 >= maxMessages) {
|
||||
begin = ChatLogIdx(messages.rbegin()->first.get() + 100);
|
||||
chatWidget->removeFirsts(100);
|
||||
removeFirstsMessages(100);
|
||||
} else {
|
||||
begin = messages.rbegin()->first;
|
||||
}
|
||||
|
||||
begin = messages.rbegin()->first;
|
||||
} else {
|
||||
begin = firstItemAfterDate(time.date(), chatLog);
|
||||
}
|
||||
|
@ -744,24 +731,6 @@ void GenericChatForm::loadHistoryFrom(const QDateTime &time)
|
|||
renderMessages(begin, end);
|
||||
}
|
||||
|
||||
void GenericChatForm::removeFirstsMessages(const int num)
|
||||
{
|
||||
if (static_cast<int>(messages.size()) > num) {
|
||||
messages.erase(messages.begin(), std::next(messages.begin(), num));
|
||||
} else {
|
||||
messages.clear();
|
||||
}
|
||||
}
|
||||
|
||||
void GenericChatForm::removeLastsMessages(const int num)
|
||||
{
|
||||
if (static_cast<int>(messages.size()) > num) {
|
||||
messages.erase(std::next(messages.end(), -100), messages.end());
|
||||
} else {
|
||||
messages.clear();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void GenericChatForm::disableSearchText()
|
||||
{
|
||||
|
@ -1073,10 +1042,6 @@ void GenericChatForm::renderItem(const ChatLogItem& item, bool hideName, bool co
|
|||
|
||||
void GenericChatForm::renderMessage(ChatLogIdx idx)
|
||||
{
|
||||
if (chatWidget->getLines().size() >= maxMessages) {
|
||||
chatWidget->removeFirsts(optimalRemove);
|
||||
removeFirstsMessages(optimalRemove);
|
||||
}
|
||||
renderMessages(idx, idx + 1);
|
||||
}
|
||||
|
||||
|
|
|
@ -131,8 +131,6 @@ private:
|
|||
void loadHistory(const QDateTime& time, const LoadHistoryDialog::LoadType type);
|
||||
void loadHistoryTo(const QDateTime& time);
|
||||
void loadHistoryFrom(const QDateTime& time);
|
||||
void removeFirstsMessages(const int num);
|
||||
void removeLastsMessages(const int num);
|
||||
|
||||
void renderItem(const ChatLogItem &item, bool hideName, bool colorizeNames, ChatMessage::Ptr &chatMessage);
|
||||
void renderFile(QString displayName, ToxFile file, bool isSelf, QDateTime timestamp, ChatMessage::Ptr &chatMessage);
|
||||
|
@ -192,8 +190,4 @@ protected:
|
|||
SearchPos searchPos;
|
||||
std::map<ChatLogIdx, ChatMessage::Ptr> messages;
|
||||
bool colorizeNames = false;
|
||||
|
||||
private:
|
||||
const int maxMessages{300};
|
||||
const int optimalRemove{50};
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue
Block a user