bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#19925: 25.0.50; mouseover menu items takes up to 30sec to show the p


From: Jan D.
Subject: bug#19925: 25.0.50; mouseover menu items takes up to 30sec to show the proper tooltip or message
Date: Mon, 23 Feb 2015 06:17:30 +0100

Hi.

> 23 feb 2015 kl. 04:42 skrev Eli Zaretskii <eliz@gnu.org>:
> 
>> Date: Sun, 22 Feb 2015 14:54:44 -0800 (PST)
>> From: Drew Adams <drew.adams@oracle.com>
>> 
>> Moving the mouse over menu items, a user should see the associated
>> :help pretty much immediately - at most after a delay of a second or
>> two.
>> 
>> Instead, sometimes the help text is shown immediately, sometimes it is
>> shown only after, say, 30 seconds, and sometimes after any number of
>> seconds less than, say, 30.  I'm not sure, but I think the problem might
>> be somewhat more pronounced for items on a submenu or a subsubmenu.
>> 
>> The same problem occurs, regardless of whether tooltip mode is on.  That
>> is, it happens whether the mouseover text is shown in a tooltip or in
>> the echo area.
>> 
>> This bug renders mouseover help on menu items useless, and it makes
>> Emacs look pretty bad.
>> 
>> Worse: because the help text for a previously mouseovered menu item
>> remains displayed, a user can read it mistakenly as the help for the
>> item the mouse is currently over.  That is, the text is not removed when
>> you move mouse away from a given item, just as it is not updated when
>> you move mouse to another item.  The help display is, well, the
>> opposite of helpful.
> 
> AFAICS, that's because the cursor stops blinking after 10 blinks.
> Make it blink forever, and the problem is gone.
> 
> There's nothing that can be done here to fix this.  Tooltips for w32
> menu items need input events to pop up, because when a menu is shown,
> Emacs doesn't have control, and waits for the menu to pop down.

It sounds strange to tie tooltips to the blink cursor.  This is how it is done 
for X and NS:

On mousover, check if tooltip timer has been started, if not start it.
If mouse moves outside area for tooltip, cancel timer, or if it moves into 
another area, cancel timer and start a new one.
When timer fires, inject an event to show tooltip.

I this not how it is done on w32?  If not, why not?
I know enough about w32 to know that this is doable.

        Jan D.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]