[kaffe] CVS kaffe (robilad): Resynced with GNU Classpath: awt and swing fixes
Kaffe CVS
cvs-commits at kaffe.org
Sat Jun 11 14:04:14 PDT 2005
PatchSet 6629
Date: 2005/06/11 20:59:45
Author: robilad
Branch: HEAD
Tag: (none)
Log:
Resynced with GNU Classpath: awt and swing fixes
Members:
ChangeLog:1.4155->1.4156
libraries/javalib/gnu/java/awt/peer/gtk/GdkGraphics.java:1.13->1.14
libraries/javalib/javax/swing/ActionMap.java:1.5->1.6
libraries/javalib/javax/swing/JTextArea.java:1.10->1.11
libraries/javalib/javax/swing/SwingUtilities.java:1.15->1.16
libraries/javalib/javax/swing/plaf/basic/BasicListUI.java:1.10->1.11
libraries/javalib/javax/swing/plaf/basic/BasicTableUI.java:1.5->1.6
libraries/javalib/javax/swing/plaf/basic/BasicTextUI.java:1.12->1.13
libraries/javalib/javax/swing/text/PlainDocument.java:1.9->1.10
libraries/javalib/javax/swing/text/PlainView.java:1.7->1.8
Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.4155 kaffe/ChangeLog:1.4156
--- kaffe/ChangeLog:1.4155 Sat Jun 11 20:53:08 2005
+++ kaffe/ChangeLog Sat Jun 11 20:59:45 2005
@@ -2,6 +2,55 @@
Resynced with GNU Classpath.
+ 2005-06-03 Roman Kennke <roman at kennke.org>
+
+ * javax/swing/plaf/basic/BasicListUI.java
+ (damageLayout): Check for list beeing null before revalidating
+ it.
+
+ 2005-06-03 Roman Kennke <roman at kennke.org>
+
+ * javax/swing/text/PlainDocument.java
+ (removeUpdate): Fixed indices in text buffer access.
+ * javax/swing/text/PlainView.java
+ (drawLine): Simplified element access.
+
+ 2005-06-03 Roman Kennke <roman at kennke.org>
+
+ * javax/swing/JTextArea.java
+ (constructor): Set preferredSize to a sane default.
+
+ 2005-06-03 Roman Kennke <roman at kennke.org>
+
+ * javax/swing/SwingUtilites.java
+ (replaceUIActionMap): Fixed loop again. Now correctly, I hope.
+ * javax/swing/ActionMap.java
+ (setParent): Make sure we don't build a loop.
+ * javax/swing/plaf/basic/BasicTextUI.java
+ (createActionMap): Create ActionMapUIResource instead of
+ plain ActionMap.
+
+ 2005-06-03 Sven de Marothy <sven at physto.se>
+
+ * gnu/java/awt/peer/gtk/GdkGraphics.java:
+ Removed declarations for the previously removed native methods.
+
+ 2005-06-03 Roman Kennke <roman at kennke.org>
+
+ * javax/swing/SwingUtilites.java
+ (replaceUIActionMap): Fixed condition in while loop that caused
+ infinite looping.
+
+ 2005-06-03 Roman Kennke <roman at kennke.org>
+
+ * javax/swing/plaf/basic/BasicTableUI.java
+ (uninstallDefault): Don't set properties to null, this corrupts
+ component state.
+
+2005-06-11 Dalibor Topic <robilad at kaffe.org>
+
+ Resynced with GNU Classpath.
+
2005-06-02 Sven de Marothy <sven at physto.se>
* java/awt/Component.java
Index: kaffe/libraries/javalib/gnu/java/awt/peer/gtk/GdkGraphics.java
diff -u kaffe/libraries/javalib/gnu/java/awt/peer/gtk/GdkGraphics.java:1.13 kaffe/libraries/javalib/gnu/java/awt/peer/gtk/GdkGraphics.java:1.14
--- kaffe/libraries/javalib/gnu/java/awt/peer/gtk/GdkGraphics.java:1.13 Sat Jun 11 20:23:07 2005
+++ kaffe/libraries/javalib/gnu/java/awt/peer/gtk/GdkGraphics.java Sat Jun 11 20:59:48 2005
@@ -142,13 +142,6 @@
public native void dispose();
- native void copyPixmap (Graphics g, int x, int y, int width, int height);
- native void copyAndScalePixmap (Graphics g, boolean flip_x, boolean flip_y,
- int src_x, int src_y,
- int src_width, int src_height,
- int dest_x, int dest_y,
- int dest_width, int dest_height);
-
public boolean drawImage (Image img, int x, int y,
Color bgcolor, ImageObserver observer)
{
Index: kaffe/libraries/javalib/javax/swing/ActionMap.java
diff -u kaffe/libraries/javalib/javax/swing/ActionMap.java:1.5 kaffe/libraries/javalib/javax/swing/ActionMap.java:1.6
--- kaffe/libraries/javalib/javax/swing/ActionMap.java:1.5 Sun Oct 24 13:39:10 2004
+++ kaffe/libraries/javalib/javax/swing/ActionMap.java Sat Jun 11 20:59:48 2005
@@ -133,7 +133,8 @@
*/
public void setParent(ActionMap parentMap)
{
- parent = parentMap;
+ if (parentMap != this)
+ parent = parentMap;
}
/**
Index: kaffe/libraries/javalib/javax/swing/JTextArea.java
diff -u kaffe/libraries/javalib/javax/swing/JTextArea.java:1.10 kaffe/libraries/javalib/javax/swing/JTextArea.java:1.11
--- kaffe/libraries/javalib/javax/swing/JTextArea.java:1.10 Thu May 26 11:10:40 2005
+++ kaffe/libraries/javalib/javax/swing/JTextArea.java Sat Jun 11 20:59:48 2005
@@ -188,6 +188,7 @@
setText(text);
setRows(rows);
setColumns(columns);
+ setPreferredSize(new Dimension(440, 150));
}
/**
Index: kaffe/libraries/javalib/javax/swing/SwingUtilities.java
diff -u kaffe/libraries/javalib/javax/swing/SwingUtilities.java:1.15 kaffe/libraries/javalib/javax/swing/SwingUtilities.java:1.16
--- kaffe/libraries/javalib/javax/swing/SwingUtilities.java:1.15 Fri Jun 10 19:40:48 2005
+++ kaffe/libraries/javalib/javax/swing/SwingUtilities.java Sat Jun 11 20:59:48 2005
@@ -1128,9 +1128,13 @@
component.setActionMap(uiActionMap);
else
{
- while(child.getParent() != null
- && !(child.getParent() instanceof ActionMapUIResource))
- child = child.getParent();
+ ActionMap parent = child.getParent();
+ while(parent != null)
+ {
+ child = parent;
+ parent = child.getParent();
+ }
+
if (child != null)
child.setParent(uiActionMap);
}
Index: kaffe/libraries/javalib/javax/swing/plaf/basic/BasicListUI.java
diff -u kaffe/libraries/javalib/javax/swing/plaf/basic/BasicListUI.java:1.10 kaffe/libraries/javalib/javax/swing/plaf/basic/BasicListUI.java:1.11
--- kaffe/libraries/javalib/javax/swing/plaf/basic/BasicListUI.java:1.10 Sun May 15 09:46:22 2005
+++ kaffe/libraries/javalib/javax/swing/plaf/basic/BasicListUI.java Sat Jun 11 20:59:50 2005
@@ -498,7 +498,8 @@
void damageLayout()
{
updateLayoutStateNeeded = 1;
- list.revalidate();
+ if (list != null)
+ list.revalidate();
}
/**
Index: kaffe/libraries/javalib/javax/swing/plaf/basic/BasicTableUI.java
diff -u kaffe/libraries/javalib/javax/swing/plaf/basic/BasicTableUI.java:1.5 kaffe/libraries/javalib/javax/swing/plaf/basic/BasicTableUI.java:1.6
--- kaffe/libraries/javalib/javax/swing/plaf/basic/BasicTableUI.java:1.5 Sat Jan 8 21:26:25 2005
+++ kaffe/libraries/javalib/javax/swing/plaf/basic/BasicTableUI.java Sat Jun 11 20:59:50 2005
@@ -209,12 +209,22 @@
protected void uninstallDefaults()
{
- table.setFont(null);
- table.setGridColor(null);
- table.setForeground(null);
- table.setBackground(null);
- table.setSelectionForeground(null);
- table.setSelectionBackground(null);
+ // TODO: this method used to do the following which is not
+ // quite right (at least it breaks apps that run fine with the
+ // JDK):
+ //
+ // table.setFont(null);
+ // table.setGridColor(null);
+ // table.setForeground(null);
+ // table.setBackground(null);
+ // table.setSelectionForeground(null);
+ // table.setSelectionBackground(null);
+ //
+ // This would leave the component in a corrupt state, which is
+ // not acceptable. A possible solution would be to have component
+ // level defaults installed, that get overridden by the UI defaults
+ // and get restored in this method. I am not quite sure about this
+ // though. / Roman Kennke
}
protected void uninstallKeyboardActions()
Index: kaffe/libraries/javalib/javax/swing/plaf/basic/BasicTextUI.java
diff -u kaffe/libraries/javalib/javax/swing/plaf/basic/BasicTextUI.java:1.12 kaffe/libraries/javalib/javax/swing/plaf/basic/BasicTextUI.java:1.13
--- kaffe/libraries/javalib/javax/swing/plaf/basic/BasicTextUI.java:1.12 Thu May 26 11:10:44 2005
+++ kaffe/libraries/javalib/javax/swing/plaf/basic/BasicTextUI.java Sat Jun 11 20:59:50 2005
@@ -59,6 +59,7 @@
import javax.swing.UIManager;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
+import javax.swing.plaf.ActionMapUIResource;
import javax.swing.plaf.TextUI;
import javax.swing.plaf.UIResource;
import javax.swing.text.BadLocationException;
@@ -416,7 +417,7 @@
ActionMap createActionMap()
{
Action[] actions = textComponent.getActions();
- ActionMap am = new ActionMap();
+ ActionMap am = new ActionMapUIResource();
for (int i = 0; i < actions.length; ++i)
{
String name = (String) actions[i].getValue(Action.NAME);
Index: kaffe/libraries/javalib/javax/swing/text/PlainDocument.java
diff -u kaffe/libraries/javalib/javax/swing/text/PlainDocument.java:1.9 kaffe/libraries/javalib/javax/swing/text/PlainDocument.java:1.10
--- kaffe/libraries/javalib/javax/swing/text/PlainDocument.java:1.9 Sat Jun 11 19:11:38 2005
+++ kaffe/libraries/javalib/javax/swing/text/PlainDocument.java Sat Jun 11 20:59:51 2005
@@ -117,8 +117,8 @@
super.removeUpdate(event);
int p0 = event.getOffset();
- int p1 = event.getLength() + p0;
int len = event.getLength();
+ int p1 = len + p0;
// check if we must collapse some elements
int i1 = rootElement.getElementIndex(p0);
@@ -133,7 +133,7 @@
Element newEl = createLeafElement(rootElement,
SimpleAttributeSet.EMPTY,
start, end - len);
- rootElement.replace(i1, i1 - i1, new Element[]{ newEl });
+ rootElement.replace(i1, i2 - i1, new Element[]{ newEl });
}
else
{
Index: kaffe/libraries/javalib/javax/swing/text/PlainView.java
diff -u kaffe/libraries/javalib/javax/swing/text/PlainView.java:1.7 kaffe/libraries/javalib/javax/swing/text/PlainView.java:1.8
--- kaffe/libraries/javalib/javax/swing/text/PlainView.java:1.7 Sun May 15 17:30:12 2005
+++ kaffe/libraries/javalib/javax/swing/text/PlainView.java Sat Jun 11 20:59:51 2005
@@ -123,7 +123,7 @@
{
metrics = g.getFontMetrics();
// FIXME: Selected text are not drawn yet.
- Element line = getDocument().getDefaultRootElement().getElement(lineIndex);
+ Element line = getElement().getElement(lineIndex);
drawUnselectedText(g, x, y, line.getStartOffset(), line.getEndOffset());
//drawSelectedText(g, , , , );
}
More information about the kaffe
mailing list