# HG changeset patch # User Richard M. Stallman # Date 767777619 0 # Node ID 7f6b5e9ba2c75c3ad9090d35063c18e869856319 # Parent 00ece23611e178c0ed29d13bd3d691630e48f10e (Ftrack_mouse): Call prepare_menu_bars at the start. (read_char): Don't call prepare_menu_bars if doing mouse tracking. diff -r 00ece23611e1 -r 7f6b5e9ba2c7 src/keyboard.c --- a/src/keyboard.c Sun May 01 06:43:34 1994 +0000 +++ b/src/keyboard.c Sun May 01 07:33:39 1994 +0000 @@ -1453,7 +1453,11 @@ 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 @@ 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);