From afa6a68cca2865a4d974143dc1a289e4f83a5e1c Mon Sep 17 00:00:00 2001 From: George Hazan Date: Sun, 16 Aug 2020 14:54:26 +0300 Subject: SmileyAdd: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - major update for custom smileys APIs (cause we have no MSN, there's no need to save MCONTACT for custom smileys); - added path type = 2 to download whole folder for custom smileys; - fixes #2524 (ICQ: стикеры должны приходить как custom smileys, а не как передачи файлов); - fixes #2533 (SmileyAdd не всегда распознаёт стикеры); - fixes #2532 (Полученные стикеры пропадают при переоткрытии окна); - version bump --- protocols/VKontakte/src/misc.cpp | 16 ++++------------ protocols/VKontakte/src/vk_proto.cpp | 18 ++---------------- 2 files changed, 6 insertions(+), 28 deletions(-) (limited to 'protocols/VKontakte') diff --git a/protocols/VKontakte/src/misc.cpp b/protocols/VKontakte/src/misc.cpp index c657d8ecd6..963916354c 100644 --- a/protocols/VKontakte/src/misc.cpp +++ b/protocols/VKontakte/src/misc.cpp @@ -1318,25 +1318,17 @@ CMStringW CVkProto::GetAttachmentDescr(const JSONNode &jnAttachments, BBCSupport fclose(out); } } - else - bSuccess = true; - + else bSuccess = true; if (bSuccess) { res.AppendFormat(L"[sticker-%d]", iStickerId); - SMADD_CONT cont; - cont.cbSize = sizeof(SMADD_CONT); - cont.hContact = 0; - cont.type = 1; - cont.path = wszFileName.GetBuffer(); - CallService(MS_SMILEYADD_LOADCONTACTSMILEYS, 0, (LPARAM)&cont); + SMADD_CONT cont = { 1, m_szModuleName, wszFileName }; + CallService(MS_SMILEYADD_LOADCONTACTSMILEYS, 0, LPARAM(&cont)); } - else - res += SetBBCString(TranslateT("Sticker"), iBBC, vkbbcUrl, wszUrl); + else res += SetBBCString(TranslateT("Sticker"), iBBC, vkbbcUrl, wszUrl); } } - } else if (wszType == L"link") { const JSONNode& jnLink = jnAttach["link"]; diff --git a/protocols/VKontakte/src/vk_proto.cpp b/protocols/VKontakte/src/vk_proto.cpp index adced3d770..fb42fad083 100644 --- a/protocols/VKontakte/src/vk_proto.cpp +++ b/protocols/VKontakte/src/vk_proto.cpp @@ -126,22 +126,8 @@ void CVkProto::InitSmileys() return; CMStringW wszPath(FORMAT, L"%s\\%S\\Stickers\\*.png", VARSW(L"%miranda_avatarcache%").get(), m_szModuleName); - - WIN32_FIND_DATAW findData; - HANDLE hFind = FindFirstFileW(wszPath, &findData); - if (hFind != INVALID_HANDLE_VALUE) { - wszPath.Truncate(wszPath.GetLength() - 5); - do { - CMStringW wszFileName = wszPath + findData.cFileName; - - SMADD_CONT cont; - cont.cbSize = sizeof(SMADD_CONT); - cont.hContact = 0; - cont.type = 1; - cont.path = wszFileName.GetBuffer(); - CallService(MS_SMILEYADD_LOADCONTACTSMILEYS, 0, (LPARAM)&cont); - } while (FindNextFileW(hFind, &findData)); - } + SMADD_CONT cont = { 2, m_szModuleName, wszPath }; + CallService(MS_SMILEYADD_LOADCONTACTSMILEYS, 0, LPARAM(&cont)); } // Menu support -- cgit v1.2.3