emacs-devel
[Top][All Lists]
Advanced

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

Re: NeXTStep port: slowness, etc.


From: Adrian Robert
Subject: Re: NeXTStep port: slowness, etc.
Date: Wed, 16 Jul 2008 12:29:20 +0000 (UTC)
User-agent: Loom/3.14 (http://gmane.org/)

David Reitter <david.reitter <at> gmail.com> writes:

> 
> I'm experiencing a delay of almost one second when accessing on menus,  
> i.e. there is a long lag between clicking on a menu title and the menu  
> actually showing up.  That shouldn't be.

This is due to this change:

2008-07-15  Stefan Monnier  <address@hidden>

        * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
        If the cache doesn't work, let's fix it, rather than work around it.

This is the right thing to do, but it means some significant work
may be needed to recover normal performance.  When I looked into
this, my best guess was that further optimization needed to be
done in the ns menu code.  ns_update_menubar() from line 108 in
nsmenu.m.  I did my best to follow other terms as closely as
possible, and even optimize more than they do, but something is
wrong somewhere.  Also see comment on line 242.  There is some
profiling code that can be enabled.

It could also be that the problem has not to do with nsmenu.m,
but something with the way other code is leading to the calling
of ns_update_menubar().  Either something of the new cache
referred to in keyboard.c is hit differently by the NS port for
some reason, or ns_update_menubar() is called in some different
pattern.

I spent some time on this but could not get any further -- it
might be another pair of eyes can see what I'm missing.


BTW, the "incremental" mouse highlighting you mention has been
there for a while, another thing I could not track down.  Again,
NS handles this identically to other terms as far as I've been
able to tell, but there must be a difference somewhere..







reply via email to

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