diff --git a/src/widget/form/genericchatform.cpp b/src/widget/form/genericchatform.cpp index 42de7d468..5b9cddfd4 100644 --- a/src/widget/form/genericchatform.cpp +++ b/src/widget/form/genericchatform.cpp @@ -822,22 +822,12 @@ void GenericChatForm::onLoadHistory() { LoadHistoryDialog dlg(&chatLog); if (dlg.exec()) { + QDateTime time = dlg.getFromDate(); + auto idx = firstItemAfterDate(dlg.getFromDate().date(), chatLog); + auto end = ChatLogIdx(idx.get() + 100); chatWidget->clear(); messages.clear(); - - QDateTime time = dlg.getFromDate(); - auto type = dlg.getLoadType(); - - auto begin = firstItemAfterDate(dlg.getFromDate().date(), chatLog); - auto end = ChatLogIdx(begin.get() + 1); - - renderMessages(begin, end); - - if (type == LoadHistoryDialog::from) { - loadHistoryUpper(); - } else { - loadHistoryLower(); - } + renderMessages(idx, end); } } @@ -1044,13 +1034,15 @@ void GenericChatForm::renderMessages(ChatLogIdx begin, ChatLogIdx end, void GenericChatForm::loadHistoryLower() { - auto end = messages.begin()->first; - auto begin = ChatLogIdx(0); - if (end.get() > 100) { - begin = ChatLogIdx(end.get() - 100); + auto begin = messages.begin()->first; + + if (begin.get() > 100) { + begin = ChatLogIdx(begin.get() - 100); + } else { + begin = ChatLogIdx(0); } - renderMessages(begin, end); + renderMessages(begin, chatLog.getNextIdx()); } void GenericChatForm::loadHistoryUpper() diff --git a/src/widget/form/loadhistorydialog.cpp b/src/widget/form/loadhistorydialog.cpp index 151979b29..634336c1b 100644 --- a/src/widget/form/loadhistorydialog.cpp +++ b/src/widget/form/loadhistorydialog.cpp @@ -66,15 +66,6 @@ QDateTime LoadHistoryDialog::getFromDate() return res; } -LoadHistoryDialog::LoadType LoadHistoryDialog::getLoadType() -{ - if (ui->loadTypeComboBox->currentIndex() == 0) { - return LoadType::from; - } - - return LoadType::to; -} - void LoadHistoryDialog::setTitle(const QString& title) { setWindowTitle(title); diff --git a/src/widget/form/loadhistorydialog.h b/src/widget/form/loadhistorydialog.h index 00a2cfc4a..34f89045f 100644 --- a/src/widget/form/loadhistorydialog.h +++ b/src/widget/form/loadhistorydialog.h @@ -33,17 +33,11 @@ class LoadHistoryDialog : public QDialog Q_OBJECT public: - enum LoadType { - from, - to - }; - explicit LoadHistoryDialog(const IChatLog* chatLog, QWidget* parent = nullptr); explicit LoadHistoryDialog(QWidget* parent = nullptr); ~LoadHistoryDialog(); QDateTime getFromDate(); - LoadType getLoadType(); void setTitle(const QString& title); void setInfoLabel(const QString& info); diff --git a/src/widget/form/loadhistorydialog.ui b/src/widget/form/loadhistorydialog.ui index ef3a8bda8..dcd062621 100644 --- a/src/widget/form/loadhistorydialog.ui +++ b/src/widget/form/loadhistorydialog.ui @@ -6,8 +6,8 @@ 0 0 - 410 - 332 + 347 + 264 @@ -16,60 +16,22 @@ true - - - - - - - Load history - - - - - - - - from - - - - - to - - - - - - - - (about 100 messages are loaded) - - - - - - - Qt::Horizontal - - - - 17 - 20 - - - - - + + + + + Load history from: + + - + false - + Qt::Horizontal