summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog40
-rw-r--r--NEWS5
-rw-r--r--configure.ac2
-rw-r--r--gnu/java/awt/peer/gtk/GdkGraphics.java4
-rw-r--r--java/awt/Dialog.java1
-rw-r--r--javax/swing/Timer.java80
-rw-r--r--javax/swing/UIManager.java2
-rw-r--r--lib/copy-vmresources.sh.in1
8 files changed, 100 insertions, 35 deletions
diff --git a/ChangeLog b/ChangeLog
index fbd843d85..60b97dec2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,26 @@
+2005-11-02 Mark Wielaard <mark@klomp.org>
+
+ * gnu/java/awt/peer/gtk/GdkGraphics.java (initComponentGraphics): Set
+ color to BLACK when getForeground() returns null.
+ (initComponentGraphicsUnlocked): Likewise.
+
+2005-11-02 Mark Wielaard <mark@klomp.org>
+
+ * javax/swing/Timer.java (Waker.run): Synchronize on queueLock and use
+ queueLock.wait(), not Thread.sleep().
+ (start): Synchronize on queueLock and check whether waker is null.
+ (stop): Synchronize on queueLock and notifyAll().
+
+2005-11-02 Mark Wielaard <mark@klomp.org>
+
+ * configure.ac: Set version to 0.19.
+ * NEWS: Add date of release.
+
+2005-11-02 Roman Kennke <kennke@aicas.com>
+
+ * java/awt/Dialog.java
+ (show): Do not call pack() here.
+
2005-11-02 Andrew John Hughes <gnu_andrew@member.fsf.org>
* examples/Makefile.am:
@@ -14,6 +37,23 @@
2005-11-02 Mark Wielaard <mark@klomp.org>
+ * javax/swing/Timer.java (Waker.run): Only break out when !running.
+
+2005-11-02 Mark Wielaard <mark@klomp.org>
+
+ * javax/swing/UIManager.java (static): Print complete exception.
+
+2005-11-02 Mark Wielaard <mark@klomp.org>
+
+ * lib/Makefile.am: Add typeHiding, unchecked, unused and varargsCast
+ to ECJ compile warning rule.
+
+2005-11-02 Guilhem Lavaux <guilhem@kaffe.org>
+
+ * lib/copy-vmresources.sh.in: Added definition for top_srcdir.
+
+2005-11-02 Mark Wielaard <mark@klomp.org>
+
* configure.ac (AC_INIT): Set version to 0.19-generics.
* lib/Makefile.am: Add typeHiding, unchecked, unused and varargsCast
to ECJ compile warning rule.
diff --git a/NEWS b/NEWS
index 336ecb8e3..5a15a09fa 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-New for the subsequent release:
+New in release 0.19 (Nov 2, 2005)
* The Swing RepaintManager has been reworked for more efficient painting,
especially for large GUIs.
@@ -35,7 +35,8 @@ New for the subsequent release:
will help us to improve this package.
* The GUI demo (gnu.classpath.examples.swing.Demo) has been extended to
- highlight various features in our free-swing implementation.
+ highlight various features in our free-swing implementation. And includes
+ a look and feel switcher (Metal default, Ocean or GNU).
Runtime interface changes:
diff --git a/configure.ac b/configure.ac
index a790b692b..2e6778a08 100644
--- a/configure.ac
+++ b/configure.ac
@@ -6,7 +6,7 @@ dnl -----------------------------------------------------------
dnl define([AC_CACHE_LOAD], )dnl
dnl define([AC_CACHE_SAVE], )dnl
-AC_INIT([GNU Classpath],[0.19-generics-pre],[classpath@gnu.org],[classpath])
+AC_INIT([GNU Classpath],[0.19-generics],[classpath@gnu.org],[classpath])
AC_CONFIG_SRCDIR(java/lang/System.java)
AC_CANONICAL_TARGET
diff --git a/gnu/java/awt/peer/gtk/GdkGraphics.java b/gnu/java/awt/peer/gtk/GdkGraphics.java
index cd3769736..d80306c8a 100644
--- a/gnu/java/awt/peer/gtk/GdkGraphics.java
+++ b/gnu/java/awt/peer/gtk/GdkGraphics.java
@@ -129,6 +129,8 @@ public class GdkGraphics extends Graphics
{
initState (component);
color = component.awtComponent.getForeground ();
+ if (color == null)
+ color = Color.BLACK;
Dimension d = component.awtComponent.getSize ();
clip = new Rectangle (0, 0, d.width, d.height);
}
@@ -138,6 +140,8 @@ public class GdkGraphics extends Graphics
{
initStateUnlocked (component);
color = component.awtComponent.getForeground ();
+ if (color == null)
+ color = Color.BLACK;
Dimension d = component.awtComponent.getSize ();
clip = new Rectangle (0, 0, d.width, d.height);
}
diff --git a/java/awt/Dialog.java b/java/awt/Dialog.java
index 982048ea8..7213e29b2 100644
--- a/java/awt/Dialog.java
+++ b/java/awt/Dialog.java
@@ -406,7 +406,6 @@ addNotify()
public synchronized void
show()
{
- pack();
super.show();
if (isModal())
diff --git a/javax/swing/Timer.java b/javax/swing/Timer.java
index 4e3cd7dc4..f848a9490 100644
--- a/javax/swing/Timer.java
+++ b/javax/swing/Timer.java
@@ -65,35 +65,51 @@ public class Timer
*/
public void run()
{
- running = true;
try
{
- sleep(initialDelay);
+ synchronized (queueLock)
+ {
+ try
+ {
+ queueLock.wait(initialDelay);
+ }
+ catch (InterruptedException e)
+ {
+ // Ignored
+ }
+
+ if (!running)
+ return;
+
+ queueEvent();
+
+ if (repeats)
+ while (running)
+ {
+ try
+ {
+ queueLock.wait(delay);
+ }
+ catch (InterruptedException e)
+ {
+ // Ignored
+ }
- queueEvent();
+ if (!running)
+ break;
- if (repeats)
- while (running)
- {
- try
- {
- sleep(delay);
- }
- catch (InterruptedException e)
- {
- return;
- }
- queueEvent();
+ queueEvent();
- if (logTimers)
- System.out.println("javax.swing.Timer -> clocktick");
+ if (logTimers)
+ System.out.println("javax.swing.Timer -> clocktick");
- if ( ! repeats)
- break;
- }
- running = false;
- }
- catch (Exception e)
+ if (!repeats)
+ break;
+ }
+ running = false;
+ }
+ }
+ finally
{
// The timer is no longer running.
running = false;
@@ -399,10 +415,13 @@ public class Timer
*/
public void start()
{
- if (isRunning())
- return;
- waker = new Waker();
- waker.start();
+ synchronized (queueLock)
+ {
+ if (waker != null)
+ return;
+ waker = new Waker();
+ waker.start();
+ }
}
/**
@@ -410,12 +429,13 @@ public class Timer
*/
public void stop()
{
- running = false;
- if (waker != null)
- waker.interrupt();
synchronized (queueLock)
{
+ running = false;
queue = 0;
+ if (waker != null)
+ queueLock.notifyAll();
+ waker = null;
}
}
diff --git a/javax/swing/UIManager.java b/javax/swing/UIManager.java
index aca816d33..15a781903 100644
--- a/javax/swing/UIManager.java
+++ b/javax/swing/UIManager.java
@@ -154,7 +154,7 @@ public class UIManager implements Serializable
catch (Exception ex)
{
System.err.println("cannot initialize Look and Feel: " + defaultlaf);
- System.err.println("error: " + ex.getMessage());
+ System.err.println("error: " + ex.toString());
System.err.println("falling back to Metal Look and Feel");
try
{
diff --git a/lib/copy-vmresources.sh.in b/lib/copy-vmresources.sh.in
index f51247693..9c3e882b2 100644
--- a/lib/copy-vmresources.sh.in
+++ b/lib/copy-vmresources.sh.in
@@ -1,6 +1,7 @@
#! @SHELL@
# @configure_input@
+top_srcdir=@top_srcdir@
vmdirs=`echo "@vm_classes@" | sed 's%:% %g'`
destMetaDir=`pwd`/META-INF
destResDir=`pwd`