[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[commit-cp] classpath ./ChangeLog javax/swing/JComponent.ja...
From: |
Roman Kennke |
Subject: |
[commit-cp] classpath ./ChangeLog javax/swing/JComponent.ja... |
Date: |
Fri, 14 Oct 2005 17:59:06 -0400 |
CVSROOT: /cvsroot/classpath
Module name: classpath
Branch:
Changes by: Roman Kennke <address@hidden> 05/10/14 21:59:05
Modified files:
. : ChangeLog
javax/swing : JComponent.java RepaintManager.java
Log message:
2005-10-14 Roman Kennke <address@hidden>
* javax/swing/JComponent.java
(paintLock): Removed unneeded field.
(isCompletelyDirty): New field.
(setBorder): Don't get active if actual value didn't change.
Otherwise trigger a repaint.
(paint): Mark this component as clean after painting when the clip
covered the whole component.
(paintImmediately): Find more sensible paint root via new helper
methods.
(paintDoubleBuffered): Don't synchronize here.
(setFont): Don't get active if actual value didn't change.
Otherwise trigger a repaint and revalidate.
(setBackground): Don't get active if actual value didn't change.
Otherwise trigger a repaint.
(setForeground): Don't get active if actual value didn't change.
Otherwise trigger a repaint.
(setUI): Trigger a repaint.
(findPaintRoot): New helper method.
(findOverlapFreeParent): New helper method.
(findOpaqueParent): New helper method.
* javax/swing/RepaintManager.java
(ComponentComparator): New inner class. Used to sort components
according to their depth in the containment hierarchy.
(dirtyComponents): Use HashMap instead of Hashtable.
(workDirtyComponents): New field.
(repaintOrder): New field.
(workRepaintOrder): New field.
(comparator): New field.
(invalidComponents): Use ArrayList instead of Vector.
(workInvalidComponents): New field.
(RepaintManager): Initialize new fields.
(removeInvalidComponent): Adjusted for ArrayList.
(addDirtyRegion): Return if component in question is not showing.
Insert the new component in the repaintOrder list.
(insertRepaintOrder): New method. Maintains a sorted list of
components.
(getDirtyRegion): Return empty Rectangle instead of null when
component is not dirty, as specified.
(markCompletelyDirty): Set flag in JComponent.
(markCompletelyClean): Synchronize access to fields.
(isCompletelyDirty): Use flag in JComponent to determine this
property.
(validateInvalidComponents): Use workInvalidComponents when
revalidating. This avoids blocking of application threads
in revalidate() calls.
(paintDirtyRegion): Use work* fields when
repainting. This avoids blocking of application threads
in repaint() calls. Simplify actual work, now we simply call
paintImmediatly() on the dirty components.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/ChangeLog.diff?tr1=1.5237&tr2=1.5238&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/javax/swing/JComponent.java.diff?tr1=1.68&tr2=1.69&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/javax/swing/RepaintManager.java.diff?tr1=1.14&tr2=1.15&r1=text&r2=text
- [commit-cp] classpath ./ChangeLog javax/swing/JComponent.ja...,
Roman Kennke <=