diff options
author | George Hazan <george.hazan@gmail.com> | 2025-03-21 14:31:09 +0300 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2025-03-21 14:31:09 +0300 |
commit | 2d2fa8dd248ba2e3e22f13533fef4c69bfbc3c2b (patch) | |
tree | 578bccc1bde93f02704e0147b3966391809160a4 /src | |
parent | 0afefd8efd13f9cc88baf8baef7c445329d68091 (diff) |
fixes #4863 (NewStory: отправленные файлы по-разному показываются в табсах и в истории)
Diffstat (limited to 'src')
-rw-r--r-- | src/core/stdmsg/src/msgs.cpp | 6 | ||||
-rw-r--r-- | src/mir_app/src/filexferdlg.cpp | 2 | ||||
-rw-r--r-- | src/mir_app/src/srmm_base.cpp | 6 |
3 files changed, 8 insertions, 6 deletions
diff --git a/src/core/stdmsg/src/msgs.cpp b/src/core/stdmsg/src/msgs.cpp index 6bbf995d52..6e7e0f2ceb 100644 --- a/src/core/stdmsg/src/msgs.cpp +++ b/src/core/stdmsg/src/msgs.cpp @@ -277,7 +277,7 @@ struct MSavedEvent static void RestoreUnreadMessageAlerts(void)
{
- OBJLIST<MSavedEvent> arEvents(10, NumericKeySortT);
+ OBJLIST<MSavedEvent> events(10, NumericKeySortT);
for (auto &hContact : Contacts()) {
if (Contact::IsGroupChat(hContact) || !Proto_GetBaseAccountName(hContact))
@@ -305,12 +305,12 @@ static void RestoreUnreadMessageAlerts(void) if (autoPopup && !windowAlreadyExists)
GetContainer()->AddPage(hContact);
else
- arEvents.insert(new MSavedEvent(hContact, hDbEvent));
+ events.insert(new MSavedEvent(hContact, hDbEvent));
}
}
}
- for (auto &e : arEvents)
+ for (auto &e : events)
Srmm_AddEvent(e->hContact, e->hEvent);
}
diff --git a/src/mir_app/src/filexferdlg.cpp b/src/mir_app/src/filexferdlg.cpp index d946f4c65f..1abb90673d 100644 --- a/src/mir_app/src/filexferdlg.cpp +++ b/src/mir_app/src/filexferdlg.cpp @@ -595,7 +595,7 @@ INT_PTR CALLBACK DlgProcFileTransfer(HWND hwndDlg, UINT msg, WPARAM wParam, LPAR DB::EventInfo dbei; dbei.szModule = Proto_GetBaseAccountName(dat->hContact); dbei.eventType = EVENTTYPE_FILE; - dbei.flags = DBEF_SENT | DBEF_UTF; + dbei.flags = DBEF_SENT | DBEF_READ | DBEF_UTF; dbei.iTimestamp = time(0); DB::FILE_BLOB blob(dat->szFilenames, dat->szMsg); diff --git a/src/mir_app/src/srmm_base.cpp b/src/mir_app/src/srmm_base.cpp index 734428756f..fa4f27ce57 100644 --- a/src/mir_app/src/srmm_base.cpp +++ b/src/mir_app/src/srmm_base.cpp @@ -841,7 +841,7 @@ void CSrmmBaseDialog::UpdateChatLog() auto *szProto = Proto_GetBaseAccountName(m_hContact);
for (MEVENT hDbEvent = m_hDbEventFirst; hDbEvent; hDbEvent = db_event_next(m_hContact, hDbEvent)) {
DB::EventInfo dbei(hDbEvent);
- if (dbei && !mir_strcmp(szProto, dbei.szModule) && g_chatApi.DbEventIsShown(dbei) && dbei.szUserId) {
+ if (dbei && !mir_strcmp(szProto, dbei.szModule) && g_chatApi.DbEventIsShown(dbei)) {
if (iHistoryMode == LOADHISTORY_UNREAD && dbei.bRead)
continue;
@@ -855,7 +855,9 @@ void CSrmmBaseDialog::UpdateChatLog() gce.time = dbei.getUnixtime();
gce.hEvent = hDbEvent;
- if (USERINFO *ui = g_chatApi.UM_FindUser(m_si, wszUserId))
+ if (dbei.szUserId == nullptr)
+ gce.bIsMe = true;
+ else if (USERINFO *ui = g_chatApi.UM_FindUser(m_si, wszUserId))
gce.pszNick.w = ui->pszNick;
else
gce.pszNick.w = wszUserId;
|