From 30a9e9e370aa9aff9f64158aa0942b471621a7ef Mon Sep 17 00:00:00 2001 From: George Hazan Date: Mon, 26 Sep 2022 18:23:52 +0300 Subject: Utils_ClipboardCopy - system-wide helper for writing text to clipboard --- protocols/Tox/src/tox_options.cpp | 12 +----------- protocols/Tox/src/tox_profile.cpp | 11 +---------- 2 files changed, 2 insertions(+), 21 deletions(-) (limited to 'protocols/Tox') diff --git a/protocols/Tox/src/tox_options.cpp b/protocols/Tox/src/tox_options.cpp index 1c3a463a6f..5bd7044b1d 100644 --- a/protocols/Tox/src/tox_options.cpp +++ b/protocols/Tox/src/tox_options.cpp @@ -102,17 +102,7 @@ void CToxOptionsMain::EnableUdp_OnClick(CCtrlBase*) void CToxOptionsMain::ToxAddressCopy_OnClick(CCtrlButton*) { - char *toxAddress = m_toxAddress.GetTextA(); - size_t toxAddressLength = mir_strlen(toxAddress) + 1; - if (OpenClipboard(m_toxAddress.GetHwnd())) { - EmptyClipboard(); - HGLOBAL hMemory = GlobalAlloc(GMEM_FIXED, toxAddressLength); - memcpy(GlobalLock(hMemory), toxAddress, toxAddressLength); - GlobalUnlock(hMemory); - SetClipboardData(CF_TEXT, hMemory); - CloseClipboard(); - } - mir_free(toxAddress); + Utils_ClipboardCopy(ptrW(m_toxAddress.GetText())); } void CToxOptionsMain::ProfileCreate_OnClick(CCtrlButton*) diff --git a/protocols/Tox/src/tox_profile.cpp b/protocols/Tox/src/tox_profile.cpp index d414f75a8d..d6b53fb0e9 100644 --- a/protocols/Tox/src/tox_profile.cpp +++ b/protocols/Tox/src/tox_profile.cpp @@ -186,16 +186,7 @@ void CToxProto::OnErase() INT_PTR CToxProto::OnCopyToxID(WPARAM, LPARAM) { - ptrA address(getStringA(TOX_SETTINGS_ID)); - size_t length = mir_strlen(address) + 1; - if (OpenClipboard(nullptr)) { - EmptyClipboard(); - HGLOBAL hMemory = GlobalAlloc(GMEM_FIXED, length); - memcpy(GlobalLock(hMemory), address, length); - GlobalUnlock(hMemory); - SetClipboardData(CF_TEXT, hMemory); - CloseClipboard(); - } + Utils_ClipboardCopy(ptrW(getWStringA(TOX_SETTINGS_ID))); return 0; } -- cgit v1.2.3