0
0
mirror of https://github.com/vim/vim.git synced 2025-07-26 11:04:33 -04:00

updated for version 7.2.362

Problem:    Win64: Vim doesn't work when cross-compiled with MingW libraries.
Solution:   Instead of handling WM_NCCREATE, create wide text area window
            class if the parent window iw side. (Sergey Khorev)
This commit is contained in:
Bram Moolenaar 2010-02-17 16:31:32 +01:00
parent 165641da25
commit 33d0b69ab8
3 changed files with 25 additions and 7 deletions

View File

@ -1329,6 +1329,7 @@ gui_mch_init(void)
WNDCLASS wndclass;
#ifdef FEAT_MBYTE
const WCHAR szVimWndClassW[] = VIM_CLASSW;
const WCHAR szTextAreaClassW[] = L"VimTextArea";
WNDCLASSW wndclassw;
#endif
#ifdef GLOBAL_IME
@ -1479,6 +1480,28 @@ gui_mch_init(void)
#endif
/* Create the text area window */
#ifdef FEAT_MBYTE
if (wide_WindowProc)
{
if (GetClassInfoW(s_hinst, szTextAreaClassW, &wndclassw) == 0)
{
wndclassw.style = CS_OWNDC;
wndclassw.lpfnWndProc = _TextAreaWndProc;
wndclassw.cbClsExtra = 0;
wndclassw.cbWndExtra = 0;
wndclassw.hInstance = s_hinst;
wndclassw.hIcon = NULL;
wndclassw.hCursor = LoadCursor(NULL, IDC_ARROW);
wndclassw.hbrBackground = NULL;
wndclassw.lpszMenuName = NULL;
wndclassw.lpszClassName = szTextAreaClassW;
if (RegisterClassW(&wndclassw) == 0)
return FAIL;
}
}
else
#endif
if (GetClassInfo(s_hinst, szTextAreaClass, &wndclass) == 0)
{
wndclass.style = CS_OWNDC;

View File

@ -1084,13 +1084,6 @@ _TextAreaWndProc(
case WM_NOTIFY: Handle_WM_Notify(hwnd, (LPNMHDR)lParam);
return TRUE;
#endif
/* Workaround for the problem that MyWindowProc() returns FALSE on 64
* bit windows when cross-compiled using Mingw libraries. (Andy
* Kittner) */
case WM_NCCREATE:
MyWindowProc(hwnd, uMsg, wParam, lParam);
return TRUE;
default:
return MyWindowProc(hwnd, uMsg, wParam, lParam);
}

View File

@ -681,6 +681,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
362,
/**/
361,
/**/