On Fri, 2006-02-10 at 01:00 +0100, Mark Wielaard wrote: > Hi, > > While debugging some awt gtk+ peer issues I noticed that we always route > repaint events through 2 queues. First we create a Timer and put it in > there. Second we put it in the actual system event queue. If the repaint > is requested immediately that is overkill. And looking at a couple of > sample programs it looks like delayed repaints are not that often > requested at all. So this patch defers the creation of the Timer till > the first time a delayed repaint request is actually made. And it > immediately posts the repaint event to the system event queue if no > delay is asked for. > > 2006-02-09 Mark Wielaard <[EMAIL PROTECTED]> > > * gnu/java/awt/peer/gtk/GtkComponentPeer.java (repaintTimer): > Removed field. > (repaint): Immediately post to queue when tm <= 0, otherwise call > RepaintTimerTask.schedule(). > (RepaintTimerTask): Make static. > (RepaintTimerTask.repaintTimer): New static final field. > (RepaintTimerTask.awtComponent): New field. > (schedule): New static method. > > OK to commit?
It looks like you left some debugging code in: + System.err.println("UPDATE: " + awtComponent); + Thread.dumpStack(); Other than that this looks good. Tom > > Cheers, > > Mark