To: vim_dev@googlegroups.com Subject: Patch 7.3.382 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 7.3.382 (after 7.3.376) Problem: IME characters are inserted twice. Solution: Do not call DefWindowProc() if the event was handled. (Yasuhiro Matsumoto) Files: src/gui_w32.c *** ../vim-7.3.381/src/gui_w32.c 2011-12-14 15:23:53.000000000 +0100 --- src/gui_w32.c 2011-12-15 21:50:51.000000000 +0100 *************** *** 798,804 **** if (pt.y < rect.top) { show_tabline_popup_menu(); ! return 0; } } return MyWindowProc(hwnd, uMsg, wParam, lParam); --- 798,804 ---- if (pt.y < rect.top) { show_tabline_popup_menu(); ! return 0L; } } return MyWindowProc(hwnd, uMsg, wParam, lParam); *************** *** 828,834 **** --- 828,837 ---- case WM_ENDSESSION: if (wParam) /* system only really goes down when wParam is TRUE */ + { _OnEndSession(); + return 0L; + } break; case WM_CHAR: *************** *** 866,872 **** * are received, mouse pointer remains hidden. */ return MyWindowProc(hwnd, uMsg, wParam, lParam); #else ! return 0; #endif case WM_SIZING: /* HANDLE_MSG doesn't seem to handle this one */ --- 869,875 ---- * are received, mouse pointer remains hidden. */ return MyWindowProc(hwnd, uMsg, wParam, lParam); #else ! return 0L; #endif case WM_SIZING: /* HANDLE_MSG doesn't seem to handle this one */ *************** *** 874,880 **** case WM_MOUSEWHEEL: _OnMouseWheel(hwnd, HIWORD(wParam)); ! break; /* Notification for change in SystemParametersInfo() */ case WM_SETTINGCHANGE: --- 877,883 ---- case WM_MOUSEWHEEL: _OnMouseWheel(hwnd, HIWORD(wParam)); ! return 0L; /* Notification for change in SystemParametersInfo() */ case WM_SETTINGCHANGE: *************** *** 987,999 **** --- 990,1008 ---- case TCN_SELCHANGE: if (gui_mch_showing_tabline() && ((LPNMHDR)lParam)->hwndFrom == s_tabhwnd) + { send_tabline_event(TabCtrl_GetCurSel(s_tabhwnd) + 1); + return 0L; + } break; case NM_RCLICK: if (gui_mch_showing_tabline() && ((LPNMHDR)lParam)->hwndFrom == s_tabhwnd) + { show_tabline_popup_menu(); + return 0L; + } break; # endif default: *************** *** 1037,1042 **** --- 1046,1052 ---- out_flush(); did_menu_tip = TRUE; } + return 0L; } break; #endif *************** *** 1079,1096 **** case WM_IME_NOTIFY: if (!_OnImeNotify(hwnd, (DWORD)wParam, (DWORD)lParam)) return MyWindowProc(hwnd, uMsg, wParam, lParam); ! break; case WM_IME_COMPOSITION: if (!_OnImeComposition(hwnd, wParam, lParam)) return MyWindowProc(hwnd, uMsg, wParam, lParam); ! break; #endif default: if (uMsg == msh_msgmousewheel && msh_msgmousewheel != 0) { /* handle MSH_MOUSEWHEEL messages for Intellimouse */ _OnMouseWheel(hwnd, HIWORD(wParam)); ! break; } #ifdef MSWIN_FIND_REPLACE else if (uMsg == s_findrep_msg && s_findrep_msg != 0) --- 1089,1107 ---- case WM_IME_NOTIFY: if (!_OnImeNotify(hwnd, (DWORD)wParam, (DWORD)lParam)) return MyWindowProc(hwnd, uMsg, wParam, lParam); ! return 1L; ! case WM_IME_COMPOSITION: if (!_OnImeComposition(hwnd, wParam, lParam)) return MyWindowProc(hwnd, uMsg, wParam, lParam); ! return 1L; #endif default: if (uMsg == msh_msgmousewheel && msh_msgmousewheel != 0) { /* handle MSH_MOUSEWHEEL messages for Intellimouse */ _OnMouseWheel(hwnd, HIWORD(wParam)); ! return 0L; } #ifdef MSWIN_FIND_REPLACE else if (uMsg == s_findrep_msg && s_findrep_msg != 0) *** ../vim-7.3.381/src/version.c 2011-12-14 20:51:19.000000000 +0100 --- src/version.c 2011-12-15 21:48:49.000000000 +0100 *************** *** 716,717 **** --- 716,719 ---- { /* Add new patch number below this line */ + /**/ + 382, /**/ -- Even got a Datapoint 3600(?) with a DD50 connector instead of the usual DB25... what a nightmare trying to figure out the pinout for *that* with no spex... /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ an exciting new programming language -- http://www.Zimbu.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///