diff options
author | George Hazan <george.hazan@gmail.com> | 2024-01-31 19:38:52 +0300 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2024-01-31 19:38:52 +0300 |
commit | cde9a132ca3c62d8f5d9692a93d6d59499ac455e (patch) | |
tree | 350fe67efd6483bb1aa1966063789928d26fc061 /protocols/ICQ-WIM/src/proto.cpp | |
parent | a5b576429205ffa3c9397614ea31363b31944e79 (diff) |
ICQ: support for Delete for everyone mode
Diffstat (limited to 'protocols/ICQ-WIM/src/proto.cpp')
-rw-r--r-- | protocols/ICQ-WIM/src/proto.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/protocols/ICQ-WIM/src/proto.cpp b/protocols/ICQ-WIM/src/proto.cpp index 2dd9d96610..9978c83ed6 100644 --- a/protocols/ICQ-WIM/src/proto.cpp +++ b/protocols/ICQ-WIM/src/proto.cpp @@ -221,7 +221,7 @@ void CIcqProto::BatchDeleteMsg() mir_free(it);
}
- pReq->params << WCHAR_PARAM("sn", GetUserId(m_hDeleteContact)) << BOOL_PARAM("shared", true) << ids;
+ pReq->params << WCHAR_PARAM("sn", GetUserId(m_hDeleteContact)) << BOOL_PARAM("silent", true) << BOOL_PARAM("shared", m_bRemoveForAll) << ids;
Push(pReq);
m_arDeleteQueue.destroy();
@@ -243,6 +243,7 @@ void CIcqProto::OnEventDeleted(MCONTACT hContact, MEVENT hEvent, int flags) mir_cslock lck(m_csDeleteQueue);
m_hDeleteContact = hContact;
+ m_bRemoveForAll = (flags & CDF_FOR_EVERYONE) != 0;
m_arDeleteQueue.insert(mir_strdup(dbei.szId));
m_impl.m_delete.Start(100);
}
@@ -514,8 +515,8 @@ INT_PTR CIcqProto::GetCaps(int type, MCONTACT) return PF2_SHORTAWAY | PF2_LONGAWAY | PF2_LIGHTDND | PF2_HEAVYDND;
case PFLAGNUM_4:
- nReturn = PF4_FORCEAUTH | PF4_SUPPORTIDLE | PF4_OFFLINEFILES | PF4_IMSENDOFFLINE | PF4_SUPPORTTYPING |
- PF4_AVATARS | PF4_SERVERMSGID | PF4_READNOTIFY | PF4_REPLY;
+ nReturn = PF4_FORCEAUTH | PF4_SUPPORTIDLE | PF4_OFFLINEFILES | PF4_IMSENDOFFLINE | PF4_SUPPORTTYPING |
+ PF4_AVATARS | PF4_SERVERMSGID | PF4_READNOTIFY | PF4_REPLY | PF4_DELETEFORALL;
break;
case PFLAG_UNIQUEIDTEXT:
|