diff src/w32fns.c @ 90381:65ca8fb66a0d

Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-54 Merge from emacs--devo--0 Patches applied: * emacs--devo--0 (patch 190-203) - Update from CVS - Undo incorrect merge of etc/images/README from Gnus 5.10 - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 74-80) - Update from CVS - Update from CVS: README: Addition from 5.10.6 tar ball.
author Miles Bader <miles@gnu.org>
date Sun, 09 Apr 2006 00:38:22 +0000
parents e3bacb89536a a3c24f2249c9
children 2ecafc6d5db7
line wrap: on
line diff
--- a/src/w32fns.c	Fri Apr 07 12:02:40 2006 +0000
+++ b/src/w32fns.c	Sun Apr 09 00:38:22 2006 +0000
@@ -3298,6 +3298,14 @@
       return (msg == WM_XBUTTONDOWN || msg == WM_XBUTTONUP);
 
     case WM_MOUSEMOVE:
+      /* Ignore mouse movements as long as the menu is active.  These
+	 movements are processed by the window manager anyway, and
+	 it's wrong to handle them as if they happened on the
+	 underlying frame.  */
+      f = x_window_to_frame (dpyinfo, hwnd);
+      if (f && f->output_data.w32->menubar_active)
+	return 0;
+
       /* If the mouse has just moved into the frame, start tracking
 	 it, so we will be notified when it leaves the frame.  Mouse
 	 tracking only works under W98 and NT4 and later. On earlier
@@ -7730,9 +7738,12 @@
     AdjustWindowRect (&rect, f->output_data.w32->dwStyle,
 		      FRAME_EXTERNAL_MENU_BAR (f));
 
-    /* Position and size tooltip, and put it in the topmost group.  */
+    /* Position and size tooltip, and put it in the topmost group.
+       The add-on of 3 to the 5th argument is a kludge: without it,
+       some fonts cause the last character of the tip to be truncated,
+       for some obscure reason.  */
     SetWindowPos (FRAME_W32_WINDOW (f), HWND_TOPMOST,
-		  root_x, root_y, rect.right - rect.left,
+		  root_x, root_y, rect.right - rect.left + 3,
 		  rect.bottom - rect.top, SWP_NOACTIVATE);
 
     /* Ensure tooltip is on top of other topmost windows (eg menus).  */