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

updated for version 7.3.382

Problem:    IME characters are inserted twice.
Solution:   Do not call DefWindowProc() if the event was handled. (Yasuhiro
            Matsumoto)
This commit is contained in:
Bram Moolenaar 2011-12-15 21:51:36 +01:00
parent f1568eca24
commit 213ae48854
2 changed files with 19 additions and 6 deletions

View File

@ -798,7 +798,7 @@ _WndProc(
if (pt.y < rect.top) if (pt.y < rect.top)
{ {
show_tabline_popup_menu(); show_tabline_popup_menu();
return 0; return 0L;
} }
} }
return MyWindowProc(hwnd, uMsg, wParam, lParam); return MyWindowProc(hwnd, uMsg, wParam, lParam);
@ -828,7 +828,10 @@ _WndProc(
case WM_ENDSESSION: case WM_ENDSESSION:
if (wParam) /* system only really goes down when wParam is TRUE */ if (wParam) /* system only really goes down when wParam is TRUE */
{
_OnEndSession(); _OnEndSession();
return 0L;
}
break; break;
case WM_CHAR: case WM_CHAR:
@ -866,7 +869,7 @@ _WndProc(
* are received, mouse pointer remains hidden. */ * are received, mouse pointer remains hidden. */
return MyWindowProc(hwnd, uMsg, wParam, lParam); return MyWindowProc(hwnd, uMsg, wParam, lParam);
#else #else
return 0; return 0L;
#endif #endif
case WM_SIZING: /* HANDLE_MSG doesn't seem to handle this one */ case WM_SIZING: /* HANDLE_MSG doesn't seem to handle this one */
@ -874,7 +877,7 @@ _WndProc(
case WM_MOUSEWHEEL: case WM_MOUSEWHEEL:
_OnMouseWheel(hwnd, HIWORD(wParam)); _OnMouseWheel(hwnd, HIWORD(wParam));
break; return 0L;
/* Notification for change in SystemParametersInfo() */ /* Notification for change in SystemParametersInfo() */
case WM_SETTINGCHANGE: case WM_SETTINGCHANGE:
@ -987,13 +990,19 @@ _WndProc(
case TCN_SELCHANGE: case TCN_SELCHANGE:
if (gui_mch_showing_tabline() if (gui_mch_showing_tabline()
&& ((LPNMHDR)lParam)->hwndFrom == s_tabhwnd) && ((LPNMHDR)lParam)->hwndFrom == s_tabhwnd)
{
send_tabline_event(TabCtrl_GetCurSel(s_tabhwnd) + 1); send_tabline_event(TabCtrl_GetCurSel(s_tabhwnd) + 1);
return 0L;
}
break; break;
case NM_RCLICK: case NM_RCLICK:
if (gui_mch_showing_tabline() if (gui_mch_showing_tabline()
&& ((LPNMHDR)lParam)->hwndFrom == s_tabhwnd) && ((LPNMHDR)lParam)->hwndFrom == s_tabhwnd)
{
show_tabline_popup_menu(); show_tabline_popup_menu();
return 0L;
}
break; break;
# endif # endif
default: default:
@ -1037,6 +1046,7 @@ _WndProc(
out_flush(); out_flush();
did_menu_tip = TRUE; did_menu_tip = TRUE;
} }
return 0L;
} }
break; break;
#endif #endif
@ -1079,18 +1089,19 @@ _WndProc(
case WM_IME_NOTIFY: case WM_IME_NOTIFY:
if (!_OnImeNotify(hwnd, (DWORD)wParam, (DWORD)lParam)) if (!_OnImeNotify(hwnd, (DWORD)wParam, (DWORD)lParam))
return MyWindowProc(hwnd, uMsg, wParam, lParam); return MyWindowProc(hwnd, uMsg, wParam, lParam);
break; return 1L;
case WM_IME_COMPOSITION: case WM_IME_COMPOSITION:
if (!_OnImeComposition(hwnd, wParam, lParam)) if (!_OnImeComposition(hwnd, wParam, lParam))
return MyWindowProc(hwnd, uMsg, wParam, lParam); return MyWindowProc(hwnd, uMsg, wParam, lParam);
break; return 1L;
#endif #endif
default: default:
if (uMsg == msh_msgmousewheel && msh_msgmousewheel != 0) if (uMsg == msh_msgmousewheel && msh_msgmousewheel != 0)
{ /* handle MSH_MOUSEWHEEL messages for Intellimouse */ { /* handle MSH_MOUSEWHEEL messages for Intellimouse */
_OnMouseWheel(hwnd, HIWORD(wParam)); _OnMouseWheel(hwnd, HIWORD(wParam));
break; return 0L;
} }
#ifdef MSWIN_FIND_REPLACE #ifdef MSWIN_FIND_REPLACE
else if (uMsg == s_findrep_msg && s_findrep_msg != 0) else if (uMsg == s_findrep_msg && s_findrep_msg != 0)

View File

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