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