Commit 18178922 authored by Eli Zaretskii's avatar Eli Zaretskii
Browse files

Avoid erratic behavior of menu-bar tooltips on w32 (Bug#19925)

 src/w32fns.c (Fw32__menu_bar_in_use): New internal function.

 lisp/frame.el (blink-cursor-timer-function): Don't increment
 blink-cursor-blinks-done counter when a menu is active on a w32
 frame.
parent 02609324
2015-02-23 Eli Zaretskii <eliz@gnu.org>
* frame.el (blink-cursor-timer-function): Don't increment
blink-cursor-blinks-done counter when a menu is active on a w32
frame. (Bug#19925)
2015-02-19 Juri Linkov <juri@linkov.net>
 
* comint.el (comint-line-beginning-position): Revert searching for
......
......@@ -1798,8 +1798,12 @@ command starts, by installing a pre-command hook."
(defun blink-cursor-timer-function ()
"Timer function of timer `blink-cursor-timer'."
(internal-show-cursor nil (not (internal-show-cursor-p)))
;; Suspend counting blinks when the w32 menu-bar menu is displayed,
;; since otherwise menu tooltips will behave erratically.
(or (and (fboundp 'w32--menu-bar-in-use)
(w32--menu-bar-in-use))
(setq blink-cursor-blinks-done (1+ blink-cursor-blinks-done)))
;; Each blink is two calls to this function.
(setq blink-cursor-blinks-done (1+ blink-cursor-blinks-done))
(when (and (> blink-cursor-blinks 0)
(<= (* 2 blink-cursor-blinks) blink-cursor-blinks-done))
(blink-cursor-suspend)
......
2015-02-23 Eli Zaretskii <eliz@gnu.org>
* w32fns.c (Fw32__menu_bar_in_use): New internal function.
(Bug#19925)
2015-02-20 Glenn Morris <rgm@gnu.org>
* fileio.c (Fmake_temp_name): Doc tweaks. (Bug#19858)
......
......@@ -8063,6 +8063,15 @@ w32_sys_ring_bell (struct frame *f)
MessageBeep (sound_type);
}
DEFUN ("w32--menu-bar-in-use", Fw32__menu_bar_in_use, Sw32__menu_bar_in_use,
0, 0, 0,
doc: /* Return non-nil when a menu-bar menu is being used.
Internal use only. */)
(void)
{
return menubar_in_use ? Qt : Qnil;
}
/***********************************************************************
Initialization
......@@ -8439,6 +8448,7 @@ only be necessary if the default setting causes problems. */);
defsubr (&Sw32_window_exists_p);
defsubr (&Sw32_frame_rect);
defsubr (&Sw32_battery_status);
defsubr (&Sw32__menu_bar_in_use);
#ifdef WINDOWSNT
defsubr (&Sfile_system_info);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment