From a1728bef4efb06742b792f9f5b4aab48d1d7bb48 Mon Sep 17 00:00:00 2001 From: Sergey Bolhovskoy Date: Fri, 18 Mar 2016 08:39:23 +0000 Subject: =?UTF-8?q?VKontakte:=20add=20=E2=80=98Open=20in=20browser?= =?UTF-8?q?=E2=80=99=20button=20to=20captcha=20form=20add=20hidden=20optio?= =?UTF-8?q?n=20=E2=80=98AlwaysOpenCaptchaInBrowser=E2=80=99=20(BYTE)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://svn.miranda-ng.org/main/trunk@16495 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- protocols/VKontakte/src/vk_captcha.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'protocols/VKontakte/src/vk_captcha.cpp') diff --git a/protocols/VKontakte/src/vk_captcha.cpp b/protocols/VKontakte/src/vk_captcha.cpp index f3b6137082..9e7913443d 100644 --- a/protocols/VKontakte/src/vk_captcha.cpp +++ b/protocols/VKontakte/src/vk_captcha.cpp @@ -26,6 +26,7 @@ struct CAPTCHA_FORM_PARAMS HBITMAP bmp; int w,h; char Result[100]; + CVkProto* proto; }; static INT_PTR CALLBACK CaptchaFormDlgProc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) @@ -70,6 +71,9 @@ static INT_PTR CALLBACK CaptchaFormDlgProc(HWND hwndDlg, UINT msg, WPARAM wParam DeleteDC(hdcMem); EndPaint(hwndDlg, &ps); + + if (params->proto->getBool("AlwaysOpenCaptchaInBrowser", false)) + params->proto->ShowCaptchaInBrowser(params->bmp); } break; @@ -78,6 +82,10 @@ static INT_PTR CALLBACK CaptchaFormDlgProc(HWND hwndDlg, UINT msg, WPARAM wParam case IDCANCEL: EndDialog(hwndDlg, 0); return TRUE; + + case IDOPENBROWSER: + params->proto->ShowCaptchaInBrowser(params->bmp); + break; case IDOK: GetDlgItemTextA(hwndDlg, IDC_VALUE, params->Result, _countof(params->Result)); @@ -125,10 +133,11 @@ bool CVkProto::RunCaptchaForm(LPCSTR szUrl, CMStringA &result) memio.fif = FIF_UNKNOWN; /* detect */ param.bmp = (HBITMAP)CallService(MS_IMG_LOADFROMMEM, (WPARAM)&memio); - BITMAP bmp = {0}; + BITMAP bmp = { 0 }; GetObject(param.bmp, sizeof(bmp), &bmp); param.w = bmp.bmWidth; param.h = bmp.bmHeight; + param.proto = this; int res = DialogBoxParam(hInst, MAKEINTRESOURCE(IDD_CAPTCHAFORM), NULL, CaptchaFormDlgProc, (LPARAM)¶m); if (res == 0) return false; -- cgit v1.2.3