emacs-devel
[Top][All Lists]
Advanced

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

Re: Emacs GTK scroll-bar flickering


From: Jan D.
Subject: Re: Emacs GTK scroll-bar flickering
Date: Tue, 18 Mar 2003 00:26:42 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3b) Gecko/20030210

Miles Bader wrote:
Hmmm, today's CVS seems _slightly_ better -- at least, cursor movement
doesn't cause flickering.  However, the behavior when the buffer size
(or window configuration, etc) changes is if anything, worse now: it
looks like whenever the scrollbar gets updated (even by a single
character change in the buffer), it's getting completely cleared and
redrawn about 4 or 5 times, with each redraw being very obvious and slow
(this is certainly exacerbated because I'm using a pixmap theme, but
this theme is not a problem with other GTK apps).

Something really seems drastically wrong here, since other GTK apps [I'm
using `gedit' for comparison] have basically no flickering, slowdown, or
obviously excessive redraws when they update the scrollbar.  It seems as
if emacs is somehow completely regenerating the scrollbar whereas other
apps are using some sort of interface that allows incremental updating
or the like.


I made some changes, please try them out.

There are some of the redraws that can't easily be eliminated. GDK (the layer under GTK) does its own event buffering, and releases the events when the GTK event loop is entered and there are no events to process. Since Emacs are not using a pure GTK loop, there might be a very long time before GTK gets a chance to notice this. So Emacs must force out these events. Ideally they should not generate any more redraws, just make them happen earlier, but experience shows that we do get redraws.

        Jan D.





reply via email to

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