diff options
-rw-r--r-- | ChangeLog | 40 | ||||
-rw-r--r-- | NEWS | 5 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | gnu/java/awt/peer/gtk/GdkGraphics.java | 4 | ||||
-rw-r--r-- | java/awt/Dialog.java | 1 | ||||
-rw-r--r-- | javax/swing/Timer.java | 80 | ||||
-rw-r--r-- | javax/swing/UIManager.java | 2 | ||||
-rw-r--r-- | lib/copy-vmresources.sh.in | 1 |
8 files changed, 100 insertions, 35 deletions
@@ -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. @@ -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` |