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