From: Richard M. Stallman Date: Sun, 1 May 1994 07:33:39 +0000 (+0000) Subject: (Ftrack_mouse): Call prepare_menu_bars at the start. X-Git-Tag: emacs-19.34~8607 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=3f9929bf5cc71a27e2817f8abb51d171f9b0ddae;p=emacs.git (Ftrack_mouse): Call prepare_menu_bars at the start. (read_char): Don't call prepare_menu_bars if doing mouse tracking. --- diff --git a/src/keyboard.c b/src/keyboard.c index 1532141c45f..4e26c8558b6 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -1453,7 +1453,11 @@ read_char (commandflag, nmaps, maps, prev_event, used_mouse_menu) goto reread_first; } - if (commandflag >= 0 && !input_pending && !detect_input_pending ()) + /* Don't bother updating menu bars while doing mouse tracking. + We get events very rapidly then, and the menu bar won't be changing. + We do update the menu bar once on entry to Ftrack_mouse. */ + if (!do_mouse_tracking && + commandflag >= 0 && !input_pending && !detect_input_pending ()) prepare_menu_bars (); /* Save outer setjmp data, in case called recursively. */ @@ -1796,6 +1800,9 @@ Normally, mouse motion is ignored.") XSET (val, Lisp_Int, do_mouse_tracking); record_unwind_protect (tracking_off, val); + if (!input_pending && !detect_input_pending ()) + prepare_menu_bars (); + do_mouse_tracking = 1; val = Fprogn (args);