emacs-devel
[Top][All Lists]
Advanced

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

Re: toolbars


From: Gerd Moellmann
Subject: Re: toolbars
Date: Mon, 18 Sep 2000 15:22:57 +0200 (CEST)
User-agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/21.0.90

Miles Bader <address@hidden> writes:

> The problem is that
> image caches are shared between frames, but the code in
> clear_image_cache only invalidates the caller's frame; I fixed it by
> simply not clearing images in caches that are shared, but perhaps image
> caches should have a list of referencing frames, so they can properly
> invalidate things.  [the bug shows up when you wait for tooltips to pop
> up on toolbar buttons]

Thanks Miles.

I've fixed this so that current matrices on all frames sharing a cache
are invalidated (using the refcount would mean that images were never
freed if more than 1 frame exists on a display.)
> 
> There are a couple of other points:
> 
>   1) What is wierd narrow region at the bottom of the toolbar, separated
>      from the main toolbar by a line?

This is kind of a consequence of Emacs still being column/line-based.
Frame and window sizes must be multiples of the frame font's
width/height.  The tool bar is an Emacs window, and the ``separator''
is actually the partially visible next tool bar line.

>   2) If you change the color of the toolbar (e.g, with set-face-background)
>      some of the icons show up in little grey boxes, instead of with
>      properly invisible backgrounds.

I think I've fixed this, now.

>   3) Along the same lines as my hack to clear_image_cache, in my local
>      copy, for the benefit of face background images, I added a call
> 
>        clear_face_cache (0); /* An image may have been a face tile.  */
> 
>      because faces now can reference images.  This seems slightly
>      sub-optimal, so if you change the way image cache flushing is done,
>      could you keep this in mind?

I'm not sure what has to be done, but maybe a call
`free_realized_faces (frame)' is sufficient?


reply via email to

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