|
From: | Jan Djärv |
Subject: | Re: GTK build: some menus in the menu bar stay highlighted |
Date: | Mon, 23 Apr 2007 22:09:36 +0200 |
User-agent: | Thunderbird 1.5.0.10 (X11/20070302) |
Stephen Berman skrev:
On Sun, 22 Apr 2007 20:36:31 +0200 Jan Djärv <address@hidden> wrote:The GNUS menus are defined with easy-menu, thats about all I can think of that differs from "regular" menus. Can you define a small menu with easy.menu and see if the problem is there then?It turns out the problem is not confined to easymenu: I made the following file, ,----[ srb-km.el ] | (define-key global-map [menu-bar SRB] | (cons "SRB" (make-sparse-keymap "SRB"))) `---- and then did this: emacs -Q -l srb-km.el which brings up the *scratch* buffer with a menu bar whose first menu is labelled `SRB'. When I move the mouse over this menu bar, menu label SRB, and only this menu label, gets sticky highlighting (again, only with the GTK Style QtCurve under KDE).
When Emacs updates the menu bar, it usually just puts empty menus behind the menu bar entries. This is to avoid updating the whole menu tree every time we just change buffer. When we click on the menu bar, Emacs does update the whole menu tree (i.e. updates deep).
It seems that QtCurve can not handle non-deep menu bar entries. If I click on the SRB menu entry in your example, thus forcing a deep update, the highlight problem goes away.
When Emacs creates the menu bar for the first time, it does so deep, so the error is not seen for the standard Emacs menu bar entries.
A special handling is for Gtk+ detached menus. If there is a detached menu, Emacs always updates deep, since the detached menu could possibly change.
So we can se this bug easy. C-h i The Info menu now has the sticky highlight.But if you kill that buffer, detach the File menu, and then to C-h i again. the sticky highlightning is gone.
I'd say this is a bug in QtCurve. I can not find a way to undo that effect from within Emacs. Apart from the obvious, always update menus deep. But I don't think we want to do that just for one theme. Not that I think it would break anything, it would just make menu bar updating a bit slower.
Jan D.
[Prev in Thread] | Current Thread | [Next in Thread] |