summaryrefslogtreecommitdiff
path: root/plugins/TabSRMM/src/msgdlgother.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/TabSRMM/src/msgdlgother.cpp')
-rw-r--r--plugins/TabSRMM/src/msgdlgother.cpp17
1 files changed, 15 insertions, 2 deletions
diff --git a/plugins/TabSRMM/src/msgdlgother.cpp b/plugins/TabSRMM/src/msgdlgother.cpp
index e6ebb9eb48..a21f3f99a0 100644
--- a/plugins/TabSRMM/src/msgdlgother.cpp
+++ b/plugins/TabSRMM/src/msgdlgother.cpp
@@ -1219,7 +1219,7 @@ void CMsgDialog::RemakeLog()
m_szMicroLf[0] = 0;
m_lastEventTime = 0;
m_iLastEventType = -1;
- m_pLog->LogEvents(m_hDbEventFirst, -1, 0);
+ StreamEvents(m_hDbEventFirst, -1, 0);
}
/////////////////////////////////////////////////////////////////////////////////////////
@@ -1228,7 +1228,7 @@ void CMsgDialog::ReplayQueue()
{
for (int i = 0; i < m_iNextQueuedEvent; i++)
if (m_hQueuedEvents[i] != 0)
- m_pLog->LogEvents(m_hQueuedEvents[i], 1, 1);
+ StreamEvents(m_hQueuedEvents[i], 1, 1);
m_iNextQueuedEvent = 0;
SetDlgItemText(m_hwnd, IDC_LOGFROZENTEXT, m_bNotOnList ? TranslateT("Contact not on list. You may add it...") :
@@ -1696,6 +1696,19 @@ void CMsgDialog::SplitterMoved(int coord, HWND hwnd)
/////////////////////////////////////////////////////////////////////////////////////////
+void CMsgDialog::StreamEvents(MEVENT hDbEventFirst, int count, bool bAppend)
+{
+ m_pLog->LogEvents(hDbEventFirst, count, bAppend);
+
+ DM_ScrollToBottom(0, 0);
+ if (bAppend && hDbEventFirst)
+ m_hDbEventLast = hDbEventFirst;
+ else
+ m_hDbEventLast = db_event_last(m_hContact);
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
bool CMsgDialog::TabAutoComplete()
{
LRESULT lResult = m_message.SendMsg(EM_GETSEL, 0, 0);