OSDN Git Service

526b254ca2a8281e4a5ac18052f5efb402aa53c4
[pf3gnuchains/gcc-fork.git] / libjava / classpath / ChangeLog
1 2007-05-07 Keith Seitz  <keiths@redhat.com>
2
3         * gnu/classpath/jdwp/Jdwp.java (notify): Rewrite to call
4         new array-based method.
5         (notify): New function.
6         (sendEvent): Rewrite to use sendEvents.
7         (sendEvents): New method.
8         * gnu/classpath/jdwp/event/Event.java (toPacket): Make static.
9         Change parameters to use arrays for events and requests.
10         Add suspendPolicy parameter.
11         Move per-event data transformation to...
12         (_toData): ... here.
13         * gnu/classpath/jdwp/transport/JdwpConnection.java
14         (sendEvent): Renamed to ...
15         (sendEvents): ... this.
16         Change parameters to use arrays for events and requests.
17         Add suspendPolicy parameter.
18
19 2007-05-03  Andrew Haley  <aph@redhat.com>
20
21         * gnu/javax/management/Server.java (Server): Record the delegate.
22         (registerMBean): Notify the delegate.
23         (unregisterMBean): Likewise.
24         (notify): New method.
25
26 2007-04-04  Francis Kung  <fkung@redhat.com>
27
28         * gnu/java/awt/peer/gtk/ComponentGraphics.java
29         (cairoDrawGlyphVector): Removed method.
30         (cairoSetFont): Removed method.
31         (disposeNative): Removed method.
32         * native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoGraphics2D.c
33         (Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoDrawGlyphVector): Added
34         locking.
35         (Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoSetFont): Added locking.
36         (Java_gnu_java_awt_peer_gtk_CairoGraphics2D_disposeNative): Added locking.
37
38 2007-04-27  Keith Seitz  <keiths@redhat.com>
39
40         * gnu/classpath/jdwp/event/EventManager.java
41         (getEventRequest): Rename to...
42         (getEventRequests): ...this.
43         Change return type to array of requests.
44         Construct a list of all matching events and return
45         them all.
46         * gnu/classpath/jdwp/Jdwp.java (notify): Use getEventRequests
47         and send event notifications for all matching requests.
48
49 2007-04-27  Keith Seitz  <keiths@redhat.com>
50
51         * gnu/classpath/jdwp/event/filters/LocationOnlyFilter.java
52         (matches): Use Location.equals to determine equality.
53         * gnu/classpath/jdwp/VMMethod.java (equals):
54         New method.
55         * gnu/classpath/jdwp/util/Location.java (equals):
56         New method.
57
58 2007-03-16  Francis Kung  <fkung@redhat.com>
59
60         * gnu/java/awt/peer/gtk/CairoGraphics2D.java
61         (cairoArc): Make protected rather than private so it can be over-ridden.
62         (cairoClip): Likewise.
63         (cairoClosePath): Likewise.
64         (cairoCurveTo): Likewise.
65         (cairoDrawGlyphVector): Likewise.
66         (cairoFill): Likewise.
67         (cairoLineTo): Likewise.
68         (cairoMoveTo): Likewise.
69         (cairoNewPath): Likewise.
70         (cairoRectangle): Likewise.
71         (cairoResetClip): Likewise.
72         (cairoRestore): Likewise.
73         (cairoSave): Likewise.
74         (cairoScale): Likewise.
75         (cairoSetAntialias): Likewise.
76         (cairoSetDash): Likewise.
77         (cairoSetFillRule): Likewise.
78         (cairoSetFont): Likewise.
79         (cairoSetLine): Likewise.
80         (cairoSetMatrix): Likewise.
81         (cairoSetOperator): Likewise.
82         (cairoSetRGBAColor): Likewise.
83         (cairoStroke): Likewise.
84         (drawPixels): Likewise.
85         (init): Likewise.
86         (setGradient): Likewise.
87         (setPaintPixels): Likewise.
88         (cairoDrawLine): Removed.
89         (cairoDrawRect): Removed.
90         (cairoFillRect): Removed.
91         (cairoPreserveClip): Removed.
92         (cairoRelCurveTo): Removed.
93         (cairoRelLineTo): Removed.
94         (cairoRelMoveTo): Removed.
95         * gnu/java/awt/peer/gtk/ComponentGraphics.java
96         (cairoArc): New method wrapping superclass method in locks.
97         (cairoClip): Likewise.
98         (cairoClosePath): Likewise.
99         (cairoCurveTo): Likewise.
100         (cairoDrawGlyphVector): Likewise.
101         (cairoFill): Likewise.
102         (cairoLineTo): Likewise.
103         (cairoMoveTo): Likewise.
104         (cairoNewPath): Likewise.
105         (cairoRectangle): Likewise.
106         (cairoResetClip): Likewise.
107         (cairoRestore): Likewise.
108         (cairoSave): Likewise.
109         (cairoScale): Likewise.
110         (cairoSetAntialias): Likewise.
111         (cairoSetDash): Likewise.
112         (cairoSetFillRule): Likewise.
113         (cairoSetFont): Likewise.
114         (cairoSetLine): Likewise.
115         (cairoSetMatrix): Likewise.
116         (cairoSetOperator): Likewise.
117         (cairoSetRGBAColor): Likewise.
118         (cairoStroke): Likewise.
119         (disposeNative): Likewise.
120         (drawPixels): Likewise.
121         (init): Likewise.
122         (setGradient): Likewise.
123         (setPaintPixels): Likewise.
124         (draw): Do not lock, as locking is now done in the wrapped native methods.
125         (drawComposite): Likewise.
126         (drawGlyphVector): Likewise.
127         (drawImage): Likewise.
128         (drawRenderedImage): Likewise.
129         (fill): Likewise.
130         (setClip): Removed.
131         (lock): Added documentation.
132         (unlock): Added documentation.
133         * include/gnu_java_awt_peer_gtk_CairoGraphics2D.h: Regenerated.
134         * include/gnu_java_awt_peer_gtk_ComponentGraphics.h: Regenerated.
135         * lib/gnu/java/awt/peer/gtk/ComponentGraphics.class: Regenerated.
136         * lib/gnu/java/awt/peer/gtk/CairoGraphics2D.class: Regenerated.
137         * native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoGraphics2D.c
138         (Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoDrawLine): Removed.
139         (Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoDrawRect): Removed.
140         (Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoFillRect): Removed.
141         (Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoPreserveClip): Removed.
142         (Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRelCurveTo): Removed.
143         (Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRelLineTo): Removed.
144         (Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoRelMoveTo): Removed.
145
146 2007-04-23  Jeroen Frijters  <jeroen@frijters.net>
147
148         PR classpath/31646:
149         * java/util/Arrays.java (qsort): Corrected initial median calculation.
150
151 2007-04-19  Casey Marshall  <csm@gnu.org>
152
153         PR classpath/31626:
154         * gnu/javax/net/ssl/provider/SSLSocketFactoryImpl.java
155         (createSocket): New method.
156
157 2007-04-18  Tom Tromey  <tromey@redhat.com>
158
159         * tools/gnu/classpath/tools/javah/MethodHelper.java (print):
160         Changed arguments.  Directly print method name.
161         * tools/gnu/classpath/tools/javah/ClassWrapper.java
162         (methodNameMap): New field.
163         (makeVtable): Initialize it.
164         (printMethods): Compute name for bridge targets.
165
166 2007-04-17  Andrew Haley  <aph@redhat.com>
167
168         * gnu/java/rmi/server/UnicastConnectionManager.java
169         (UnicastConnectionManager(int port, RMIServerSocketFactory)):
170         Listen on "localhost", not localhost.
171
172 2007-04-17  Francis Kung  <fkung@redhat.com>
173
174         PR classpath/31311
175         * gnu/java/awt/peer/gtk/ComponentGraphics.java
176         (dispose): Removed method.
177         (disposeSurface): Removed method.
178         * gnu_java_awt_peer_gtk_ComponentGraphics.h: Regenerated.
179         * native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
180         (Java_gnu_java_awt_peer_gtk_ComponentGraphics_disposeSurface): Removed.
181         (Java_gnu_java_awt_peer_gtk_ComponentGraphics_initState): Destroy surface
182         after it is used to create a cairo context.
183
184 2007-04-16  Tom Tromey  <tromey@redhat.com>
185
186         https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=236614
187         * gnu/javax/net/ssl/provider/SSLSocketFactoryImpl.java
188         (createSocket): Change order of delegation.
189
190 2007-04-16  Andrew Haley  <aph@redhat.com>
191
192         * java/io/ObjectInputStream.java: (parseContent):  Call (String,
193         Object) version of dumpElementln.
194         (dumpElementln(String, Object)): New method.
195         * java/io/ObjectOutputStream.java (writeObject): Call (String,
196         Object) version of dumpElementln.
197         (dumpElementln(String, Object)): New method.
198
199 2007-04-16  Andrew John Hughes  <gnu_andrew@member.fsf.org>
200
201         * javax/management/ObjectName.java:
202         (parse(String)): Catch multiple wildcards,
203         initialise with an empty string (so null isn't
204         appended), and emit comma even when wildcard
205         ends the list.
206         (checkComponents()): Catch newlines.
207         (quote(String)): Handle newlines and quotes
208         correctly.
209
210 2007-04-16  Andrew Haley  <aph@redhat.com>
211
212         * org/omg/IOP/TaggedComponentHelper.java (read): Use
213         read_octet_array(), not read().
214         (write): Use write_octet_array(), not write().
215
216         * org/omg/PortableServer/Servant.java (_get_delegate): Throw if no
217         delegate has been set.
218
219         * javax/management/ObjectName.java serialVersionUID: Declare.
220         Make all fields transient.
221         (parse): Break out from constructor.
222         (writeObject, readObject): New methods.
223
224 2007-04-02  Keith Seitz  <keiths@redhat.com>
225
226         * gnu/classpath/jdwp/event/ThreadStartEvent.java (Event):
227         Event type is "THREAD_START" not "THREAD_END".
228
229         * gnu/classpath/jdwp/transport/SocketTransport.java (ITransport):
230         Handle configure strings ":port" and "port".
231
232 2007-03-30  Andrew Haley  <aph@redhat.com>
233
234         * javax/management/ObjectName.java: Handle 0-length names.
235
236 2007-03-27  Andrew Haley  <aph@redhat.com>
237
238         * javax/management/MBeanServerFactory.java: Use the domain that
239         we've been passed, not the fixed string "DefaultDomain".
240
241 2007-03-29  Tom Tromey  <tromey@redhat.com>
242
243         PR libgcj/29869:
244         * gnu/java/util/jar/JarUtils.java (log): Commented out.
245         (readSFManifest): Don't log.
246
247 2007-03-28  Casey Marshall  <csm@gnu.org>
248
249         * gnu/javax/net/ssl/provider/ClientHandshake.java (RSAGen.implRun):
250         check keyEncipherment bit of the certificate, and just pass the public
251         key to the cipher.
252
253 2007-03-27  Casey Marshall  <csm@gnu.org>
254
255         PR classpath/31302:
256         * gnu/javax/net/ssl/provider/SSLSocketImpl.java (SSLSocketImpl):
257         Always make a new socket.
258         (bind, connect, getInetAddress, getLocalAddress, getPort,
259         getLocalPort, getRemoteSocketAddress, getLocalSocketAddress,
260         setTcpNoDelay, getTcpNoDelay, setSoLinger, getSoLinger,
261         setOOBInline, getOOBInline, setSoTimeout, getSoTimeout,
262         setSendBufferSize, getSendBufferSize, setReceiveBufferSize,
263         getReceiveBufferSize, setKeepAlive, getKeepAlive, setTrafficClass,
264         getTrafficClass, setReuseAddress, getReuseAddress, close,
265         shutdownInput, shutdownOutput, isConnected, isBound, isClosed,
266         isInputShutdown, isOutputShutdown): Always use
267         'underlyingSocket'.
268
269 2007-03-27  Tom Tromey  <tromey@redhat.com>
270
271         PR classpath/31303:
272         * external/sax/org/xml/sax/helpers/XMLReaderFactory.java
273         (createXMLReader): Code in Classpath default.
274
275 2007-03-27  Keith Seitz  <keiths@redhat.com>
276
277         Merged from upstream:
278         2007-03-09  Kyle Galloway  <kgallowa@redhat.com>
279         * gnu/classpath/jdwp/exception/InvalidTagException.java: New file.
280         * gnu/classpath/jdwp/processor/ArrayReferenceCommandSet.java
281         (executeGetValues): Use Value type.
282         (exectureSetValues): Ditto.  
283         * gnu/classpath/jdwp/processor/ClassTypeCommandSet.java
284         (executeGetValues): Use Value type.
285         (executeSetValues): Ditto.
286         (invokeMethod): Record method return type.
287         * gnu/classpath/jdwp/processor/ObjectReferenceCommandSet.java
288         (executeGetValues): Use Value type.
289         (executeSetValues): Ditto.
290         * gnu/classpath/jdwp/processor/ReferenceTypeCommandSet.java
291         (executeGetValues): Use Value type.
292         * gnu/classpath/jdwp/processor/StackFrameCommandSet.java
293         (executeGetValues): Use Value type.
294         (executeSetValues): Ditto.
295         * gnu/classpath/jdwp/util/MethodResult.java: Add resType to store
296         return type.
297         (getResultType): New Method.
298         (setResultType): Ditto.
299         * gnu/classpath/jdwp/util/Value.java: Remove.
300         * gnu/classpath/jdwp/value: New Package.
301         * gnu/classpath/jdwp/value/Value.java: New file.
302         * gnu/classpath/jdwp/value/BooleanValue.java: New file.
303         * gnu/classpath/jdwp/value/ByteValue.java: New file.
304         * gnu/classpath/jdwp/value/CharValue.java: New file.
305         * gnu/classpath/jdwp/value/DoubleValue.java: New file.
306         * gnu/classpath/jdwp/value/FloatValue.java: New file.
307         * gnu/classpath/jdwp/value/IntValue.java: New file.
308         * gnu/classpath/jdwp/value/LongValue.java: New file.
309         * gnu/classpath/jdwp/value/ObjectValue.java: New file.
310         * gnu/classpath/jdwp/value/ShortValue.java: New file.
311         * gnu/classpath/jdwp/value/StringValue.java: New file.
312         * gnu/classpath/jdwp/value/ValueFactory.java: New file.
313         * gnu/classpath/jdwp/value/VoidValue.java: New file.
314
315         2007-02-28  Keith Seitz  <keiths@redhat.com>
316         * gnu/classpath/jdwp/processor/EventRequestCommandSet.java
317         (executeSet): Check if VM has capability for field access
318         or modification events.
319         * gnu/classpath/jdwp/processor/MethodCommandSet.java
320         (executeByteCodes): Check if VM has capability and
321         implement.
322         * gnu/classpath/jdwp/processor/ObjectReferenceCommandSet.java
323         (executeMonitorInfo): Likewise.
324         * gnu/classpath/jdwp/processor/ReferenceTypeCommandSet.java
325         (executeSourceDebugExtension): Likewise.
326         * gnu/classpath/jdwp/processor/StackFrameCommandSet.java
327         (executePopFrames): Likewise.
328         * gnu/classpath/jdwp/processor/ThreadReferenceCommandSet.java
329         (executeOwnedMonitors): Likewise.
330         (executeCurrentContendedMonitor): Likewise.
331         * gnu/classpath/jdwp/processor/VirtualMachineCommandSet.java
332         (executeCapabilities): Rewrite using new VMVirtualMachine
333         capabilities.
334         (executeRedefineClasses): Check if VM has capability and
335         implement.
336         (executeSetDefaultStratum): Likewise.
337         * gnu/classpath/jdwp/util/MonitorInfo.java; New file.
338         * vm/reference/gnu/classpath/jdwp/VMVirtualMachine.java
339         (canWatchFieldModification): New class constant.
340         (canWatchFieldAccess): Likewise.
341         (canGetBytecodes): Likewise.
342         (canGetSyntheticAttribute): Likewise.
343         (canGetOwnedMonitorInfo): Likewise.
344         (canGetCurrentContendedMonitor): Likewise.
345         (canGetMonitorInfo): Likewise.
346         (canRedefineClasses): Likewise.
347         (canAddMethod): Likewise.
348         (canUnrestrictedlyRedefineClasses): Likewise.
349         (canPopFrames): Likewise.
350         (canUseInstanceFilters): Likewise.
351         (canGetSourceDebugExtension): Likewise.
352         (canRequestVMDeathEvent): Likewise.
353         (canSetDefaultStratum): Likewise.
354         (redefineClasses): New method.
355         (setDefaultStratum): Likewise.
356         (getSourceDebugExtension): Likewise.
357         (getBytecodes): Likewise.
358         (getMonitorInfo): Likewise.
359         (getOwnedMonitors): Likewise.
360         (getCurrentContendedMonitor): Likewise.
361         (popFrames): Likewise.
362
363         2007-02-28  Keith Seitz  <keiths@redhat.com>
364         * gnu/classpath/jdwp/processor/MethodCommandSet.java
365         (executeLineTable): Use ReferenceTypeId instead of
366         ClassReferenceTypeId.
367         (executeVariableTable): Likewise.
368         (executeVariableTableWithGeneric): Fix error message.
369         * gnu/classpath/jdwp/processor/ReferenceTypeCommandSet.java
370         (executeSignatureWithGeneric): Fix error message.
371         (executeFieldWithGeneric): Likewise.
372         (executeMethodsWithGeneric): Likewise.
373         * gnu/classpath/jdwp/processor/StackFrameCommandSet.java
374         (executeGetValues): Use ThreadId instead of ObjectId.
375         (executeSetValues): Likewise.
376         (executeThisObject): Likewise.
377
378         2007-02-28  Kyle Galloway  <kgallowa@redhat.com>
379         * gnu/classpath/jdwp/id/NullObjectId.java: New class.
380         * gnu/classpath/jdwp/util/NullObject.java: New class.
381         * vm/reference/gnu/classpath/jdwp/VMIdManager.java
382         (getObjectId): Handle null object.
383         (get): Handle objectId of 0. 
384
385         2007-02-22  Keith Seitz  <keiths@redhat.ecom>
386         * vm/reference/gnu/classpath/jdwp/VMVirtualMachine.java
387         (getAllLoadedClassesCount): Remove.
388         (getAllLoadedClasses): Return a Collection.
389         * gnu/classpath/jdwp/processor/VirtualMachineCommandSet.java
390         (executeClassesBySignature): VMVirtualMachine.getAllLoadedClasses
391         now returns Collection.
392         (executeAllClasses): Likewise.
393         Get size of return from Colleciton instead of calling
394         getAllLoadedClassesCount.
395
396         2007-02-22  Kyle Galloway  <kgallowa@redhat.com>
397         * gnu/classpath/jdwp/processor/StackFrameCommandSet.java 
398         (executeGetValues): Pass a signature byte to VMFrame.getValue.
399         * vm/reference/gnu/classpath/jdwp/VMFrame.java (getValue): Add
400         signature parameter.
401
402         2007-02-02  Kyle Galloway  <kgallowa@redhat.com>
403         * gnu/classpath/jdwp/processor/StackFrameCommandSet.java
404         (executeGetValues): Changed getFrame to use a jlong to pass frameID.
405         (executeSetValues): Ditto.
406         (executeThisObject): Ditto.
407         * vm/reference/gnu/classpath/jdwp/VMFrame.java: Added thread field
408         and a constructor used to create VMFrames.
409         (getThread): New method.
410         * vm/reference/gnu/classpath/jdwp/VMVirtualMachine.java(getFrame):
411         Changed to take a long instead of a ByteBuffer to pass the frameID.
412
413         2007-01-15  Kyle Galloway  <kgallowa@redhat.com>
414         * gnu/classpath/jdwp/exception/InvalidSlotException.java: New file.
415
416 2007-03-26  Tom Tromey  <tromey@redhat.com>
417
418         * doc/cp-tools.texinfo (gcjh Tool): Added more text.
419         (rmid Tool): Likewise.
420
421 2007-03-25  Dalibor Topic  <robilad@kaffe.org>
422
423         * doc/cp-tools.texinfo: Fix node ordering.
424
425 2007-03-19  Matthias Klose  <doko@ubuntu.com>
426
427         * doc/Makefile.am: Build a gcjh(1) man page.
428         * doc/cp-tools.texinfo: Add documentation for gcjh.
429
430 2007-03-26  Stepan Kasal  <skasal@redhat.com>
431
432         * tools/gnu/classpath/tools/javah/Main.java (cniOrJniSeen): New
433         field.
434         (getParser): Use new field.
435
436 2007-03-17  Thomas Fitzsimmons  <fitzsim@redhat.com>
437
438         * resource/com/sun/tools/javac/messages.properties
439         (Main.FailedToRead, Main.MalformedURL, Main.FailedToLoad): Clarify
440         messages for when --with-ecj-jar is not specified.
441         * configure.ac (FOUND_ECJ_JAR): Remove conditional.
442         * tools/Makefile.am: Build com.sun.tools.javac package
443         unconditionally.
444         * configure, doc/api/Makefile.in, doc/Makefile.in,
445         examples/Makefile.in, external/jsr166/Makefile.in,
446         external/Makefile.in, external/relaxngDatatype/Makefile.in,
447         external/sax/Makefile.in, external/w3c_dom/Makefile.in,
448         include/Makefile.in, lib/Makefile.in, Makefile.in,
449         native/fdlibm/Makefile.in, native/jawt/Makefile.in,
450         native/jni/classpath/Makefile.in,
451         native/jni/gconf-peer/Makefile.in,
452         native/jni/gtk-peer/Makefile.in, native/jni/java-io/Makefile.in,
453         native/jni/java-lang/Makefile.in, native/jni/java-net/Makefile.in,
454         native/jni/java-nio/Makefile.in, native/jni/java-util/Makefile.in,
455         native/jni/Makefile.in, native/jni/midi-alsa/Makefile.in,
456         native/jni/midi-dssi/Makefile.in,
457         native/jni/native-lib/Makefile.in, native/jni/qt-peer/Makefile.in,
458         native/jni/xmlj/Makefile.in, native/Makefile.in,
459         native/plugin/Makefile.in, resource/Makefile.in,
460         scripts/Makefile.in, tools/Makefile.in: Regenerate.
461         * tools/classes/com/sun/tools/javac: New directory.
462         * tools/classes/com/sun/tools/javac/Main.class,
463         tools/classes/com/sun/tools/javac/Messages.class: New files.
464
465 2007-03-16  Tom Tromey  <tromey@redhat.com>
466
467         * tools/gnu/classpath/tools/javah/Main.java (run): Use class'
468         name in File case.
469
470 2007-03-16  Tom Tromey  <tromey@redhat.com>
471
472         * tools/gnu/classpath/tools/javah/JniStubPrinter.java
473         (printClass): Added filename argument.
474         * tools/gnu/classpath/tools/javah/JniIncludePrinter.java
475         (printClass): Added filename argument.
476         * tools/gnu/classpath/tools/javah/CniIncludePrinter.java
477         (printClass): Use user's file name.
478         * tools/gnu/classpath/tools/javah/CniStubPrinter.java
479         (printClass): Use user's file name.
480         * tools/gnu/classpath/tools/javah/Printer.java (printClass): Added
481         filename argument.
482         * tools/gnu/classpath/tools/javah/Main.java (getParser): Fix '-v'
483         argument order.
484         (writeHeaders): Use a HashMap.
485         (run): Put class name into HashMap for writeHeaders.
486
487 2007-03-02  Mario Torre  <neugens@limasoftware.net>
488
489         PR classpath/31017:
490         committed for Petteri Räty <betelgeuse@gentoo.org>
491         * configure.ac: fix broken build for gcj browser plugin
492
493 2007-02-20  Jakub Jelinek  <jakub@redhat.com>
494
495         * java/util/Date.java (parse): Properly parse 09:01:02 as
496         hours/minutes/seconds, not as hours/minutes/year.
497         * java/util/SimpleTimeZone.java (SimpleTimeZone): Simplify
498         {start,end}TimeMode constructor by calling shorter constructor,
499         set {start,end}TimeMode fields after it returns.
500         (setStartRule): Don't adjust startTime into WALL_TIME.  Set
501         startTimeMode to WALL_TIME.
502         (endStartRule): Similarly.
503         (getOffset): Handle properly millis + dstOffset overflowing into the
504         next day.  Adjust startTime resp. endTime based on startTimeMode
505         resp. endTimeMode.
506         * java/util/TimeZone.java (zoneinfo_dir, availableIDs, aliases0): New
507         static fields.
508         (timezones): Remove synchronized keyword.  Set zoneinfo_dir.
509         If non-null, set up aliases0 and don't put anything into
510         timezones0.
511         (defaultZone): Call getTimeZone instead of timezones().get.
512         (getDefaultTimeZone): Fix parsing of EST5 or EST5EDT6.  Use
513         getTimeZoneInternal instead of timezones().get.
514         (parseTime): Parse correctly hour:minute.
515         (getTimeZoneInternal): New private method.
516         (getTimeZone): Do the custom ID checking first, canonicalize
517         ID for custom IDs as required by documentation.  Call
518         getTimeZoneInternal to handle the rest.
519         (getAvailableIDs(int)): Add locking.  Handle zoneinfo_dir != null.
520         (getAvailableIDs(File,String,ArrayList)): New private method.
521         (getAvailableIDs()): Add locking.  Handle zoneinfo_dir != null.
522         * gnu/java/util/ZoneInfo.java: New file.
523
524 2007-02-20  Matthias Klose  <doko@ubuntu.com>
525
526         * doc/Makefile.am: Add rules to build and install man pages
527         from texinfo docs.
528         * doc/hacking.texinfo doc/tools.texinfo, doc/vmintegration.texinfo:
529         Rename, prefix files with "cp-".
530         * doc/cp-tools.texinfo: Add markup for man page generation,
531         add documentation for command line options for gjar, gjavah,
532         gnative2ascii, gorbd, grmid, grmiregistry, gserialver, gtnameserv.
533         doc/texi2pod.pl: New, taken from the GCC sources.
534
535 2006-10-14  Edwin Steiner  <edwin.steiner@gmx.net>
536
537         PR classpath/28652:
538         * javax/management/MBeanInfo.java (MBeanInfo): 
539         Use clone to duplicate the arrays in order to
540         preserve the array type.
541
542 2007-02-16  Andrew Haley  <aph@redhat.com>
543
544         * gnu/java/lang/management/MemoryMXBeanImpl.java,
545         javax/management/MBeanServerDelegate.java: Use
546         gnu.javax.management.ListenerData rather than
547         gnu.classpath.ListenerData.
548         * gnu/javax/management/ListenerData.java: Move here from
549         gnu/classpath/ListenerData.java.
550
551 2007-02-14  Jakub Jelinek  <jakub@redhat.com>
552         Andrew Haley  <aph@redhat.com>
553
554         * java/util/TimeZone.java (getDateParams): Negate dayOfWeek.
555
556 2007-02-09  Tom Tromey  <tromey@redhat.com>
557
558         PR libgcj/30647:
559         * configure: Rebuilt.
560         * configure.ac: Also check for jack/jack.h.
561
562 2007-02-09  Jakub Jelinek  <jakub@redhat.com>
563
564         * java/util/TimeZone.java: Handle default (one hour) daylight
565         savings.
566
567 2007-02-09  Jakub Jelinek  <jakub@redhat.com>
568
569         PR 23566
570         * scripts/timezones.pl: Parse each file in 2 passes, in one parse
571         just Rule lines, in the other everything else.  Pass 0 instead of
572         $savings as second argument to parseRule when parsing the start
573         rule.
574         * java/util/TimeZone.java (timezones): Regenerate from tzdata2007a.
575
576 2007-02-07  Chris Burdess  <dog@gnu.org>
577
578         Fixes PR 30718.
579         * gnu/xml/dom/ls/SAXEventSink.java: Add public accessor/mutators.
580         * gnu/xml/transform/XSLURIResolver.java: Add support for custom
581           SAXSources without a backing URL or stream.
582
583         Fixes PR 27710.
584         * gnu/xml/dom/DomDocumentBuilderFactory.java: Fall back to synchronous
585           LSParser if implementation does not support asynchronous.
586         * gnu/xml/stream/XMLParser.java,
587           gnu/xml/stream/XIncludeFilter.java: Use custom code instead of
588           java.net.URL to resolve to an an absolute URI, to avoid nonexistent
589           protocol handler problems.
590
591 2007-02-06  Tom Tromey  <tromey@redhat.com>
592
593         PR libgcj/30707:
594         * tools/gnu/classpath/tools/javah/JniIncludePrinter.java
595         (printClass): Always print a header.
596
597 2007-02-05  Andrew Haley  <aph@redhat.com>
598
599         PR cp-tools/30706
600         * tools/gnu/classpath/tools/javah/JniIncludePrinter.java:
601         (printClass): Replace '/' in filenames with '_'.
602         * tools/gnu/classpath/tools/javah/JniStubPrinter.java
603         (printClass): Likewise.
604
605 2007-02-05  Tom Tromey  <tromey@redhat.com>
606
607         * java/net/Proxy.java (equals): Handle case where address==null.
608         (hashCode): Likewise.
609         (toString): Likewise.
610
611 2007-01-31  Tom Tromey  <tromey@redhat.com>
612
613         * resource/gnu/classpath/tools/jar/messages.properties
614         (Main.Stdin): New message.
615         * tools/gnu/classpath/tools/jar/Main.java (initializeParser): Add
616         '-@' option.
617         (readNames): New method.
618         (run): Use it.
619
620 2007-01-26  Andrew Haley  <aph@redhat.com>
621
622         * java/lang/SecurityManager.java: Load and initialize
623         java.security.Security.
624
625 2007-01-26  Tom Tromey  <tromey@redhat.com>
626
627         * tools/gnu/classpath/tools/javah/FieldHelper.java (print): Print
628         'volatile' after field type.
629
630 2007-01-23  Marco Trudel  <mtrudel@gmx.ch>
631
632         * java/util/Arrays.java (binarySearch): Change comparison order.
633
634 2007-01-17  Tom Tromey  <tromey@redhat.com>
635
636         * tools/gnu/classpath/tools/javah/PathOptionGroup.java
637         (PathOptionGroup): Set default boot class path.
638
639 2006-12-14  Andrew Haley  <aph@redhat.com>
640
641         * tools/gnu/classpath/tools/jar/Creator.java: Close the
642         inputStream.
643
644 2006-10-12  Andrew Haley  <aph@redhat.com>
645
646         * java/lang/InheritableThreadLocal.java: Rename NULL to sentinel.
647         * java/lang/ThreadLocal.java: Likewise.
648
649 2006-09-13  Andrew Haley  <aph@redhat.com>
650
651         * external/jsr166/java/util/concurrent/atomic/AtomicIntegerFieldUpdater.java:
652         Revert previous gcj-specific disabling of checks.
653         * external/jsr166/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.java:
654         Likewise.
655         * classpath/external/jsr166/java/util/concurrent/atomic/AtomicLongFieldUpdater.java:
656         Likewise.
657
658 2006-09-13  Andrew Haley  <aph@redhat.com>
659
660         * java/util/PriorityQueue.java: Throw IllegalArgumentException for
661         capacity < 1.
662         (Iterator.remove()): Decrement index after removing element.
663
664 2006-12-11  Jeroen Frijters  <jeroen@frijters.net>
665
666         * javax/net/ssl/SSLSocketFactory.java (getDefault):
667         Chain exception cause.
668
669 2006-12-11  Roman Kennke  <kennke@aicas.com>
670
671         * .classpath: Include ASM in Eclipse classpath.
672
673 2006-12-11  Andrew John Hughes  <gnu_andrew@member.fsf.org>
674
675         * gnu/java/lang/management/BeanImpl.java:
676         (translate(String)): Trim strings of whitespace.
677         * javax/management/MBeanAttributeInfo.java:
678         (MBeanAttributeInfo(String,String,Method,Method)):
679         Use Class.getName() for normal (non-parameterized) cases.
680         * javax/management/MBeanConstructorInfo.java:
681         (MBeanConstructorInfo(String, Constructor)):
682         Likewise.
683         * javax/management/MBeanOperationInfo.java:
684         (MBeanOperationInfo(String, Method)):
685         Likewise.
686
687 2006-12-11  Andrew John Hughes  <gnu_andrew@member.fsf.org>
688
689         * java/lang/Class.java:
690         (getClasses()): Return Class<?>[].
691         (internalGetClasses()): Likewise.
692         (getConstructor(Class<?>...)): Add type parameter
693         to parameters.
694         (getDeclaredConstructor(Class<?>...)): Likewise.
695         (getDeclaredClasses()): Return Class<?>[].
696         (getDeclaredClasses(boolean)): Likewise.
697         (getDeclaredConstructors()): Return Constructor<?>[].
698         (getDeclaredConstructors(boolean)): Likewise.
699         (getDeclaredMethod(String,Class<?>...)): Add type
700         parameter to parameters.
701         (getInterfaces()): Return Class<?>[].
702         (getMethods(String,Class<?>...)): Add type
703         parameter to parameters.
704         * java/text/CollationKey.java:
705         Make non-final.
706         * java/text/DecimalFormatSymbols.java:
707         Likewise.
708         
709 2006-12-11  Andrew John Hughes  <gnu_andrew@member.fsf.org>
710
711         * gnu/java/lang/management/BeanImpl.java:
712         (translate(String)): Handle Map and List as
713         Strings of the form "java.util.Map<K,V>" and
714         "java.util.List<E>"
715         * javax/management/MBeanAttributeInfo.java:
716         (MBeanAttributeInfo(String,String,Method,Method)):
717         Use generic parameter and return types.
718         * javax/management/MBeanConstructorInfo.java:
719         (MBeanConstructorInfo(String, Constructor)):
720         Use generic parameter types.
721         * javax/management/MBeanOperationInfo.java:
722         (MBeanOperationInfo(String, Method)):
723         Use generic parameter and return types.
724         
725 2006-12-10  Andrew John Hughes  <gnu_andrew@member.fsf.org>
726
727         * gnu/java/lang/management/BeanImpl.java:
728         (translate(String)): Comment out code for using type
729         variables for Map and List.
730         * java/lang/Thread.java:
731         (Thread(ThreadGroup,Runnable,String,long)): Fix
732         incrementation of totalThreadsCreated to be prior to use.
733         
734 2006-12-10  Andrew John Hughes  <gnu_andrew@member.fsf.org>
735
736         * javax/management/MBeanServerFactory.java:
737         (createMBeanServer(String)): Added security check.
738         (findMBeanServer(String)): Likewise.
739         (newMBeanServer(String)): Likewise.
740         (releaseMBeanServer(String)): Likewise.
741         * javax/management/MBeanServerPermission.java:
742         New file.
743         
744 2006-12-08  David Daney  <ddaney@avtrex.com>
745
746         * native/jni/java-nio/gnu_java_nio_VMChannel.c (is_non_blocking_fd):
747         Fix comment.
748
749 2006-12-08  David Daney  <ddaney@avtrex.com>
750
751         * NEWS: Mention URLConnection.[get|set]ReadTimeout.
752
753 2006-12-08  David Daney  <ddaney@avtrex.com>
754
755         * gnu/java/net/protocol/http/HTTPConnection.java (imports): Add
756         SocketException.
757         (HTTPConnection): Handle NumberFormatException in properties parsing.
758         (Pool.get): Set timeout on reused sockets.
759         * gnu/java/net/protocol/http/HTTPURLConnection.java (proxyPort):
760         Initialize.
761         (HTTPURLConnection): Cleanup properties handling.
762         (getConnection): Use both connection and read timeouts.
763         (setConnectTimeout): Removed.
764         (setReadTimeout): New method.
765         * java/net/URLConnection.java (timeout): Renamed to...
766         (connectTimeout): ... connectTimeout throughout.
767         (readTimeout): New field.
768         (getReadTimeout): New method.
769         (setReadTimeout): New method.
770
771 2006-12-08  Tania Bento  <tbento@redhat.com>
772
773         * java/awt/ScrollPane.java
774         (doLayout): Change the location of the scrollpane's child
775         to (0, 0).
776
777 2006-12-08  David Daney  <ddaney@avtrex.com>
778
779         * native/jni/java-nio/gnu_java_nio_VMChannel.c (is_non_blocking_fd):
780         New method.
781         (Java_gnu_java_nio_VMChannel_read__ILjava_nio_ByteBuffer_2): Throw
782         SocketTimeoutException if a blocking socket timesout.
783         (Java_gnu_java_nio_VMChannel_readScattering): Same.
784         (Java_gnu_java_nio_VMChannel_read__I): Same.
785         (Java_gnu_java_nio_VMChannel_connect): Initialize the fd set.
786         (Java_gnu_java_nio_VMChannel_connect6): Same.
787
788 2006-12-08  Mark Wielaard  <mark@klomp.org>
789
790         * configure.ac (VERSION): Set to 0.93-generics.
791         * NEWS: Add release date.
792
793 2006-12-08  Tania Bento  <tbento@redhat.com>
794
795         * java/awt/ScrollPane.java
796         (getScrollPosition): Throw NullPointerException if scrollpane
797         does have a child.
798         (setScrollPosition(int, int)): Throw NullPointerException if
799         scrollpane does have a child.  Check that both ints are within
800         the allowed bounds; If they are not, scroll to the closest allowed
801         bound.
802
803 2006-12-07  Roman Kennke  <kennke@aicas.com>
804
805         * javax/swing/JEditorPane.java
806         (EditorKitMapping): New inner helper class.
807         (editorKits): New static field for caching editor kit instances.
808         (static_initiazer): Initialize static mappings here.
809         (createEditorKitForContentType): Try to use cached instance.
810         Use correct classloader for loading.
811         (getEditorKitClassNameForContentType): Make use of EditorKitMapping
812         class.
813         (getEditorKitForContentType): Store the fetched editor kit.
814         Fallback to createDefaultEditorKit().
815         (init): Don't clean the static registry here.
816         (registerEditorKitForContentType(String,String,ClassLoader)):
817         Implemented.
818         (registerEditorKitForContentType(String,String)): Delegate to
819         the other version of this method with the thread's context
820         classloader.
821
822 2006-12-07  Mark Wielaard  <mark@klomp.org>
823
824         * examples/gnu/classpath/examples/swing/HtmlDemo.java
825         (setPage): Don't convert URL to String for setPage().
826
827 2006-12-07  Mark Wielaard  <mark@klomp.org>
828
829         * tools/Makefile.am (clean-local): Remove iasm and asm.lst.
830
831 2006-12-07  Mark Wielaard  <mark@klomp.org>
832
833         * tools/Makefile.am: Explicitly define  and use bootclasspath as
834         GLIBJ_BOOTCLASSPATH
835
836 2006-12-07  Mark Wielaard  <mark@klomp.org>
837
838         * javax/swing/JEditorPane.java (createEditorKitForContentType):
839         Always load from system class loader.
840
841 2006-12-07  Mark Wielaard  <mark@klomp.org>
842
843         * java/net/URL.java (URL(URL,String,URLStreamHandler,boolean)): New
844         private constructor.
845         (URL(URL,String,URLStreamHandler)): Call new constructor.
846         (URL(URL,String)): Likewise.
847         (URL(String)): Likewise.
848
849 2006-12-07  Tom Tromey  <tromey@redhat.com>
850
851         * NEWS: Mention ASM.
852         * INSTALL: Don't mention --with-asm.
853         * tools/external/README: New file.
854         * tools/toolwrapper.c (main): Don't use ASM_JAR.
855         * tools/gjavah.in: Don't use PATH_TO_ASM.
856         * tools/grmic.in: Likewise.
857         * tools/Makefile.am (GLIBJ_CLASSPATH): Removed PATH_TO_ASM, added
858         'asm'.
859         (javah, rmic): Removed variables.
860         (bin_PROGRAMS): Updated.
861         (gappletviewer_CFLAGS): Don't define ASM_JAR.
862         (gjarsigner_CFLAGS): Likewise.
863         (gkeytool_CFLAGS): Likewise.
864         (gjar_CFLAGS): Likewise.
865         (gnative2ascii_CFLAGS): Likewise.
866         (gserialver_CFLAGS): Likewise.
867         (grmiregistry_CFLAGS): Likewise.
868         (gtnameserv_CFLAGS): Likewise.
869         (gorbd_CFLAGS): Likewise.
870         (grmid_CFLAGS): Likewise.
871         (gjavah_CFLAGS): Likewise.
872         (grmic_CFLAGS): Likewise.
873         (bin_SCRIPTS): Updated.
874         (TOOLS_JAVA_FILES): Updated.
875         ($(TOOLS_ZIP)): Compile ASM sources.  Copy resource files.
876         * configure.ac: Removed --with-asm.  Always build gjavah.
877
878 2006-12-06  Roman Kennke  <kennke@aicas.com>
879
880         * examples/gnu/classpath/examples/swing/BrowserEditorKit.java:
881         New class.
882         * examples/gnu/classpath/examples/swing/HtmlDemo.java
883         (LoadActionListener): Call setPage() helper method.
884         (createContent): Register tweaked editor kit. For FormSubmitEvents
885         call submitForm(), otherwise setPage().
886         (postData): Helper method for posting form data.
887         (setPage): Helper method for navigating to a new URL.
888         (submitForm): Helper method for submitting a form.
889         * examples/gnu/classpath/examples/swing/forms.html:
890         Added text/password fields and select boxes.
891         * examples/gnu/classpath/examples/swing/welcome.html: Fixed typo.
892
893 2006-12-06  Roman Kennke  <kennke@aicas.com>
894
895         * javax/swing/text/html/FormView.java
896         (SubmitThread.postData): Implemented.
897         (SubmitThread.run): Pass data to postData().
898         (actionPerformed): Reset form when reset button is activated.
899         (createComponent): Add support for select lists and comboboxes.
900         Don't set value of text and password fields here, this is done
901         now in HTMLDocument for consistency.
902         (getElementFormData): Add support for fetching form data from
903         select lists and comboboxes as well as textareas.
904         (getSelectData): New helper method. Fetches form data from
905         select boxes.
906         (getTextAreaData): New helper method. Fetches form data from
907         textareas.
908         (resetForm): New helper method. Resets the entire form.
909         * javax/swing/text/html/HTMLDocument.java
910         (HTMLReader.FormAction.end): Handle SELECT and OPTION tags.
911         (HTMLReader.FormAction.start): Handle SELECT and OPTION tags.
912         (HTMLReader.FormAction.setModel): Initialize text and password
913         values here. Also, use the resetable special models.
914         Group radio buttons into ButtonGroup for exclusive selection.
915         (HTMLReader.FormTagAction): New class. Handles FORM tags.
916         (HTMLReader.buttonGroups): New field.
917         (HTMLReader.numOptions): New field.
918         (HTMLReader.option): New field.
919         (HTMLReader.selectModel): New field.
920         (HTMLReader.textAreaDocument): Make ResetablePlainDocument.
921         (HTMLReader.handleText): Handle OPTION text.
922         (HTMLReader.initTags): Map FORM tags to FormTagAction.
923         (HTMLReader.textAreaContent): Set initial content.
924         * javax/swing/text/html/Option.java
925         (Option): Make copy of attribute set. Initialize selected state.
926         (getValue): Fetch value from attribute set.
927         * javax/swing/text/html/ResetableModel.java: New interface.
928         * javax/swing/text/html/ResetablePlainDocument.java: New class.
929         Supports resetting the state.
930         * javax/swing/text/html/ResetableToggleButtonModel.java: Likewise.
931         * javax/swing/text/html/SelectComboBoxModel.java: Likewise.
932         * javax/swing/text/html/SelectListModel.java: Likewise.
933
934 2006-12-06  Roman Kennke  <kennke@aicas.com>
935
936         * javax/swing/text/DefaultCaret.java
937         (appear): Adjust visibility here.
938         (setDotImpl): Don't adjust visibility here.
939         (moveDotImpl): Don't adjust visibility here.
940
941 2006-12-06  Roman Kennke  <kennke@aicas.com>
942
943         * gnu/java/awt/peer/gtk/AsyncImage.java
944         (Loader.run): Synchronize on the AsyncImage to avoid threading
945         issues.
946         (addObservers): Check for obs==null outside and synchronize on
947         this inside to avoid locking issues.
948         (checkImage): New helper method.
949         (notifyObservers): Check that the correct lock is held and
950         remove actual locking.
951         * gnu/java/awt/peer/gtk/GtkToolkit.java
952         (checkImage): Added special handling for AsyncImages.
953         
954 2006-12-06  Roman Kennke  <kennke@aicas.com>
955
956         * examples/gnu/classpath/examples/swing/Demo.java
957         (getIcon): Made package private.
958         * examples/gnu/classpath/examples/swing/HtmlDemo.java
959         (hyperlinkUpdate): Convert URL to string.
960
961 2006-12-06  Mark Wielaard  <mark@klomp.org>
962
963         * gnu/java/awt/peer/gtk/AsyncImage.java (addObserver): Never notify
964         null Observer.
965
966 2006-12-06  Roman Kennke  <kennke@aicas.com>
967
968         * examples/gnu/classpath/examples/icons/back.png,
969         * examples/gnu/classpath/examples/icons/reload.png:
970         New icons for the HTML browser.
971         * examples/gnu/classpath/examples/swing/HtmlDemo.java
972         (history): New field. Manages the browsing history.
973         (HtmlDemo): Initialize history.
974         (createContent): Set location and add history. Add toolbar.
975         (createToolBar): New helper method.
976         (main): Make default size bigger.
977         * examples/gnu/classpath/examples/swing/frame1.html,
978         * examples/gnu/classpath/examples/swing/frame2.html,
979         * examples/gnu/classpath/examples/swing/frame3.html,
980         * examples/gnu/classpath/examples/swing/frame4.html,
981         * examples/gnu/classpath/examples/swing/frames.html,
982         * examples/gnu/classpath/examples/swing/tables.html:
983         New example pages.
984         * examples/gnu/classpath/examples/swing/welcome.html
985         Add a couple of links and new test pages.
986
987 2006-12-06  Roman Kennke  <kennke@aicas.com>
988
989         * javax/swing/JEditorPane.java
990         (getStream): Buffer the stream for efficiency.
991         (setPage): Don't scroll the view at this point.
992         * javax/swing/plaf/basic/BasicTextUI.java
993         (RootView.paint): Call RootView's setSize to get synchronization.
994         (RootView.setSize): Synchronize to prevent race in layout code.
995         * javax/swing/text/AbstractDocument.java
996         (notifyListeners): New field.
997         (fireChangedUpdate): Track notifyListener field.
998         (fireRemoveUpdate): Track notifyListener field.
999         (fireIndertUpdate): Track notifyListener field.
1000         (writeLock): Check notifyListener and throw IllegalStateException.
1001         * javax/swing/text/View.java
1002         (preferenceChanged): Create local var for better thread safety and
1003         more efficiency.
1004
1005 2006-12-06  Thomas Fitzsimmons  <fitzsim@redhat.com>
1006
1007         * java/awt/ScrollPane.java (addNotify): Add a parent panel for any
1008         lightweight component, not just for non-Panel components.
1009         (addImpl): Do not call doLayout.
1010         * native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c
1011         (setNativeBounds): Ensure widget parent is a GtkFixed before
1012         calling gtk_fixed_move.
1013         * native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c
1014         (setNativeBounds): Likewise.
1015         * native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
1016         (setNativeBounds): Likewise.
1017
1018 2006-12-06  Roman Kennke  <kennke@aicas.com>
1019
1020         * javax/swing/text/html/TableView.java
1021         (RowView.layoutMajorAxis): Check column index for invalid value.
1022         (updateGrid): Check column index for invalid value.
1023
1024 2006-12-06  Roman Kennke  <kennke@aicas.com>
1025
1026         * javax/swing/text/html/BlockView.java
1027         (getAlignment): Align blocks horizontally by the superclass.
1028         * javax/swing/text/html/HTMLEditorKit.java
1029         (HTMLFactory.create): Replace equals comparison by == for efficiency.
1030         Add mapping for misplaced tr, td and th tags. Include object mapping.
1031         * javax/swing/text/html/TableView.java
1032         (RowView.replace): Invalidate grid early.
1033         (gridValid): Initialize with false.
1034         (create): Only create RowView and CellView for correctly placed
1035         tags. Avoid unnecessary casts.
1036         (getAlignment): Removed.
1037         (replace): Invalidate grid early.
1038
1039 2006-12-06  Francis Kung  <fkung@redhat.com>
1040
1041         * java/awt/geom/RectangularShape.java
1042         (getBounds): Remove empty rectangle check.
1043
1044 2006-12-06  Ben Konrath  <bkonrath@redhat.com>
1045
1046         Fixes PR 29853.
1047         * gnu/xml/dom/DomAttr.java: Don't report mutation if oldValue and
1048         newValue are the same.
1049         * gnu/xml/dom/DomNode.java: Set parent if null during mutation.
1050
1051 2006-12-06  Tania Bento  <tbento@redhat.com>
1052
1053         * javax/swing/border/CompoundBorder.java:
1054         (isBorderOpaque): If inside border is null, return true if outside
1055         border is opaque, false otherwise; if outside border is null, return
1056         true if inside border is opaque, false otherwise; if inside or
1057         outside border are both not null, then return true only if both the
1058         inside and outside border are opaque, false otherwise.
1059
1060 2006-12-06  Tania Bento  <tbento@redhat.com>
1061
1062         * javax/swing/border/CompoundBorder.java:
1063         (isBorderOpaque): If inside and outside border both have a null
1064         value, return true.
1065
1066 2006-12-06  Chris Burdess  <dog@gnu.org>
1067
1068         Fixes PR 29272.
1069         * javax/xml/parsers/DocumentBuilderFactory.java: Fix broken Javadoc.
1070         * gnu/xml/stream/SAXParser.java: Fix file descriptor leak.
1071
1072 2006-12-06  Chris Burdess  <dog@gnu.org>
1073
1074         Fixes PR 29264.
1075         * gnu/xml/stream/XMLStreamWriterImpl.java: Allow arbitrary text in
1076           writeDTD method.
1077
1078 2006-12-06  Chris Burdess  <dog@gnu.org>
1079
1080         Fixes PR 28816.
1081         * javax/xml/validation/SchemaFactory.java: Use correct algorithm to
1082           discover schema factory implementation class.
1083
1084 2006-12-05  Francis Kung  <fkung@redhat.com>
1085
1086         * java/awt/BasicStroke.java
1087         (capEnd): Prevent division by zero.
1088         * java/awt/geom/Arc2D.java
1089         (ArcIterator.ArcIterator): Do not shift the arc to make the extent positive.
1090         (ArcIterator.currentSegment): Handle a negative extent.
1091
1092 2006-12-05  Francis Kung  <fkung@redhat.com>
1093
1094         * gnu/java/awt/peer/gtk/BufferedImageGraphics.java
1095         (constructor): Handle translated subimages properly, ie, if the image's
1096         0,0 position is not the data buffer's first element.
1097
1098 2006-12-05  Roman Kennke  <kennke@aicas.com>
1099
1100         * gnu/java/awt/peer/gtk/AsyncImage.java
1101         (Loader.run): Nullify observers after loading.
1102         (observers): Made package private.
1103         (addObserver): Check for null observers field. Create local
1104         variable for thread safety.
1105         (getHeight): Use addObserver() for checking state of field
1106         and notifying observer when necessary.
1107         (getWidth): Use addObserver() for checking state of field
1108         and notifying observer when necessary.
1109         (getProperty): Use addObserver() for checking state of field
1110         and notifying observer when necessary.
1111         (notifyObservers): Check for null observers field. Create local
1112         variable for thread safety.
1113
1114 2006-12-05  Roman Kennke  <kennke@aicas.com>
1115
1116         * javax/swing/text/html/HTMLEditorKit.java
1117         (HTMLFactory.create): Removed debug output.
1118         * javax/swing/text/html/InlineView.java
1119         (getBreakWeight): Likewise.
1120         * javax/swing/text/html/StyleSheet.java
1121         (addRule): Likewise.
1122         (ListPainter.paint): Removed debug output.
1123
1124 2006-12-05  Roman Kennke  <kennke@aicas.com>
1125
1126         * javax/swing/text/html/BlockView.java
1127         (painter): Made package visible.
1128         * javax/swing/text/html/StyleSheet.java
1129         (translateBorder): New helper method.
1130         (translateHTMLToCSS): Add mappings for border attributes.
1131         * javax/swing/text/html/TableView.java
1132         Made class subclass of BlockView to get CSS goodness.
1133         (CellView.rowSpan): New field.
1134         (CellView.setPropertiesFromAttributes): Fetch rowspan.
1135         (RowView.overlap): New field.
1136         (RowView.rowIndex): New field.
1137         (RowView.layoutMajorAxis): Skip overlapping cells.
1138         (RowView.layoutMinorAxis): Layout cells that span more than 1 row.
1139         (numColumns): New field.
1140         (tmpRect): New field.
1141         (TableView): Initialize tmpRect.
1142         (calculateColumnRequirements): Adjusted and fixed for multirows.
1143         (getAlignment): Overridden to center tables.
1144         (paint): Overridden to fix clipping.
1145         (getStyleSheet): Made protected.
1146         (layoutMajorAxis): Invalidate rows.
1147         (setPropertiesFromAttributes): Made protected and call super.
1148         (updateGrid): Update the overlapping information for multirows.
1149
1150 2006-12-05  Roman Kennke  <kennke@aicas.com>
1151
1152         * gnu/java/awt/peer/gtk/AsyncImage.java
1153         (addObserver): Check for null and ignore null observers.
1154         (getWidth): Check for null and ignore null observers.
1155         (getHeight): Check for null and ignore null observers.
1156         (getProperty): Check for null and ignore null observers.
1157
1158 2006-12-05  Francis Kung  <fkung@redhat.com>
1159
1160         * java/awt/BasicStroke.java
1161         (capEnd): Prevent division by zero.
1162         * java/awt/geom/Arc2D.java
1163         (ArcIterator.ArcIterator): Do not shift the arc to make the extent positive.
1164         (ArcIterator.currentSegment): Handle a negative extent.
1165
1166 2006-12-05  Francis Kung  <fkung@redhat.com>
1167
1168         * gnu/java/awt/peer/gtk/BufferedImageGraphics.java
1169         (constructor): Handle translated subimages properly, ie, if the image's
1170         0,0 position is not the data buffer's first element.
1171
1172 2006-12-05  Roman Kennke  <kennke@aicas.com>
1173
1174         * javax/swing/text/html/ImageView.java
1175         (imageUpdate): Use spans field to determine if the CSS width/height
1176         are set. Call safePreferenceChanged to protect view structure
1177         from threading issues.
1178         (spans): Made package private.
1179         (ImageView): Initialize loadOnDemand with false.
1180         (loadImage): Call Toolkit.prepareImage() to make sure we have
1181         our Observer registered.
1182         (safePreferenceChanged): New helper method. Calls preferenceChanged
1183         in a thread safe environment.
1184
1185 2006-12-05  Roman Kennke  <kennke@aicas.com>
1186
1187         * NEWS: Add entry about improved HTML support.
1188
1189 2006-12-05  Roman Kennke  <kennke@aicas.com>
1190
1191         * javax/swing/text/html/ImageView.java
1192         (ImageView): Initialize spans array here.
1193         (setPropertiesFromAttributes): Moved init of spans array to
1194         constructor.
1195
1196 2006-12-05  Roman Kennke  <kennke@aicas.com>
1197
1198         * javax/swing/text/html/BlockView.java
1199         (painter): Made package visible.
1200         * javax/swing/text/html/StyleSheet.java
1201         (translateBorder): New helper method.
1202         (translateHTMLToCSS): Add mappings for border attributes.
1203         * javax/swing/text/html/TableView.java
1204         Made class subclass of BlockView to get CSS goodness.
1205         (CellView.rowSpan): New field.
1206         (CellView.setPropertiesFromAttributes): Fetch rowspan.
1207         (RowView.overlap): New field.
1208         (RowView.rowIndex): New field.
1209         (RowView.layoutMajorAxis): Skip overlapping cells.
1210         (RowView.layoutMinorAxis): Layout cells that span more than 1 row.
1211         (numColumns): New field.
1212         (tmpRect): New field.
1213         (TableView): Initialize tmpRect.
1214         (calculateColumnRequirements): Adjusted and fixed for multirows.
1215         (getAlignment): Overridden to center tables.
1216         (paint): Overridden to fix clipping.
1217         (getStyleSheet): Made protected.
1218         (layoutMajorAxis): Invalidate rows.
1219         (setPropertiesFromAttributes): Made protected and call super.
1220         (updateGrid): Update the overlapping information for multirows.
1221
1222 2006-12-05  Roman Kennke  <kennke@aicas.com>
1223
1224         * javax/swing/text/html/HTMLEditorKit.java
1225         (HTMLFactory.create): Removed debug output.
1226         * javax/swing/text/html/InlineView.java
1227         (getBreakWeight): Likewise.
1228         * javax/swing/text/html/StyleSheet.java
1229         (addRule): Likewise.
1230         (ListPainter.paint): Removed debug output.
1231
1232 2006-12-06  Roman Kennke  <kennke@aicas.com>
1233
1234         * javax/swing/text/html/BlockView.java
1235         (getAlignment): Align blocks horizontally by the superclass.
1236         * javax/swing/text/html/HTMLEditorKit.java
1237         (HTMLFactory.create): Replace equals comparison by == for efficiency.
1238         Add mapping for misplaced tr, td and th tags. Include object mapping.
1239         * javax/swing/text/html/TableView.java
1240         (RowView.replace): Invalidate grid early.
1241         (gridValid): Initialize with false.
1242         (create): Only create RowView and CellView for correctly placed
1243         tags. Avoid unnecessary casts.
1244         (getAlignment): Removed.
1245         (replace): Invalidate grid early.
1246
1247
1248 2006-12-06  Roman Kennke  <kennke@aicas.com>
1249
1250         * javax/swing/text/html/TableView.java
1251         (RowView.layoutMajorAxis): Check column index for invalid value.
1252         (updateGrid): Check column index for invalid value.
1253
1254 2006-12-06  Roman Kennke  <kennke@aicas.com>
1255
1256         * javax/swing/JEditorPane.java
1257         (getStream): Buffer the stream for efficiency.
1258         (setPage): Don't scroll the view at this point.
1259         * javax/swing/plaf/basic/BasicTextUI.java
1260         (RootView.paint): Call RootView's setSize to get synchronization.
1261         (RootView.setSize): Synchronize to prevent race in layout code.
1262         * javax/swing/text/AbstractDocument.java
1263         (notifyListeners): New field.
1264         (fireChangedUpdate): Track notifyListener field.
1265         (fireRemoveUpdate): Track notifyListener field.
1266         (fireIndertUpdate): Track notifyListener field.
1267         (writeLock): Check notifyListener and throw IllegalStateException.
1268         * javax/swing/text/View.java
1269         (preferenceChanged): Create local var for better thread safety and
1270         more efficiency.
1271
1272 2006-12-06  Roman Kennke  <kennke@aicas.com>
1273
1274         * examples/gnu/classpath/examples/icons/back.png,
1275         * examples/gnu/classpath/examples/icons/reload.png:
1276         New icons for the HTML browser.
1277         * examples/gnu/classpath/examples/swing/HtmlDemo.java
1278         (history): New field. Manages the browsing history.
1279         (HtmlDemo): Initialize history.
1280         (createContent): Set location and add history. Add toolbar.
1281         (createToolBar): New helper method.
1282         (main): Make default size bigger.
1283         * examples/gnu/classpath/examples/swing/frame1.html,
1284         * examples/gnu/classpath/examples/swing/frame2.html,
1285         * examples/gnu/classpath/examples/swing/frame3.html,
1286         * examples/gnu/classpath/examples/swing/frame4.html,
1287         * examples/gnu/classpath/examples/swing/frames.html,
1288         * examples/gnu/classpath/examples/swing/tables.html:
1289         New example pages.
1290         * examples/gnu/classpath/examples/swing/welcome.html
1291         Add a couple of links and new test pages.
1292
1293 2006-12-06  Roman Kennke  <kennke@aicas.com>
1294
1295         * examples/gnu/classpath/examples/swing/Demo.java
1296         (getIcon): Made package private.
1297         * examples/gnu/classpath/examples/swing/HtmlDemo.java
1298         (hyperlinkUpdate): Convert URL to string.
1299
1300 2006-12-06  Roman Kennke  <kennke@aicas.com>
1301
1302         * javax/swing/text/DefaultCaret.java
1303         (appear): Adjust visibility here.
1304         (setDotImpl): Don't adjust visibility here.
1305         (moveDotImpl): Don't adjust visibility here.
1306
1307 2006-12-06  Roman Kennke  <kennke@aicas.com>
1308
1309         * javax/swing/text/html/FormView.java
1310         (SubmitThread.postData): Implemented.
1311         (SubmitThread.run): Pass data to postData().
1312         (actionPerformed): Reset form when reset button is activated.
1313         (createComponent): Add support for select lists and comboboxes.
1314         Don't set value of text and password fields here, this is done
1315         now in HTMLDocument for consistency.
1316         (getElementFormData): Add support for fetching form data from
1317         select lists and comboboxes as well as textareas.
1318         (getSelectData): New helper method. Fetches form data from
1319         select boxes.
1320         (getTextAreaData): New helper method. Fetches form data from
1321         textareas.
1322         (resetForm): New helper method. Resets the entire form.
1323         * javax/swing/text/html/HTMLDocument.java
1324         (HTMLReader.FormAction.end): Handle SELECT and OPTION tags.
1325         (HTMLReader.FormAction.start): Handle SELECT and OPTION tags.
1326         (HTMLReader.FormAction.setModel): Initialize text and password
1327         values here. Also, use the resetable special models.
1328         Group radio buttons into ButtonGroup for exclusive selection.
1329         (HTMLReader.FormTagAction): New class. Handles FORM tags.
1330         (HTMLReader.buttonGroups): New field.
1331         (HTMLReader.numOptions): New field.
1332         (HTMLReader.option): New field.
1333         (HTMLReader.selectModel): New field.
1334         (HTMLReader.textAreaDocument): Make ResetablePlainDocument.
1335         (HTMLReader.handleText): Handle OPTION text.
1336         (HTMLReader.initTags): Map FORM tags to FormTagAction.
1337         (HTMLReader.textAreaContent): Set initial content.
1338         * javax/swing/text/html/Option.java
1339         (Option): Make copy of attribute set. Initialize selected state.
1340         (getValue): Fetch value from attribute set.
1341         * javax/swing/text/html/ResetableModel.java: New interface.
1342         * javax/swing/text/html/ResetablePlainDocument.java: New class.
1343         Supports resetting the state.
1344         * javax/swing/text/html/ResetableToggleButtonModel.java: Likewise.
1345         * javax/swing/text/html/SelectComboBoxModel.java: Likewise.
1346         * javax/swing/text/html/SelectListModel.java: Likewise.
1347
1348 2006-12-06  Roman Kennke  <kennke@aicas.com>
1349
1350         * examples/gnu/classpath/examples/swing/BrowserEditorKit.java:
1351         New class.
1352         * examples/gnu/classpath/examples/swing/HtmlDemo.java
1353         (LoadActionListener): Call setPage() helper method.
1354         (createContent): Register tweaked editor kit. For FormSubmitEvents
1355         call submitForm(), otherwise setPage().
1356         (postData): Helper method for posting form data.
1357         (setPage): Helper method for navigating to a new URL.
1358         (submitForm): Helper method for submitting a form.
1359         * examples/gnu/classpath/examples/swing/forms.html:
1360         Added text/password fields and select boxes.
1361         * examples/gnu/classpath/examples/swing/welcome.html: Fixed typo.
1362
1363 2006-12-07  Mark Wielaard  <mark@klomp.org>
1364
1365         * java/net/URL.java (URL(URL,String,URLStreamHandler,boolean)): New
1366         private constructor.
1367         (URL(URL,String,URLStreamHandler)): Call new constructor.
1368         (URL(URL,String)): Likewise.
1369         (URL(String)): Likewise.
1370
1371 2006-12-07  Mark Wielaard  <mark@klomp.org>
1372
1373         * javax/swing/JEditorPane.java (createEditorKitForContentType):
1374         Always load from system class loader.
1375
1376 2006-12-06  Ben Konrath  <bkonrath@redhat.com>
1377
1378         Fixes PR 29853.
1379         * gnu/xml/dom/DomAttr.java: Don't report mutation if oldValue and
1380         newValue are the same.
1381         * gnu/xml/dom/DomNode.java: Set parent if null during mutation.
1382
1383 2006-12-06  Chris Burdess  <dog@gnu.org>
1384
1385         Fixes PR 29272.
1386         * javax/xml/parsers/DocumentBuilderFactory.java: Fix broken Javadoc.
1387         * gnu/xml/stream/SAXParser.java: Fix file descriptor leak.
1388
1389 2006-12-06  Chris Burdess  <dog@gnu.org>
1390
1391         Fixes PR 29264.
1392         * gnu/xml/stream/XMLStreamWriterImpl.java: Allow arbitrary text in
1393         writeDTD method.
1394
1395 2006-12-056  Chris Burdess  <dog@gnu.org>
1396
1397         Fixes PR 28816.
1398         * javax/xml/validation/SchemaFactory.java: Use correct algorithm to
1399         discover schema factory implementation class.
1400
1401 2006-12-05  Roman Kennke  <kennke@aicas.com>
1402
1403         * gnu/java/awt/peer/gtk/AsyncImage.java: New class. Supports
1404         asynchronous loading of images.
1405         * gnu/java/awt/peer/gtk/CairoGraphics2D.java
1406         (drawImage): Fetch real image from possibly AsyncImage.
1407         * gnu/java/awt/peer/gtk/ComponentGraphics.java
1408         (drawImage): Fetch real image from possibly AsyncImage.
1409         * gnu/java/awt/peer/gtk/GtkToolkit.java
1410         (createImage(URL)): Create async image.
1411         (imageOrError): Made method static for easy access from AsyncImage.
1412         (prepareImage): For async images, register the observer to the
1413         image.
1414
1415 2006-12-05  Roman Kennke  <kennke@aicas.com>
1416
1417         (paintComponent): Include paint area from event.
1418         (updateComponent): Include paint area from event.
1419
1420 2006-12-06  Thomas Fitzsimmons  <fitzsim@redhat.com>
1421
1422         * java/awt/ScrollPane.java (addNotify): Add a parent panel for any
1423         lightweight component, not just for non-Panel components.
1424         (addImpl): Do not call doLayout.
1425         * native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c
1426         (setNativeBounds): Ensure widget parent is a GtkFixed before
1427         calling gtk_fixed_move.
1428         * native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c
1429         (setNativeBounds): Likewise.
1430         * native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
1431         (setNativeBounds): Likewise.
1432
1433 2006-12-04  Thomas Fitzsimmons  <fitzsim@redhat.com>
1434
1435         * java/awt/Component.java (getFontImpl): Return a default font if
1436         topmost parent's font is null.
1437
1438 2006-12-04  Mark Wielaard  <mark@klomp.org>
1439
1440         * javax/swing/text/html/CSS.java (parseMarginShorthand):
1441         Remove debug output.
1442
1443 2006-12-04  Roman Kennke  <kennke@aicas.com>
1444
1445         * java/awt/font/TextLayout.java
1446         (hitTestChar): Fixed conditions for inclusion of range.
1447         Use layout information in the run for more efficiency.
1448
1449 2006-12-04  Roman Kennke  <kennke@aicas.com>
1450
1451         * javax/swing/text/GlyphView.java
1452         (J2DGlyphPainter): New inner class.
1453         (checkPainter): For Java2D capable environments create
1454         a J2DGlyphPainter.
1455
1456 2006-12-04  Roman Kennke  <kennke@aicas.com>
1457
1458         * gnu/java/awt/peer/gtk/FreetypeGlyphVector.java
1459         (FreeTypeGlyphVector): Don't filter control chars here.
1460         (getGlyphs): Filter control chars and replace them by
1461         hair space char.
1462
1463 2006-12-04  Roman Kennke  <kennke@aicas.com>
1464
1465         * native/jni/java-nio/gnu_java_nio_VMChannel.c
1466         (Java_gnu_java_nio_VMChannel_connect): Retry on EINTR.
1467
1468 2006-12-04  Andrew John Hughes  <gnu_andrew@member.fsf.org>
1469
1470         * gnu/java/lang/management/BeanImpl.java:
1471         (translate(String)): Don't assume the list uses "E",
1472         just use the first and only type variable.
1473         * java/lang/management/ManagementFactory.java:
1474         (getPlatformMBeanServer()): Register logging bean.
1475         * javax/management/openmbean/OpenType.java:
1476         (OpenType(String,String,String)): Actually use
1477         the string created to handle arrays.
1478         
1479 2006-12-04  Mark Wielaard  <mark@klomp.org>
1480
1481         * native/jni/java-nio/gnu_java_nio_VMChannel.c
1482         (JCL_thread_interrupted): Use CallStaticBooleanMethod.
1483
1484 2006-12-04  Mark Wielaard  <mark@klomp.org>
1485
1486         * vm/reference/gnu/java/nio/VMChannel.java (isThreadInterrupted):
1487         Make static.
1488         * native/jni/java-nio/gnu_java_nio_VMChannel.c
1489         (JCL_thread_interrupted): Only take JNIEnv.
1490         (vm_channel_class): New static variable.
1491         (initID): Set vm_channel_class.
1492         Wrap all reads() and writes() in do-while blocks that check
1493         interrupted status.
1494
1495 2006-12-04  Andrew John Hughes  <gnu_andrew@member.fsf.org>
1496
1497         * gnu/javax/management/Server.java:
1498         Make map final and initialise it.
1499         (unregisterMBean(ObjectName)): Match against
1500         delegate's object name and not the instance.
1501         * java/lang/management/ManagementFactory.java:
1502         Added constant fields.
1503         (getPlatformMBeanServer()): Implemented.
1504         * javax/management/MBeanServerFactory.java: New file.
1505         
1506 2006-12-04  Roman Kennke  <kennke@aicas.com>
1507
1508         * javax/swing/text/BoxView.java
1509         (paint): Replaced painting algorithm with more simple and more
1510         reliable painting of the box.
1511         * javax/swing/text/html/BlockView.java
1512         (PositionInfo): New inner class. Stores additional CSS
1513         positioning information.
1514         (positionInfo): New field.
1515         (BlockView): Initialize positionInfo field.
1516         (fetchLayoutInfo): New helper method. Fetches additional
1517         CSS positioning information.
1518         (layoutMajorAxis): Perform additional CSS layout.
1519         (layoutMinorAxis): Perform additional CSS layout.
1520         (positionView): New helper method.
1521         (replace): Overridden to fetch additional layout information.
1522         * javax/swing/text/html/CSS.java
1523         (Attribute.POSITION): New field.
1524         (Attribute.LEFT): New field.
1525         (Attribute.RIGHT): New field.
1526         (Attribute.TOP): New field.
1527         (Attribute.BOTTOM): New field.
1528         (getValue): Create Length for left, right, top and bottom
1529         attributes.
1530
1531 2006-12-04  Roman Kennke  <kennke@aicas.com>
1532
1533         * gnu/javax/swing/text/html/parser/support/Parser.java
1534         (Sgml): Consume any whitespace that immediately follows
1535         and sgml insertion.
1536         (parseDocument): Consume any initial whitespace.
1537
1538 2006-12-03  Mark Wielaard  <mark@klomp.org>
1539
1540         * gnu/javax/management/Server.java (beans): Initialize.
1541         (registerMBean): Don't initialize beans.
1542
1543 2006-12-03  Mark Wielaard  <mark@klomp.org>
1544
1545         * java/util/logging/LogManager.java (getLevelProperty): Check
1546         whether value is null before passing to Level.parse().
1547
1548 2006-12-04  Robert Lougher  <rob.lougher@gmail.com>
1549
1550         * java/lang/management/ThreadInfo.java (ThreadInfo): Check
1551         whether given a null lock and lockOwner.
1552
1553 2006-12-03  Mark Wielaard  <mark@klomp.org>
1554
1555         * javax/swing/JEditorPane.java (PageLoader.in): Made a PageStream.
1556         (PageLoader.page): Made package local.
1557         (PageLoader.run): Don't reset loader.
1558         (PageLoader.cancel): New method.
1559         (loading): Renamed to loader.
1560         (getPage): Return loader.page.
1561         (setPage): Always set loader. Never reset to null.
1562
1563 2006-12-03  Mark Wielaard  <mark@klomp.org>
1564
1565         * javax/swing/plaf/basic/BasicTreeUI.java (paint): Check whether
1566         path[k] is null.
1567         (isLastChild): Return false when path is null.
1568
1569 2006-12-03  Mark Wielaard  <mark@klomp.org>
1570
1571         * gnu/java/awt/peer/gtk/GtkComponentPeer.java (paintArea): Renamed
1572         to currentPaintArea.
1573         (paintComponent): Work with local reference to currentPaintArea.
1574         (updateComponent): Likewise.
1575         (coalescePaintEvent): Set currentPaintArea.
1576
1577 2006-12-02  Andrew John Hughes  <gnu_andrew@member.fsf.org>
1578
1579         * javax/management/MBeanServerBuilder.java: New file.
1580         
1581 2006-12-01  Mark Wielaard  <mark@klomp.org>
1582
1583         * java/text/DecimalFormat.java (parse): Always increment parsing
1584         index and adjust pos result.
1585
1586 2006-12-01  Roman Kennke  <kennke@aicas.com>
1587
1588         * javax/swing/text/html/HTML.java
1589         (Attribute.DYNAMIC_CLASS): New field.
1590         (Attribute.PSEUDO_CLASS): New field.
1591         * javax/swing/text/html/HTMLDocument.java
1592         (HTMLReader.CharacterAction.start): Initialize anchor with link
1593         pseudo attribute.
1594         (updateSpecialClass): New helper method. Updates the dynamic
1595         or pseudo class for anchor tags.
1596         * javax/swing/text/html/HTMLEditorKit.java
1597         (LinkController.lastAnchorElement): New field. For tracking
1598         enter/exit of anchors.
1599         (LinkController.activateLink): Set pseudo class to 'visited'.
1600         (LinkController.mouseMoved): Added support for tracking
1601         the 'hover' dynamic class.
1602         * javax/swing/text/html/InlineView.java
1603         (changedUpdate): Fetch new properties.
1604         * javax/swing/text/html/StyleSheet.java
1605         (attributeSetToMap): New helper method.
1606         (getRule): Also append dynamic and pseudo class to key.
1607         (resolveStyle): Resolve style based generally on all attributes.
1608         * javax/swing/text/html/TableView.java
1609         (RowView.layoutMajorAxis): Make sure the grid is valid.
1610         (updateGrid): Made package private.
1611         * gnu/javax/swing/text/html/css/Selector.java
1612         (calculateSpecificity): Added support for dynamic and pseudo classes.
1613         (matches): Changed to operate on general attributes.
1614         Added support for dynamic and pseudo classes.
1615
1616 2006-12-01  Mario Torre  <neugens@limasoftware.net>
1617
1618         * java/text/DecimalFormat.java (formatInternal): move the formatting of
1619         fractional portion in a separate method.
1620         Also fixes the handling of decimal separator and its associated field.
1621         (handleFractionalPart): new method, needed to relax a bit
1622         formatInternal.
1623         
1624 2006-12-01  Andrew John Hughes  <gnu_andrew@member.fsf.org>
1625
1626         * java/beans/beancontext/BeanContextServicesSupport.java:
1627         (BCSSProxyServiceProvider.getCurrentServiceSelectors(BeanContextServices,
1628         Class)): Implemented.
1629         (BCSSProxyServiceProvider.getService(BeanContextServices, Object,
1630         Class, Object)): Implemented.
1631         (BCSSProxyServiceProvider.releaseService(BeanContextServices,
1632         Object, Object)): Implemented.
1633         (BCSSProxyServiceProvider.serviceRevoked(BeanContextServiceRevokedEvent)):
1634         Implemented.
1635         (initialiseBeanContextResources()): Implemented.
1636         (releaseBeanContextResoures()): Implemented.
1637         
1638 2006-12-01  Mark Wielaard  <mark@klomp.org>
1639
1640         * include/gnu_java_awt_peer_gtk_GdkFontPeer.h: Regenerated.
1641
1642 2006-12-01  Roman Kennke  <kennke@aicas.com>
1643
1644         * gnu/javax/swing/text/html/css/BorderStyle.java: New class for
1645         handling border styles.
1646         * gnu/javax/swing/text/html/css/BorderWidth.java
1647         (isValid): New method.
1648         * gnu/javax/swing/text/html/css/Length.java
1649         (isValid): New method.
1650         * javax/swing/text/html/CSS.java
1651         (addInternal): Added shorthand parsing for border, padding and
1652         margin.
1653         (parseBackgroundShorthand): Added API docs.
1654         (parsePaddingShorthand): New method. Handles padding shorthand
1655         values.
1656         (parseMarginShorthand): New method. Handles margin shorthand
1657         values.
1658         (parseBorderShorthand): New method. Handles border shorthand
1659         values.
1660         * javax/swing/text/html/StyleSheet.java
1661         (translateHTMLToCSS): Set specific padding attributes.
1662         (BoxPainter.BoxPainter): Don't handle PADDING and MARGIN here.
1663         These shorthands are now handled in CSS.
1664         (BoxPainter.paint): Exclude the outer margin.
1665
1666 2006-12-01  Roman Kennke  <kennke@aicas.com>
1667
1668         * gnu/javax/swing/text/html/css/Length.java
1669         (emBase): New field.
1670         (exBase): New field.
1671         (isFontEMRelative): New field.
1672         (isFontEXRelative): New field.
1673         (Length): Recognize and setup EM and EX relative values.
1674         (getValue): Handle EM and EX relative values.
1675         (isEMRelative): New method.
1676         (isEXRelative): New method.
1677         (setEMBase): New method.
1678         (setEXBase): New method.
1679         (setFontBases): New method.
1680         * gnu/javax/swing/text/html/parser/support/Parser.java
1681         (_handleEmptyTag): Use new isBlock() helper method.
1682         (_handleEndTag_remaining): Use new isBlock() helper method.
1683         (_handleStartTag): Consume whitespace after block start tag.
1684         (Comment): Consume whitespace after a comment.
1685         (isBlock): New helper method.
1686         (readAttributes): Consider all characters in unquoted attribute
1687         values.
1688         * javax/swing/text/html/BlockView.java
1689         (layoutMinorAxis): Use cached span value.
1690         (paint): Added debug code (commented out).
1691         (setPropertiesFromAttributes): Set the EM and EX base on lengths.
1692         * javax/swing/text/html/CSSBorder.java
1693         (CSSBorder): Take StyleSheet as argument. Call getBorderWidth()
1694         with stylesheet.
1695         (getBorderWidth): Set the EM and EX base on the length values.
1696         * javax/swing/text/html/HTMLDocument.java
1697         (HTMLReader.ParagraphAction.end): Do not set the inParagraph field.
1698         (HTMLReader.ParagraphAction.start): Do not set the inParagraph field.
1699         (HTMLReader.inImpliedParagraph): Removed.
1700         (HTMLReader.inParagraph): Removed.
1701         (HTMLReader.parseStack): New field.
1702         (HTMLReader.addContent): Use new paragraph handling.
1703         (HTMLReader.addSpecialElement): Use new paragraph handling.
1704         (HTMLReader.blockClose): Use new paragraph handling.
1705         (HTMLReader.blockOpen): Use new paragraph handling.
1706         (HTMLReader.inImpliedParagraph): New helper method.
1707         (HTMLReader.inParagraph): New helper method.
1708         * javax/swing/text/html/ImageView.java
1709         (attributes): New field. Caches view attributes.
1710         (spans): New field. Caches CSS spans.
1711         (getAttributes): Correctly setup CSS view attributes.
1712         (getPreferredSpan): Use caches spans.
1713         (getStyleSheet): Use the view's getDocument() method.
1714         (setPropertiesFromAttributes): Cache spans and setup EM and EX.
1715         (updateSize): Use cached spans.
1716         * javax/swing/text/html/ParagraphView.java
1717         (setPropertiesFromAttributes): Setup EM and EX.
1718         * javax/swing/text/html/StyleSheet.java
1719         (BoxPainter.BoxPainter): Setup EM and EX correctly.
1720         (getEMBase): New helper method.
1721         (getEXBase): New helper method.
1722         * javax/swing/text/html/TableView.java
1723         (width): New field. Caches the table width.
1724         (calculateMinorAxisRequirements): Use caches span.
1725         (setPropertiesFromAttributes): Cache span and setup EM/EX.
1726         (updateGrid): Correctly setup EM/EX.
1727
1728 2006-11-30  Roman Kennke  <kennke@aicas.com>
1729
1730         * javax/swing/text/html/FormSubmitEvent.java: New class.
1731         * javax/swing/text/html/FormView.java
1732         (SubmitThread): New class for submitting data in a separate thread.
1733         (actionPerformed): Fetch the actual for data.
1734         (addData): New helper method.
1735         (getElementFormData): New helper method.
1736         (getFormData): New helper method.
1737         (getInputFormData): New helper method.
1738         (submitData): Implemented.
1739         * javax/swing/text/html/FrameView.java
1740         (createComponent): Add this as hyperlink listener.
1741         Set the target document as frame document.
1742         (getTopEditorPane): New helper method.
1743         (hyperlinkUpdate): Implementation of the HyperlinkListener interface.
1744         (handleHyperlinkEvent): New helper method.
1745         (handleFormSubmitEvent): New helper method.
1746         * javax/swing/text/html/HTMLDocument.java
1747         (HTMLReader.BaseAction.start): Track the base target.
1748         (HTMLReader.BaseAction.end): Removed.
1749         (baseTarget): New field.
1750         (frameDocument): New field.
1751         (getBaseTarget): New property accessor.
1752         (isFrameDocument): New property accessor.
1753         (processHTMLFrameHyperlinkEvent): Implemented.
1754         (setFrameDocument): New property accessor.
1755         (updateFrame): New helper method.
1756         (updateFrameSet): New helper method.
1757         * javax/swing/text/html/HTMLEditorKit.java
1758         (LinkController.createHyperlinkEvent): Handle frame documents.
1759         (autoFormSubmission): New field.
1760         (HTMLEditorKit): Set autoFormSubmission to true.
1761         (isAutoFormSubmission): New property accessor.
1762         (setAutoFormSubmission): New property accessor.
1763
1764 2006-11-30  Roman Kennke  <kennke@aicas.com>
1765
1766         * javax/swing/text/ElementIterator.java
1767         (ElementRef): New inner class.
1768         (currentDepth): Removed.
1769         (currentElement): Removed.
1770         (previousItem): Removed.
1771         (stack): New field. Holds the iteration stack.
1772         (state): Removed.
1773         (ElementIterator(Document)): Removed init of removed fields.
1774         (ElementIterator(Element)): Removed init of removed fields.
1775         (current): Changed to stack based algorithm.
1776         (deepestLeaf): New helper method.
1777         (depth): Changed to stack based algorithm.
1778         (first): Changed to stack based algorithm.
1779         (next): Changed to stack based algorithm.
1780         (previous): Changed to stack based algorithm.
1781
1782 2006-11-30  Francis Kung  <fkung@redhat.com>
1783
1784         * .settings/org.eclipse.jdt.core.prefs: Set compilar compliance to 1.4.
1785         * .externalToolBuilders/ClasspathJar.launch: Include sun.* classses.
1786
1787 2006-11-30  Francis Kung  <fkung@redhat.com>
1788
1789         * gnu/java/awt/peer/gtk/BufferedImageGraphics.java
1790         (draw): Set transform in buffered composite.
1791         (drawComposite): Do not transform bounds; round bounds.
1792         (drawGlyphVector):  Set transform in buffered composite.
1793         (drawRenderedImage):  Set transform in buffered composite.
1794         (fill):  Set transform in buffered composite.
1795         (updateBufferedImage): Fix scanline & height calculations.
1796         * gnu/java/awt/peer/gtk/CairoGraphics2D.java
1797         (createPath): Simplify width & height calculation.
1798         (drawImage): Also transform width & height.
1799
1800 2006-11-30  Roman Kennke  <kennke@aicas.com>
1801
1802         * javax/swing/text/html/FrameSetView.java: New class. Implements
1803         HTML framesets.
1804         * javax/swing/text/html/FrameView.java: New class. Implements
1805         HTML frames.
1806         * javax/swing/text/html/HTMLDocument.java:
1807         (HTMLReader.addSpecialElement): Only add one artificial space.
1808         * javax/swing/text/html/HTMLEditorKit.java
1809         (HTMLFactory.create): Uncomment code for FrameSetView and FrameView.
1810         * gnu/javax/swing/text/html/parser/support/Parser.java
1811         (_handleEmptyTag): Also consume whitespace after frame tags.
1812
1813 2006-11-30  Gary Benson  <gbenson@redhat.com>
1814
1815         * java/lang/Thread.java: Javadoc fixes.
1816
1817 2006-11-29  Tom Tromey  <tromey@redhat.com>
1818
1819         PR classpath/28203:
1820         * java/lang/Class.java (getAnnotations): Rewrote.
1821
1822 2006-11-29  Tania Bento  <tbento@redhat.com>
1823
1824         * tools/gnu/classpath/tools/appletviewer/TagParser.java:
1825         (parseParams): Unescape 'val' before putting it into the Map.
1826         (unescapeString): New private method.
1827
1828 2006-11-29  Tom Tromey  <tromey@redhat.com>
1829
1830         * tools/gnu/classpath/tools/getopt/package.html: New file.
1831
1832 2006-11-29  David Gilbert  <david.gilbert@object-refinery.com>
1833
1834         * javax/swing/plaf/metal/MetalIconFactory.java
1835         (HorizontalSliderThumbIcon.paintIcon()): Commented out gradient paint,
1836         (VerticalSliderThumbIcon.paintIcon()): Likewise.
1837
1838 2006-11-29  Mario Torre  <neugens@limasoftware.net>
1839
1840         * java/text/NumberFormat.java (getCurrencyInstance): Replaced dollar sign
1841         with the default international currency sign \u00A4.
1842         * java/text/DecimalFormat.java (scanFix): Fix to use the localized symbol
1843         table for string formatting.
1844         (formatInternal): likewise.
1845         (scanNegativePattern): likewise.
1846         (applyPattern): likewise.
1847         * java/text/DecimalFormatSymbols.java (clone): Revert to old version as
1848         Locale is immutable and does not need clone.
1849
1850 2006-11-29  Francis Kung  <fkung@redhat.com>
1851
1852         * gnu/java/awt/peer/gtk/CairoGraphics2D.java
1853         (drawLine): Remove hard-coded pixel shifting.
1854
1855 2006-11-29  Roman Kennke  <kennke@aicas.com>
1856
1857         * java/awt/Component.java
1858         (isShowing): Simplified condition code and avoid unnecessary
1859         if-codepaths.
1860         (coalesceEvents): Always coalesce paint events and let the peer
1861         figure out the expanding of the repaint area.
1862         * gnu/java/awt/peer/swing/SwingComponentPeer.java
1863         (currentPaintEvents): Removed. Replaced by paintArea.
1864         (paintArea): New field. Tracks the dirty area.
1865         (SwingComponentPeer): Removed init of currentPaintEvents.
1866         (coalescePaintEvent): Simplified to only union the dirty regions.
1867         (handleEvent): Paint dirty region that was tracked in paintArea.
1868         * gnu/java/awt/peer/gtk/GtkComponentPeer.java
1869         (paintArea): New field. Tracks the dirty region.
1870         (coalescePaintEvent): Implemented to track the dirty region.
1871         (paintComponent): Use the dirty region in paintArea. Protect
1872         state by putting the paint and dispose code in a try-finally.
1873         (updateComponent): Use the dirty region in paintArea. Protect
1874         state by putting the paint and dispose code in a try-finally.
1875
1876 2006-11-29  Roman Kennke  <kennke@aicas.com>
1877
1878         * java/awt/font/TextLayout.java
1879         (getVisualHighlightShape): Removed debug output.
1880
1881 2006-11-28  Andrew Haley  <aph@redhat.com>
1882
1883         * vm/reference/sun/reflect/misc/ReflectUtil.java
1884         (checkPackageAccess): Implement.
1885
1886 2006-11-28  Dalibor Topic  <robilad@kaffe.org>
1887
1888         * native/jni/java-lang/java_lang_VMDouble.c:
1889         (parseDoubleFromChars) New function. Factored out from ...
1890         (Java_java_lang_VMDouble_parseDouble): Factored out the parsing.
1891         (dtoa_toString): New function. Factored out from ...
1892         (Java_java_lang_VMDouble_toString) : Factored out the conversion.
1893         Changed conversion mode to 2, as modes 0 and 1 don't round
1894         as the API spec demands. Invoke conversion function as often
1895         as necessary with growing precision until a reversible
1896         representation of the double in form of a string is reached.
1897
1898 2006-11-28  Roman Kennke  <kennke@aicas.com>
1899
1900         * javax/swing/JComponent.java
1901         (putClientProperty): Do not fire event when both old and new
1902         value are == null.
1903
1904 2006-11-27  Andrew John Hughes  <gnu_andrew@member.fsf.org>
1905
1906         * java/lang/Enum.java:
1907         Make name and ordinal final.
1908         
1909 2006-11-27  Casey Marshall  <csm@gnu.org>
1910
1911         * java/util/jar/JarEntry.java (certs): removed.
1912         (jarfile): new field.
1913         (getCertificates): read the certificates from the containing JarFile.
1914         * java/util/jar/JarFile.java (JarEnumeration.nextElement): don't
1915         fill in 'certs,' fill in 'jarfile' for the entry.
1916         (getEntry): likewise.
1917         
1918 2006-11-27  Francis Kung  <fkung@redhat.com>
1919
1920         * java/awt/image/WritableRaster.java
1921         (createChild): Implemented.
1922
1923 2006-11-27  Roman Kennke  <kennke@aicas.com>
1924
1925         * java/awt/font/TextLayout.java
1926         (TextLayout(TextLayout,int,int)): Also layout the new runs.
1927         (getVisualHighlightShape): Implemented.
1928         (layoutRuns): Fixed boundary so that the last run is also laid out.
1929         (left): New helper method.
1930         (right): New helper method.
1931
1932 2006-11-27  Roman Kennke  <kennke@aicas.com>
1933
1934         * java/awt/font/TextLayout.java
1935         (getCaretShape(TextHitInfo,Rectangle2D)): Implemented.
1936         (getCaretShape(TextHitInfo)): Use natural bounds.
1937         (getCaretShapes(int,Rectangle2D,CaretPolicy)): New API method.
1938         (getCaretShapes(int,Rectangle2D)): Delegate to new method
1939         above with DEFAULT_CARET_POLICY.
1940         (getCaretShapes(int)): Use natural bounds.
1941
1942 2006-11-27  Roman Kennke  <kennke@aicas.com>
1943
1944         * java/awt/font/TextLayout.java
1945         (Run.font): New field.
1946         (Run.location): New field.
1947         (Run.Run): Initialize font.
1948         (font): Removed field. This is moved into Run as the actual font
1949         is something run-specific.
1950         (TextLayout(String,Font,FontRenderContext)): Set font on the
1951         single runs. Layout the runs here.
1952         (TextLayout(TextLayout,int,int)): Copy over the run fonts.
1953         (findRunAtIndex): New helper method.
1954         (getCaretInfo): Implemented.
1955         (layoutRuns): New helper method.
1956         (toString): Don't put font in output string.
1957
1958 2006-11-27  Raif S. Naffah  <classpath@naffah-raif.name>
1959
1960         * AUTHORS: Added Jeroen Fritjers.
1961
1962 2006-11-27  neugens  <neugens@nirvana.limasoftware.net>
1963
1964         * java/text/DecimalFormat.java (formatInternal): Add an explicit test
1965         for FieldPosition to be null.
1966         Check if the factional part is just 0 and can be omitted from the
1967         result.
1968         (scanNegativePattern): Fixed index out of bound exception when searching
1969         for international currency symbol in negative pattern.  
1970
1971 2006-11-27  Andrew John Hughes  <gnu_andrew@member.fsf.org>
1972
1973         * java/beans/beancontext/BeanContextSupport.java:
1974         (readObject(ObjectInputStream)): Implemented.
1975         (writeObject(ObjectOutputStream)): Likewise.
1976         (BCSChild.getTargetChild()): Added.
1977         (bcsPreDeserializationHook()): Implemented.
1978         (bcsPreSerializationHook()): Likewise.
1979         (childDeserializedHook(Object,BCSChild)): Likewise.
1980         (isSerializing()): Likewise.
1981         (readChildren(ObjectInputStream)): Likewise.
1982         (writeChildren(ObjectOutputStream)): Likewise.
1983         
1984 2006-11-26  Roger Sayle  <roger <at> eyesopen.com>
1985             Ian Lance Taylor  <ian <at> airs.com>
1986             Paolo Bonzini <bonzini <at> gnu.org>
1987
1988         Fixes bug #25557.
1989
1990         * lib/gen-classlist.sh.in:  Avoid using test's -ef operator for
1991         increased portability.  Likewise, use -f instead of -e.
1992
1993 2006-11-26  Mark Wielaard  <mark@klomp.org>
1994
1995         * lib/Makefile.am (propertydirs): Removed.
1996         (resources): Explicitly create all dirs.
1997
1998 2006-11-26  Mark Wielaard  <mark@klomp.org>
1999
2000         * gnu/java/net/PlainSocketImpl.java (accept): Reset timeout on Socket.
2001
2002 2006-11-26  Dalibor Topic  <robilad@kaffe.org>
2003
2004         * native/target/.cvsignore,
2005         native/target/generic/.cvsignore,
2006         native/target/Linux/.cvsignore:
2007         Removed no longer used files.
2008
2009         * native/target: Removed no longer used directory.
2010
2011 2006-11-26  Dalibor Topic  <robilad@kaffe.org>
2012
2013         Fixes bug #29133.
2014
2015         * libraries/clib/nio/gnu_java_nio_VMSelector.c
2016         (Java_gnu_java_nio_VMSelector_select):
2017         Use strerror if strerror_r is not available.
2018
2019         Reported by:  Michael Franz <mvfranz@gmail.com>,
2020                       Riccardo Mottola <zuse@libero.it>
2021
2022 2006-11-26  Dalibor Topic  <robilad@kaffe.org>
2023
2024         Fixes bug #26756.
2025         
2026         * native/jni/midi-dssi/Makefile.am (AM_CFLAGS): Removed 
2027         STRICT_WARNING_CFLAGS since it caused the build to fail 
2028         on GNU/Linux.
2029
2030 2006-11-26  Ian Rogers  <ian.rogers@manchester.ac.uk>
2031
2032         * doc/vmintegration.texinfo: Update VM Threading Model section.
2033
2034 2006-11-26  Tom Tromey  <tromey@redhat.com>
2035
2036         * native/jni/java-net/java_net_VMNetworkInterface.c: Conditionally
2037         include ifaddrs.h.
2038         (Java_java_net_VMNetworkInterface_getVMInterfaces): Updated
2039         conditional.
2040         * native/jni/java-net/gnu_java_net_VMPlainSocketImpl.c:
2041         Conditionally include ifaddrs.h.
2042         (getif_address): Updated conditional.
2043         (getif_index): Likewise.
2044         * configure.ac: Check for ifaddrs.h.
2045
2046 2006-11-25  Mark Wielaard  <mark@klomp.org>
2047
2048         * java/io/File.java (list): Return empty list for unreadable dirs.
2049
2050 2006-11-25  Mark Wielaard  <mark@klomp.org>
2051
2052         * gnu/java/awt/peer/gtk/CairoGraphics2D.java (drawGlyphVector):
2053         Synchronize on font peer.
2054         (setFont): Likewise.
2055         * gnu/java/awt/peer/gtk/GdkFontPeer.java (getFontMetrics): Mark
2056         synchronized.
2057         (getTextMetrics): Likewise.
2058
2059 2006-11-25  Roman Kennke  <kennke@aicas.com>
2060
2061         * javax/swing/text/GapContent.java
2062         (getPositionsInRange): Rewritten to use the more efficient
2063         binary search searchFirst() and avoid an NPE that was caused
2064         by GC'ed positions.
2065
2066 2006-11-25  Mark Wielaard  <mark@klomp.org>
2067
2068         * javax/swing/text/CompositeView.java (modelToView): Never return
2069         null.
2070
2071 2006-11-25  Mark Wielaard  <mark@klomp.org>
2072
2073         * javax/swing/text/html/TableView.java (calculateColumnRequirements):
2074         Check whether rowView instanceof RowView.
2075         (updateGrid): Likewise.
2076
2077 2006-11-25  Mario Torre  <neugens@nirvana.limasoftware.net>
2078
2079         PR28462
2080         * java/text/DecimalFormat.java: Almost new rewrite, and update to 1.5.
2081         * java/text/NumberFormat.java (format): all format methods, fixed
2082         FieldPosition argument should never be null.
2083         (format(Object, StringBuffer, FieldPosition)): fixed signature,
2084         method is not final.
2085         * java/text/DecimalFormatSymbols.java (clone): fixed to also clone
2086         locale.
2087         * AUTHORS: added my name to the file.
2088
2089 2006-11-25  Mark Wielaard  <mark@klomp.org>
2090
2091         * javax/swing/text/html/StyleSheet.java (paint): Guard against
2092         getChildAllocation() returning null.
2093
2094 2006-11-25  Mark Wielaard  <mark@klomp.org>
2095
2096         * gnu/javax/swing/text/html/css/Selector.java (calculateSpecificity):
2097         Use clazzIndex for id substring.
2098
2099 2006-11-25  Mark Wielaard  <mark@klomp.org>
2100
2101         * java/awt/EventQueue.java (pop): Only terminate dispatchThread when
2102         it is still running.
2103
2104 2006-11-25  Mark Wielaard  <mark@klomp.org>
2105
2106         Fixes bug #28822
2107         * doc/api/Makefile.am (create_html): Guard GJDOC invocation with
2108         CREATE_API_DOCS
2109
2110 2006-11-24  Tania Bento  <tbento@redhat.com>
2111
2112         * java/awt/font/TextHitInfo.java
2113         (equals(TextHitInfo)): If TextHitInfo parameter is null, return false.
2114         (beforeOffset): Decreased first parameter by 1.
2115
2116 2006-11-24  Francis Kung  <fkung@redhat.com>
2117
2118         * gnu/java/awt/peer/gtk/BufferedImageGraphics.java
2119         (constructor): Check sample model when setting fastCM flag.
2120         (updateBufferedImage): Check scanline and sample model offsets before
2121         copying data directly into the image data buffer.
2122
2123 2006-11-24  Francis Kung  <fkung@redhat.com>
2124
2125         * gnu/java/awt/java2d/QuadSegment.java
2126         (offsetSubdivided): Handle special straight-line cases.
2127
2128 2006-11-24  Roman Kennke  <kennke@aicas.com>
2129
2130         * java/awt/dnd/DropTarget.java
2131         (DropTargetAutoScroller.HYSTERESIS): New constant.
2132         (DropTargetAutoScroller.DELAY): New constant.
2133         (DropTargetAutoScroller.inner): New field. A cached
2134         Rectangle instance.
2135         (DropTargetAutoScroller.outer): New field. A cached
2136         Rectangle instance.
2137         (DropTargetAutoScroller.timer): New field. The actual timer.
2138         (DropTargetAutoScroller.DropTargetAutoScroller):
2139         Initialize timer.
2140         (DropTargetAutoScroller.actionPerformed): Implemented.
2141         (DropTargetAutoScroller.stop): Implemented.
2142         (DropTargetAutoScroller.updateLocation): Implemented.
2143         (clearAutoscroll): Stop the autoscroller before nullifying it.
2144         (createDropTargetAutoScroller): Don't set the field here,
2145         only return a new instance.
2146         (dragEnter): Only do something when active. Initialize
2147         auto scrolling.
2148         (dragExit): Only do something when active. Stop auto scrolling.
2149         (dragOver): Only do something when active. Update auto scrolling.
2150         (drop): Only do something when active. Update auto scrolling.
2151         (dropActionChanged): Only do something when active. Update
2152         auto scrolling.
2153         (initializeAutoScrolling): Check if component is an instance
2154         of Autoscroll, otherwise do nothing.
2155         (setActive): Disable autoscrolling when deactivating.
2156         (setComponent): When component is set to null, disable autoscrolling.
2157
2158 2006-11-24  David Gilbert  <david.gilbert@object-refinery.com>
2159
2160         * java/beans/beancontext/BeanContextServicesSupport.java
2161         (getChildBeanContextServicesListener): Implemented.
2162
2163 2006-11-23  Roman Kennke  <kennke@aicas.com>
2164
2165         * gnu/java/awt/peer/headless/HeadlessGraphicsEnvironment.java
2166         (createGraphics): Use constructor to create new instance of
2167         BufferedImageGraphics.
2168         * java/awt/Toolkit.java
2169         (getDefaultToolkit): Really try to get a real toolkit. Only
2170         use HeadlessToolkit if no other is available.
2171         * gnu/java/awt/peer/gtk/GtkToolkit.java
2172         (checkHeadless): New helper method. Checks for headless environment
2173         and throws HeadlessException if appropriate.
2174         (createButton): Check for headless.
2175         (createCanvas): Check for headless.
2176         (createCheckbox): Check for headless.
2177         (createCheckboxMenuItem): Check for headless.
2178         (createChoice): Check for headless.
2179         (createDialog): Check for headless.
2180         (createDragGestureRecognizer): Check for headless.
2181         (createDragSourceContextPeer): Check for headless.
2182         (createEmbeddedWindow): Check for headless.
2183         (createFileDialog): Check for headless.
2184         (createFrame): Check for headless.
2185         (createCheckbox): Check for headless.
2186         (createLabel): Check for headless.
2187         (createList): Check for headless.
2188         (createMenu): Check for headless.
2189         (createMenuBar): Check for headless.
2190         (createMenuItem): Check for headless.
2191         (createPanel): Check for headless.
2192         (createPopupMenu): Check for headless.
2193         (createScrollbar): Check for headless.
2194         (createScrollPane): Check for headless.
2195         (createTextArea): Check for headless.
2196         (createTextField): Check for headless.
2197         (createWindow): Check for headless.
2198
2199 2006-11-23  David Gilbert  <david.gilbert@object-refinery.com>
2200
2201         * java/beans/beancontext/BeanContextSupport.java
2202         (deserialize): Implemented,
2203         (serialize): Implemented.
2204
2205 2006-11-23  Roman Kennke  <kennke@aicas.com>
2206
2207         * gnu/java/awt/peer/headless/HeadlessGraphicsEnvironment.java
2208         (createGraphics): Try to use Cairo graphics if available.
2209
2210 2006-11-22  David Gilbert  <david.gilbert@object-refinery.com>
2211
2212         * java/beans/beancontext/BeanContextSupport.java
2213         (toArray): Added API docs,
2214         (toArray(Object[])): Added API docs, removed NotImplementedException.
2215
2216 2006-11-22  Tania Bento  <tbento@redhat.com>
2217
2218         * javax/swing/JRootPane.java
2219         (setLayeredPane): Added documentation; throw 
2220         IllegalComponentStateException if layered pane parameter is null.
2221
2222 2006-11-22  David Gilbert  <david.gilbert@object-refinery.com>
2223
2224         * java/beans/beancontext/BeanContextSupport.java
2225         (avoidingGui): Removed NotImplementedException.
2226
2227 2006-11-22  Francis Kung  <fkung@redhat.com>
2228
2229         * gnu/java/awt/peer/gtk/BufferedImageGraphics.java
2230         (drawGlyphVector): Clip updated area to glyph bounds.
2231         * gnu/java/awt/peer/gtk/CairoGraphics2D.java
2232         (createPath): Eliminate distortion when pixel-shifting rectangles; separate
2233         x-coordinate and y-coordinate pixel shifting.
2234         (shifted): Removed method.
2235         (shiftX): New method, recognising scaling transforms.
2236         (shiftY): New method, recognising scaling transforms.
2237         (walkPath): Separate x-coordinate and y-coordinate pixel shifting.
2238
2239 2006-11-22  Roman Kennke  <kennke@aicas.com>
2240
2241         * java/awt/font/TextLayout.java
2242         (hash): New field. Caches the hash code.
2243         (hashCode): Implemented.
2244
2245 2006-11-22  Roman Kennke  <kennke@aicas.com>
2246
2247         * java/awt/image/ImageFilter.java
2248         Reformat whole class.
2249         (getFilterInstance): Don't touch the consumer field. Don't check
2250         consumer.
2251         (imageComplete): Don't check consumer.
2252         (setColorModel): Don't check consumer.
2253         (setDimensions): Don't check consumer.
2254         (setHints): Don't check consumer.
2255         (setPixels): Don't check consumer.
2256         (setProperties): Pass the original property too.
2257         * java/awt/image/IndexColorModel.java
2258         (IndexColorModel(int,int,byte[],byte[],byte[],int)): Set the
2259         transparent pixel by calling the new helper method.
2260         (IndexColorModel(int,int,byte[],int,boolean,int)): Set the
2261         transparent pixel by calling the new helper method.
2262         (IndexColorModel(int,int,int[],int,boolean,int,int)): Set the
2263         transparent pixel by calling the new helper method.
2264         (coerceData): Removed. This is not needed.
2265         (getAlpha): Simply return value from color map. The transparent
2266         pixel has to be there.
2267         (setTransparentPixel): New helper method. Inserts the transparent
2268         pixel.
2269         * java/awt/image/RGBImageFilter.java
2270         Reformat whole class.
2271         (convertColorModelToDefault): Removed. No longer needed.
2272         (filterIndexColorModel): Don't handle transparent pixels
2273         separately.
2274         (filterRGBPixels): Set pixels on consumer already.
2275         (makeColor): Removed. No longer needed.
2276         * java/awt/image/ReplicateScaleFilter.java
2277         (replicatePixels): Removed.
2278         (setDimension): Correctly compute destination size, avoid double
2279         calculations.
2280         (setPixels): Avoid double calculations. Fixed some boundary cases.
2281         (setupSources): New helper method.
2282         * java/awt/image/SampleModel.java
2283         (setDataElements): Also handle TYPE_SHORT, TYPE_FLOAT
2284         and TYPE_DOUBLE.
2285         * java/awt/image/SinglePixelPackedSampleModel.java
2286         (setDataElements(int,int,int,int,Object,DataBuffer)): Removed.
2287         This is not needed as the superclass already copies line
2288         by line.
2289         (setDataElements(int,int,Object,DataBuffer)): Simplified code,
2290         removed some checks that the RI also doesn't perform. Call
2291         DataBuffer.setElem().
2292
2293 2006-11-22  Roman Kennke  <kennke@aicas.com>
2294
2295         * java/awt/text/TextLayout.java
2296         (getLogicalRangesForVisualSelection): Implemented.
2297
2298 2006-11-21  Andrew John Hughes  <gnu_andrew@member.fsf.org>
2299
2300         * sun/reflect/annotation/AnnotationParser.java,
2301         * sun/reflect/annotation/AnnotationType.java,
2302         * sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.java,
2303         * sun/reflect/annotation/ExceptionProxy.java:
2304         Stubbed.
2305         * sun/misc/ServiceConfigurationError.java,
2306         * sun/misc/Service.java:
2307         Implemented.
2308         
2309 2006-11-21  Roman Kennke  <kennke@aicas.com>
2310
2311         * java/awt/text/TextLayout.java
2312         (Run.isLeftToRight): New helper method.
2313         (logicalToVisual): New field. Maps logical indices to visual
2314         indices.
2315         (visualToLogical): New field. Maps visual indices to logical
2316         indices.
2317         (TextLayout): Setup mappings.
2318         (setupMappings): New method for setting up the mappings.
2319         (getCharacterLevel): Reorganized code.
2320         (getNextLeftHit(int)): Implemented.
2321         (getNextLeftHit(int,CaretPolicy)): New method.
2322         (getNextLeftHit(TextHitInfo)): Implemented.
2323         (getNextRightHit(int)): Implemented.
2324         (getNextRightHit(int,CaretPolicy)): New method.
2325         (getNextRightHit(TextHitInfo)): New method.
2326         (getVisualOtherHit): Implemented.
2327         (checkHitInfo): New helper methods for checking parameters.
2328         (hitToCaret): New helper method. Maps hit infos to caret locations.
2329         (caretToHit): New helper method. Maps caret locations to hit infos.
2330         (isCharacterLTR): New helper method.
2331         (CaretPolicy.getStrongCaret): Implemented.
2332
2333 2006-11-21  Francis Kung  <fkung@redhat.com>
2334
2335         * gnu/java/awt/peer/gtk/BufferedImageGraphics.java
2336         (draw): Include stroke width when calculating bounds.
2337         (updateBufferedImage): Round bounds more generously, handle negative
2338         height/width values, and clip more intelligently.
2339         * gnu/java/awt/peer/gtk/CairoGraphics2D.java
2340         (createPath): Add shortcut optimization for lines.
2341         (draw): Include stroke width when calculating bounds.
2342         (drawLine): Delegate to main draw() method.
2343         (drawRect): Likewise.
2344         (fillRect): Delegate to main fill() method.
2345         (findStrokedBounds): New method.
2346         (setCustomPaint): Round bounds more generously.
2347         * gnu/java/awt/peer/gtk/ComponentGraphics.java
2348         (drawLine): Removed.
2349         (drawRect): Removed.
2350         (fillRect): Removed.
2351
2352 2006-11-21  Francis Kung  <fkung@redhat.com>
2353
2354         * gnu/java/awt/java2d/TexturePaintContext.java
2355         (getRaster): Handle negative coordinate values.
2356         * gnu/java/awt/peer/gtk/CairoGraphics2D.java
2357         (setPaint): Moved custom paint processing to a new method.
2358         (setPaintPixels): Added x, y parameters.
2359         (getRealBounds): Added documentation.
2360         (copy): Copy clipping information.
2361         (drawLine): Process custom paints.
2362         (setCustomPaint): New method.
2363         (fill): Process custom paints.
2364         (drawGlyphVector): Process custom paints.
2365         (drawRect): Process custom paints.
2366         (draw): Process custom paints.
2367         * gnu/java/awt/peer/gtk/CairoSurface.java
2368         (cairoCM_opaque): New constant.
2369         * gnu/java/awt/peer/gtk/BufferedImageGraphics.java
2370         (argb32): Removed constant.
2371         (rgb32): Removed constant.
2372         (BufferedImageGraphics(BufferedImage)): Updated constant names.
2373         (BufferedImageGraphics(BufferedImageGraphics)): Copy color model flags.
2374         (updateBufferedImage): Transform to device-space before updating.
2375         * include/gnu_java_awt_peer_gtk_CairoGraphics2D.h
2376         (Java_gnu_java_awt_peer_gtk_CairoGraphics2D_setPaintPixels): Added x, y
2377         parameters.
2378         * native/jni/gtk-peer/gnu_java_awt_peer_gtk_CairoGraphics2D.c
2379         (Java_gnu_java_awt_peer_gtk_CairoGraphics2D_setPaintPixels): Set pattern
2380         source at designated x, y origin.
2381
2382 2006-11-21  Roman Kennke  <kennke@aicas.com>
2383
2384         * java/awt/text/TextLayout.java
2385         (Run): New inner helper class.
2386         (length): New field.
2387         (naturalBounds): New field.
2388         (offset): New field.
2389         (runIndices): Removed. This is now encapsulate in a Run object.
2390         (runs): Changed to Run[].
2391         (string): Changed to char[].
2392         (totalAdvance): New field. Caches advance value.
2393         (TextLayout(String,Font,FontRenderContext)): Change to store
2394         string as char[] and run layout as Run[]. Clean out empty
2395         run items.
2396         (TextLayout(TextLayout,int,int)): Change to store
2397         string as char[] and run layout as Run[].
2398         (clone): Call private constructor for maximum efficiency.
2399         (determineWhitespace): Adapted to use char[] data.
2400         (draw): Adapted to use Run objects.
2401         (getAdvance): Cache computed total advance.
2402         (getBlackBoxBounds): Adapted to use Run objects.
2403         (getCaretInfo): Use natural layout bounds.
2404         (getCharacterCount): Return length field.
2405         (getLogicalHighlightShape): Adapted to use Run objects.
2406         (getNaturalBounds): New helper method. Calculates and returns the
2407         natural bounds of this text layout.
2408         (getOutline): Adapted to use Run objects.
2409         (getStringProperties): Adapted to use char[] data.
2410         (getVisibleAdvance): Adapted to use char[] and Run data.
2411         (handleJustify): Adapted to use char[] and Run data.
2412         (hitTestChar(float,float,Rectangle2D)): Implemented.
2413         (hitTestChar(float,float)): Use natural bounds.
2414         (setCharIndices): Adapted to use char[] and Run data.
2415         (toString): Adapted to use char[] and Run data.
2416         * java/text/Bidi.java
2417         (requiresBidi): Exclude paragraph separators from bidi-triggers.
2418
2419 2006-11-21  Roman Kennke  <kennke@aicas.com>
2420
2421         * gnu/java/awt/peer/gtk/GdkFontMetrics.java:
2422         Removed. This is now an inner class in GdkFontPeer.
2423         * gnu/java/awt/peer/gtk/CairoGraphics2D.java
2424         (drawString(float,float)): Use text layout cache from
2425         GdkFontPeer.
2426         (getFontMetrics): Delegate to GdkFontPeer.
2427         * gnu/java/awt/peer/gtk/FreetypeGlyphVector.java
2428         (getGlyphCodes): Also check array size.
2429         (getGlyphPositions): Also check array size.
2430         * gnu/java/awt/peer/gtk/GdkFontPeer.java
2431         (GdkFontLineMetrics.fm): Removed.
2432         (GdkFontLineMetrics.strikeThroughOffset): Removed.
2433         (GdkFontLineMetrics.strikeThroughThickness): Removed.
2434         (GdkFontLineMetrics.underlineOffset): Removed.
2435         (GdkFontLineMetrics.underlineThickness): Removed.
2436         (GdkFontLineMetrics.GdkFontLineMetrics): Don't take
2437         FontMetrics argument. Don't init removed fields.
2438         (GdkFontLineMetrics.getAscent): Return font peer's field.
2439         (GdkFontLineMetrics.getDescent): Return font peer's field.
2440         (GdkFontLineMetrics.getHeight): Return font peer's field.
2441         (GdkFontLineMetrics.getLeading): Return font peer's field.
2442         (GdkFontLineMetrics.getNumChars): Reformat.
2443         (GdkFontLineMetrics.getStrikeThroughOffset): Return half ascent.
2444         (GdkFontLineMetrics.getStrikeThroughThickness): Return 1.
2445         (GdkFontLineMetrics.getUnderlineOffset): Return font peer's field.
2446         (GdkFontLineMetrics.getUnderlineThickness): Return font peer's field.
2447         (GdkFontMetrics): Moved class in here as inner class. 
2448         Make it use the font peer's fields and for the char(s) width
2449         and string width method, use TextLayout to measure the actual widths.
2450         (ascent): New field.
2451         (bundle): Removed.
2452         (DEFAULT_CTX): New constant field.
2453         (descent): New field.
2454         (FONT_METRICS_ASCENT): New constant.
2455         (FONT_METRICS_DESCENT): New constant.
2456         (FONT_METRICS_HEIGHT): New constant.
2457         (FONT_METRICS_MAX_ADVANCE): New constant.
2458         (FONT_METRICS_MAX_ASCENT): New constant.
2459         (FONT_METRICS_MAX_DESCENT): New constant.
2460         (FONT_METRICS_UNDERLINE_OFFSET): New constant.
2461         (FONT_METRICS_UNDERLINE_THICKNESS): New constant.
2462         (height): New field.
2463         (maxAdvance): New field.
2464         (maxAscent): New field.
2465         (maxDescent): New field.
2466         (metrics): New field. Stores a FontMetrics for this font.
2467         (textLayoutCache): New field. Caches TextLayout instances.
2468         (underlineOffset): New field.
2469         (underlineThickness): New field.
2470         (cinit): Don't initialize resource bundle.
2471         (GdkFontPeer): Setup the metrics.
2472         (getFontMetrics): Return stored metrics if possible.
2473         (getLineMetrics): Adapt to new constructor.
2474         (initFont): New helper method.
2475         (setupMetrics): New helper method.
2476         * gnu/java/awt/peer/gtk/GtkToolkit.java
2477         (LRUCache): Made class a static class.
2478         (getFontMetrics): Delegate to GdkFontPeer.
2479         * native/jni/gtk-peer/gdkfont.h
2480         Added new constant defines.
2481         * native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c
2482         (getFontMetrics): Rewritten to fetch the font metrics from
2483         FreeType.
2484
2485 2006-11-20  Tania Bento  <tbento@redhat.com>
2486
2487         * javax/swing/ButtonGroup.java:
2488         (setSelected): Select the ButtonModel if all conditions
2489         are met.
2490
2491 2006-11-20  Tania Bento  <tbento@redhat.com>
2492
2493         * javax/swing/JSlider.java:
2494         (updateLabelUIs): Removed casting.
2495
2496 2006-11-20  Mark Wielaard  <mark@klomp.org>
2497
2498         * gnu/java/util/regex/RE.java (messages): Don't initialize.
2499         (bundle): New static final String field.
2500         (getLocalizedMessage): Initialize messages when still null.
2501         * gnu/java/util/regex/RESyntax.java (SYNTAX_IS_FINAL): Removed.
2502         (set): Use RE.getLocalizedMessage().
2503         (clear): Likewise.
2504         (setLineSeparator): Likewise.
2505
2506 2006-11-20  Roman Kennke  <kennke@aicas.com>
2507
2508         * javax/swing/text/html/StyleSheet.java
2509         (linked): New field.
2510         (styleSheet): Replaced by linked.
2511         (addStyleSheet): Use an arraylist for simplicity.
2512         (getRule): Removed useless instantiation.
2513         (getStyleSheets): Convert array list to array.
2514         (removeStyleSheet): Use an arraylist for simplicity.
2515         (resolveStyle): Include styles from linked lists.
2516
2517 2006-11-20  Roman Kennke  <kennke@aicas.com>
2518
2519         * javax/swing/text/BoxView.java
2520         (BoxView): Initialize with invalid req's.
2521         (forwardUpdate): Trigger repaint when children changed the
2522         major axis.
2523         (getResizeWeight): Return resizable when the pref differs from
2524         the min or the pref differs from the max size.
2525         (layoutMajorAxis): Actually sum up the preferred sizes.
2526         (paint): Made binary search more robust.
2527         (replace): Let arrays shrink when needed.
2528         (replaceLayoutArray): Let arrays shrink when needed.
2529         (setAxis): Trigger preferenceChanged.
2530         * javax/swing/text/CompositeView.java
2531         (getInsideAllocation): Call insets method to take account
2532         of overriding subclasses.
2533         * javax/swing/text/DefaultStyledDocument.java
2534         (ElementBuffer.finishEdit): Clear the stack and edits buffer.
2535         (ElementBuffer.insertUpdate): Only remove the found element, not
2536         all.
2537         * javax/swing/text/GlyphView.java
2538         (insertUpdate): Pass null in preferenceChanged.
2539         (removeUpdate): Pass null in preferenceChanged.
2540         (changedUpdate): Pass null in preferenceChanged.
2541         * javax/swing/text/Utilities.java
2542         (drawTabbedText): Avoid single calls to charWidth() and instead
2543         call charsWidth() on whole chunks.
2544         * javax/swing/text/html/HTMLDocument.java
2545         (BlockElement.getName): Fall back to super when necessary.
2546         (RunElement.getName): Fall back to super when necessary.
2547         (HTMLReader.MAX_THRESHOLD): New constant field.
2548         (HTMLReader.GROW_THRESHOLD): New constant field.
2549         (HTMLReader.theshold): New field.
2550         (HTMLReader.HTMLReader): Fetch threshold from document.
2551         (HTMLReader.addContent): Sucessivly grow the threshold.
2552         (createLeafElement): Don't create two elemens and don't set
2553         attribute.
2554         * javax/swing/text/html/TableView.java
2555         (RowView.replace): Invalidate grid.
2556         (gridValid): Made package private.
2557         (layoutMinorAxis): Mark all rows as invalid.
2558         (replace): Invalidate grid.
2559
2560 2006-11-20  Roman Kennke  <kennke@aicas.com>
2561
2562         * javax/swing/text/AbstractDocument.java
2563         (DefaultDocumentEvent.changes): Changed to be a HashMap.
2564         (DefaultDocumentEvent.modified): Made private.
2565         (DefaultDocumentEvent.THRESHOLD): New constant field.
2566         (DefaultDocumentEvent.DefaultDocumentEvent): Don't initialize
2567         changes table.
2568         (DefaultDocumentEvent.addEdit): Switch to hashmap only when
2569         exceeding threshold.
2570         (DefaultDocumentEvent.getChange): Use iterative approach
2571         when we have no hashmap yet.
2572         (documentCV): Removed.
2573         (numWriters): Renamed from numWritersWaiting.
2574         (createPosition): Reformat.
2575         (getCurrentWriter): Synchronized.
2576         (readLock): Implement more straightforward.
2577         (readUnlock): Implement more straightforward.
2578         (writeLock): Implement more straightforward.
2579         (writeUnlock): Implement more straightforward.
2580         (remove): Write-lock here.
2581         (removeImpl): Don't write-lock here.
2582
2583 2006-11-20  Roman Kennke  <kennke@aicas.com>
2584
2585         * javax/swing/JEditorPane.java
2586         (setPage): Set priority on loading thread.
2587
2588 2006-11-20  Roman Kennke  <kennke@aicas.com>
2589
2590         * javax/swing/plaf/basic/BasicTextUI.java
2591         (RootView.paint): Avoid allocation.
2592         (cachedInsets): New field. Caches an Insets instance.
2593         (getNextVisualPositionFrom): Read-lock the document to avoid
2594         thread nastiness. Push allocation.
2595         (getPreferredSize): Push fake allocation when not yet laid out.
2596         (getVisibleEditorRect): Use cached insets.
2597         (viewToModel): Read-lock the document to avoid
2598         thread nastiness. Push allocation.
2599
2600 2006-11-20  Roman Kennke  <kennke@aicas.com>
2601
2602         * javax/swing/text/StyleContext.java
2603         (attributeSetPool): Synchronize this map.
2604         (addAttribute): Synchronize this method.
2605         (addAttributes: Synchronize this method.
2606         (readObject): Install synchronized map on target object.
2607         (removeAttribute): Synchronize this method.
2608         (removeAttributes): Synchronize this method.
2609         (removeAttributes): Synchronize this method.    
2610         
2611 2006-11-20  Roman Kennke  <kennke@aicas.com>
2612
2613         * javax/swing/text/GapContent.java
2614         (GapContentPosition.GapContentPosition): Removed constructor.
2615         (Mark): Made subclass of WeakReference to refer directly to
2616         the associated position.
2617         (Mark.refCount): Removed.
2618         (Mark.Mark(int,GapContentPosition,ReferenceQueue):
2619         New constructor. Used to reference a position and register the
2620         reference queue.
2621         (Mark.Mark(index)): Call super and don't adjust mark offset.
2622         (Mark.compareTo): Removed.
2623         (Mark.equals): Removed.
2624         (Mark.getOffset): Return at least null. Removed assert.
2625         (Mark.getPosition): New helper method.
2626         (garbageMarks): New field.
2627         (positions): Removed.
2628         (searchMark): New field.
2629         (GapContent): Removed init of positions map.
2630         (addImpl): New helper method.
2631         (adjustPositionsInRange): Removed.
2632         (compare): New helper method.
2633         (createPosition): Rewritten for new datastructures. This now
2634         performs a much more efficient binary search for finding
2635         a position at the requested offste.
2636         (garbageCollect): Rewritten to collect unused marks.
2637         (getPositionsInRange): Adjusted for new data structures.
2638         (removeImpl): New helper method.
2639         (replace): Use new addImpl() and removeImpl() helper method for
2640         correctly adjusting the positions and gap.
2641         (search): Rewritten. Implements a more suitable binary search.
2642         (searchFirst): New helper method.
2643         (setPositionsInRange): Removed.
2644         (shiftEnd): Update the marks here.
2645         (shiftGap): Update the marks here.
2646         (shiftGapEndUp): Update the marks here.
2647         (shiftGapStartDown): Update the marks here.
2648
2649 2006-11-20  Marco Trudel <mtrudel@gmx.ch>
2650
2651         * java/util/jar/JarFile.java (digestAlgorithms): New field used to cache
2652         digest algorithm implementations.
2653         (readSignatures): Parse the manifest once and reuse that data.
2654         Add support for line breaks.
2655         (verifyHashes): Use the parsed manifest entry.
2656         (readManifestEntry): Removed.
2657
2658 2006-11-20  Andrew John Hughes  <gnu_andrew@member.fsf.org>
2659
2660         * java/beans/beancontext/BeanContextServicesSupport.java:
2661         Added more documentation.
2662         (addService(Class,BeanContextServiceProvider,boolean)):
2663         Synchronized over global hierarchy lock.
2664         (bcsPreDeserializationHook(ObjectInputStream)): Implemented.
2665         (bcsPreSerializationHook(ObjectOutputStream)): Implemented.
2666         (childJustRemovedHook(Object,BCSChild)): Implemented.
2667         (createBCSSServiceProvider(Class,BeanContextServiceProvider)):
2668         Implemented.
2669         (fireServiceRevoked(BeanContextServiceRevokedEvent)):
2670         Added revocation-only listeners.
2671         (getBeanContextServicesPeer()): Implemented.
2672         (getCurrentServiceClasses(Class)): Synchronized over global
2673         hierarchy lock.
2674         (getCurrentServiceSelectors(Class)): Synchronized over global
2675         hierarchy lock, and fixed FIXME.
2676         (getService(BeanContextChild,Object,Class,Object,
2677         BeanContextServiceRevokedListener)): Implemented.
2678         (hasService(Class)): Synchronized over global hierarchy lock.
2679         (releaseService(BeanContextChild,Object,Object)): Implemented.
2680         (revokeService(Class,BeanContextServiceProvider,boolean)): Implemented.
2681         * java/beans/beancontext/BeanContextSupport.java:
2682         (remove(Object, boolean)): Documentation correction.
2683         
2684 2006-11-19  Roman Kennke  <kennke@aicas.com>
2685
2686         * javax/swing/JEditorPane.java
2687         (PageStream): New inner class.
2688         (PageLoader): New inner class.
2689         (loading): New field.
2690         (setPage): Implemented asynchronous loading.
2691         * javax/swing/text/DefaultStyledDocument.java
2692         (ElementBuffer.create): New helper method.
2693         (create): Use new ElementBuffer method instead of hack.
2694         * javax/swing/text/html/HTMLDocument.java
2695         (HTMLReader.flushImpl): New helper method.
2696         (HTMLReader.addContent): Use flushImpl().
2697         (HTMLReader.blockClose): Added null check.
2698         (HTMLReader.flush): Use flushImpl().
2699         * javax/swing/text/html/HTMLEditorKit.java
2700         (createDefaultDocument): Set load priority to 4 and token threshold
2701         to 100.
2702         * javax/swing/text/html/TableView.java
2703         (insertUpdate): Overridden to provide correct view factory.
2704         (removeUpdate): Overridden to provide correct view factory.
2705         (changedUpdate): Overridden to provide correct view factory.
2706
2707 2006-11-19  Roman Kennke  <kennke@aicas.com>
2708
2709         * javax/swing/text/BoxView.java
2710         (clipRect): New field.
2711         (tmpRect): New field.
2712         (layout): Reorganized code. Now uses layoutAxis() helper method.
2713         (layoutAxis): New helper method.
2714         (paint): Optimized by using cached Rectangle objects and
2715         a binary search for child views inside the clip.
2716         * javax/swing/text/CompositeView.java
2717         (insideAllocation): Made private and initialized in constructor.
2718         (getInsideAllocation): Removed initialization block for
2719         insideAllocation field. Avoid unnecessary allocations.
2720         * javax/swing/text/GlyphView.java
2721         (DefaultGlyphPainter.paint): Only paint the actual glyphs here
2722         The remaining stuff (background, underline and striking) is
2723         done in the GlpyhView itself. Avoid unnecessary allocations.
2724         (cached): A cached Segment instance.
2725         (getText): Return cached segment.
2726         (paint): Paint underline, strike and background here. Avoid
2727         unecessary allocs.
2728
2729 2006-11-19  Roman Kennke  <kennke@aicas.com>
2730
2731         * javax/swing/text/html/StyleSheet.java
2732         (getFontSize): Removed debug output.
2733         (ListPainter.tmpRect): New field.
2734         (ListPainter.paint): Align bullet vertically centered to
2735         the first line of the paragraph.
2736
2737 2006-11-17  Roman Kennke  <kennke@aicas.com>
2738
2739         * gnu/javax/swing/text/html/css/CSSParser.java
2740         (parseDeclaration): Trim string before reporting.
2741         * gnu/javax/swing/text/html/css/FontSize.java
2742         (size): New field.
2743         (isRelative): New field.
2744         (sizeIndex): New field.
2745         (FontSize): Initialize new fields.
2746         (getValue): Changed to call getValue(int).
2747         (getValue(int)): New method. Implements relative font sizes.
2748         (isRelative): New method.
2749         (mapAbsolute): Store index.
2750         (mapEM): New helper method.
2751         (mapLarger): New helper method.
2752         (mapPercent): New helper method.
2753         (mapRelative): New helper method.
2754         (mapSmaller): New helper method.
2755         (mapValue): New helper method.
2756         * javax/swing/text/html/CSS.java
2757         (parseBackgroundShorthand): Create CSSColor directly.
2758         * javax/swing/text/html/StyleSheet.java
2759         (addRule): Invalidate resolved styles.
2760         (getFont): Call new getFontSize() method to resolve relative
2761         font sizes.
2762         (getFontSize): New helper method. Resolves relative font sizes.
2763         (translateHTMLToCSS): Create CSS objects directly.
2764
2765 2006-11-13  Andrew John Hughes  <gnu_andrew@member.fsf.org>
2766
2767         * gnu/java/util/regex/RETokenNamedProperty.java:
2768         (getHandler(String)): Add support for 'all'.
2769
2770 2006-11-18  Andrew John Hughes  <gnu_andrew@member.fsf.org>
2771
2772         * gnu/javax/management/Server.java:
2773         Initial implementation of a GNU management server.
2774         * javax/management/MBeanPermission.java,
2775         * javax/management/MBeanRegistration.java,
2776         * javax/management/MBeanTrustPermission.java:
2777         Implemented.
2778         
2779 2006-11-17  Mark Wielaard  <mark@klomp.org>
2780
2781         * docs/www.gnu.org/newsitems.txt: Add Sun GPL news announcement.
2782
2783 2006-11-17  Gary Benson  <gbenson@redhat.com>
2784
2785         * java/net/DatagramSocket.java (getLocalAddress, connect,
2786         receive): Perform security check on address not hostname.
2787
2788 2006-11-16  Roman Kennke  <kennke@aicas.com>
2789
2790         * gnu/javax/swing/text/html/parser/support/Parser.java
2791         (_handleText): Fixed condition for consuming whitespace.
2792         Removed validator check, this is superfluous now.
2793
2794 2006-11-16  Roman Kennke  <kennke@aicas.com>
2795
2796         * gnu/javax/swing/text/html/css/CSSParser.java
2797         (parseRuleset): Support 'combined' selectors.
2798         (main): Adapt callback for combined selectors support.
2799         * gnu/javax/swing/text/html/css/CSSParserCallback.java
2800         (startStatement): Take selector array as argument, to
2801         support combined selectors.
2802         * javax/swing/text/html/BlockView.java
2803         (calculateMinorAxisRequirements): Fetch and apply alignment.
2804         * javax/swing/text/html/StyleSheet.java
2805         (CSSStyle): Inverted the constants for correct precedence.
2806         (CSSStyleSheetParserCallback.styles): New field. Stores the current
2807         styles.
2808         (CSSStyleSheetParserCallback.style): Removed.
2809         (CSSStyleSheetParserCallback.declaration): Update multiple styles.
2810         (CSSStyleSheetParserCallback.end): Push multiple styles.
2811         (CSSStyleSheetParserCallback.start): Initialize multiple styles.
2812
2813 2006-11-16  Roman Kennke  <kennke@aicas.com>
2814
2815         * javax/swing/text/FlowView.java
2816         (LogicalView.getPreferredSpan): Calculate maximum correctly.
2817         * javax/swing/text/GlyphView.java
2818         (tabExpander): New field.
2819         (tabX): New field.
2820         (breakView): Set tabX on broken view.
2821         (getPartialSpan): Let the painter fetch the span.
2822         (getTabbedSpan): Update the tab expander field. Maybe trigger
2823         relayout.
2824         (getTabExpander): Simply return the stored expander.
2825         * javax/swing/text/Utilities.java
2826         (getTabbedTextOffset): Made algoritm a little smarter and more
2827         efficient.
2828         (getTabbedTextWidth): Don't add single char widths, instead add
2829         chunks of characters.
2830         * javax/swing/text/html/ParagraphView.java
2831         (calculateMinorAxisRequirements): Adjust margin only when the
2832         CSS span is not fixed.
2833
2834 2006-11-16  David Gilbert  <david.gilbert@object-refinery.com>
2835
2836         * java/beans/beancontext/BeanContextSupport.java
2837         (getChildBeanContextMembershipListener): Implemented,
2838         (getChildPropertyChangeListener): Implemented,
2839         (getChildSerializable): Implemented,
2840         (getChildVetoableChangeListener): Implemented,
2841         (getChildVisibility): Implemented,
2842         (setDesignTime): Use same property name as Sun's implementation.
2843
2844 2006-11-16  David Gilbert  <david.gilbert@object-refinery.com>
2845
2846         * java/beans/DesignMode.java: Reformatted and removed a FIXME,
2847         * java/beans/Statement.java
2848         (toString): Updated to match reference implementation.
2849
2850 2006-11-15  Roman Kennke  <kennke@aicas.com>
2851
2852         * javax/swing/text/html/HTMLEditorKit.java
2853         (InsertHTMLTextAction.actionPerformed): Also try inserting
2854         the alternate tag. Adjust the selection accordingly.
2855         (InsertHTMLTextAction.adjustSelection): New helper method.
2856         Adjusts the selection after an insertion.
2857         (insertAtBoundary): Delegate to deprecated method.
2858         (insertAtBoundry): Implemented missing method.
2859         (tryInsert): New helper method.
2860         (defaultActions): Implemented to fill the array with
2861         a couple of InsertHTMLTextActions.
2862
2863 2006-11-15  Roman Kennke  <kennke@aicas.com>
2864
2865         * javax/swing/text/html/ImageView.java
2866         (Observer): New class. Observes image loading.
2867         (haveHeight): New field.
2868         (haveWidth): New field.
2869         (height): New field.
2870         (width): New field.
2871         (image): New field.
2872         (imageIcon): New field.
2873         (loading): New field.
2874         (observer): New field.
2875         (reloadImage): New field.
2876         (reloadProperties): New field.
2877         (ImageView): Initialize observer and some flags.
2878         (getImage): Update the image state and return the image.
2879         (loadImage): New helper method. Actually starts loading.
2880         (paint): Rewritten to paint the image directly, not via Icon.
2881         (reloadImage): Rewritten. Loads the image and its properties.
2882         (renderIcon): Removed. No more necessary.
2883         (setPropertiesFromAttributes): Don't nullify image here.
2884         Added comment about missing impl.
2885         (setSize): Added comment about missing impl.
2886         (updateSize): New helper method. Updates the size attributes.
2887         (updateState): New helper method. Makes sure the image
2888         and its properties are valid.
2889
2890 2006-11-15  Roman Kennke  <kennke@aicas.com>
2891
2892         * gnu/javax/swing/text/html/parser/support/Parser.java
2893         (_handleEndTag_remaining): Consume whitespace after a closing
2894         block like tag.
2895
2896 2006-11-15  Roman Kennke  <kennke@aicas.com>
2897
2898         * javax/swing/text/html/HTMLDocument.java
2899         (HTMLReader.ParagraphAction.end): Call super instead of blockClose()
2900         directly.
2901         (HTMLReader.ParagraphAction.start): Call super instead of blockOpen()
2902         directly.
2903         (HTMLReader.parseStack): Removed.
2904         (HTMLReader.blockClose): Simply call addContent() with ' '
2905         instead of doing more complicated stuff. Removed parseStack
2906         handling.
2907         (HTMLReader.blockOpen): Removed parseStack handling.
2908         (getInsertingReader): Removed parseStack init.
2909         * gnu/javax/swing/text/html/parser/htmlValidator.java
2910         (closeTag): Return true only when the tag actually should be
2911         closed.
2912         * gnu/javax/swing/text/html/parser/support/Parser.java
2913         (_handleEndTag): Only actually close the tag when the validator
2914         allows it.
2915
2916 2006-11-15  Roman Kennke  <kennke@aicas.com>
2917
2918         * javax/swing/text/html/CSS.java
2919         (Attribute.BORDER_SPACING): New field for the CSS border-spacing
2920         attribute.
2921         * javax/swing/text/html/StyleSheet.java
2922         (BoxPainter.bottomPadding): New field.
2923         (BoxPainter.leftPadding): New field.
2924         (BoxPainter.rightPadding): New field.
2925         (BoxPainter.topPadding): New field.
2926         (BoxPainter.BoxPainter): Fetch the MARGIN and PADDING* attributes
2927         too.
2928         (BoxPainter.getInset): Recognize and include the padding.
2929         (translateHTMLToCSS): Added mapping for CELLPADDING and CELLSPACING.
2930          javax/swing/text/html/TableView.java
2931         (RowView.calculateMajorAxisRequirements): Adjust req's for
2932         cellSpacing.
2933         (RowView.layoutMajorAxis): Adjust multi-column span for cellSpacing.
2934         (cellSpacing): New field.
2935         (columnRequirements): Made package private to avoid accessor method.
2936         (calculateMinorAxisRequirements): Include cellSpacing.
2937         (calculateMajorAxisRequirements): Overridden to include cellSpacing.
2938         (layoutMajorAxis): Likewise.
2939         (layoutColumns): Respect cellSpacing.
2940         (setParent): Overridden to fetch the CSS attributes when view gets
2941         connected.
2942         (setPropertiesFromAttributes): New method. Fetches the cell
2943         spacing from the CSS attributes.
2944
2945 2006-11-15  Roman Kennke  <kennke@aicas.com>
2946
2947         * gnu/javax/swing/text/html/parser/support/Parser.java
2948         (_handleText): Consume whitespace directly before a closing tag.
2949         (restOfTag): Consume whitespace directly after opening.
2950         * gnu/javax/swing/text/html/parser/support/textPreProcessor.java
2951         (preprocess): Don't perform array boundary checking by
2952         catch AIOOBE, instead check the boundary in loop condition.
2953         * gnu/javax/swing/text/html/parser/support/low/Constants.java
2954         (TAG_CLOSE): New constants. Describes the token pattern for
2955         a closing tag.
2956
2957 2006-11-14  Roman Kennke  <kennke@aicas.com>
2958
2959         * javax/swing/text/html/ImageView.java
2960         (getPreferredSpan): Use CSS length values.
2961         * javax/swing/text/html/TableView.java
2962         (CellView.calculateMajorAxisRequirements): Overridden to
2963         set the maximum reqs to maximum.
2964         (RowView.getMaximumSize): For the X_AXIS, set the maximum
2965         span to maximum.
2966         (RowView.getMinimumSpan): Overridden. For the X_AXIS, return
2967         the total column reqs.
2968         (RowView.getPreferredSpan): Overridden. For the X_AXIS, return
2969         the total column reqs.
2970         * gnu/javax/swing/text/html/css/CSSColor.java
2971         (convertValue): Catch NumberFormatExceptions for more robustness.
2972         * gnu/javax/swing/text/html/css/FontSize.java
2973         (mapPixels): Actually map px values. Catch NFE for more robustness.
2974
2975 2006-11-14  Roman Kennke  <kennke@aicas.com>
2976
2977         * gnu/java/awt/font/autofit/AxisHints.java,
2978         * gnu/java/awt/font/autofit/Constants.java,
2979         * gnu/java/awt/font/autofit/GlyphHints.java,
2980         * nu/java/awt/font/autofit/Latin.java,
2981         * nu/java/awt/font/autofit/LatinAxis.java,
2982         * gnu/java/awt/font/autofit/LatinMetrics.java,
2983         * gnu/java/awt/font/autofit/Scaler.java,
2984         * gnu/java/awt/font/autofit/Script.java,
2985         * gnu/java/awt/font/autofit/ScriptMetrics.java,
2986         * gnu/java/awt/font/autofit/Segment.java,
2987         * gnu/java/awt/font/autofit/Width.java:
2988         New classes. This is some skeleton stuff for the FreeType-alike
2989         auto-gridfitter.
2990         * gnu/java/awt/font/opentype/CharGlyphMap.java: Made class public.
2991         * gnu/java/awt/font/opentype/OpenTypeFont.java
2992         (unitsPerEm): Made field public.
2993         (getRawGlyphOutline): New method. Fetches the raw outline.
2994         * gnu/java/awt/font/opentype/Scaler.java
2995         (getRawGlyphOutline): New method. Fetches the raw outline.
2996         * gnu/java/awt/font/opentype/truetype/GlyphLoader.java
2997         (loadGlyph): New method. This is used to load raw outlines.
2998         * gnu/java/awt/font/opentype/truetype/TrueTypeScaler.java
2999         (getRawOutline): New method. Fetches the raw outline.
3000         * gnu/java/awt/font/opentype/truetype/Zone.java:
3001         Made class public.
3002
3003 2006-11-14  Roman Kennke  <kennke@aicas.com>
3004
3005         * javax/swing/RepaintManager.java
3006         (RepaintManager): Fetch the default state for the double buffering
3007         from a system property gnu.swing.doublebuffering.
3008
3009 2006-11-14  Roman Kennke  <kennke@aicas.com>
3010
3011         * javax/swing/plaf/basic/BasicLabelUI.java
3012         (cachedInsets): New field.
3013         (getFontMetrics): New helper method. Fetches the font metrics
3014         from the component or the toolkit.
3015         (getPreferredSize): Use getFontMetrics() helper method for
3016         fetching the font metrics.
3017         (paint): Use getFontMetrics() helper method for
3018         fetching the font metrics. Only paint if icon or text
3019         are != null. Use cached insets.
3020         (paintDisabledText): Don't store/restore color object. The
3021         JComponent painting mechanism takes care of this by calling
3022         create().
3023         (paintEnabledText): Don't store/restore color object. The
3024         JComponent painting mechanism takes care of this by calling
3025         create().
3026
3027 2006-11-14  Roman Kennke  <kennke@aicas.com>
3028
3029         * gnu/java/awt/peer/GLightweightPeer.java
3030         (handleEvent): Try to do something reasonable and trigger painting
3031         for the lightweight component.
3032         (getFontMetrics): Fetch and return a font metrics object from
3033         the Toolkit.
3034
3035 2006-11-13  Andrew John Hughes  <gnu_andrew@member.fsf.org>
3036
3037         * gnu/java/util/regex/RETokenNamedProperty.java:
3038         (getHandler(String)): Add support for 'all'.
3039         
3040 2006-11-13  Andreas Tobler  <a.tobler@schweiz.org>
3041
3042         * AUTHORS: Add myself.
3043
3044 2006-11-13  Thomas Fitzsimmons  <fitzsim@redhat.com>
3045
3046         * AUTHORS: Add Tania Bento, Thomas Fitzsimmons, Francis Kung and
3047         Dalibor Topic.  Re-order 'K' section.  Remove trailing space from
3048         Roman Kennke's entry.
3049
3050 2006-11-13  Roman Kennke  <kennke@aicas.com>
3051
3052         * java/awt/image/IndexColorModel.java
3053         (createCompatibleSampleModel): Implemented missing method.
3054
3055 2006-11-11  Andreas Tobler  <a.tobler@schweiz.org>
3056
3057         * gnu/java/awt/peer/gtk/GtkImageConsumer.java (setPixels): Handle data
3058         from big endian systems correctly.
3059
3060 2006-11-11  Roman Kennke  <kennke@aicas.com>
3061
3062         * gnu/javax/swing/text/html/css/CSSColor.java
3063         (isValidColor): New helper method. Checks strings if they
3064         form a valid color value.
3065         * gnu/javax/swing/text/html/css/Length.java
3066         (Length): Catch number format exceptions.
3067         * javax/swing/text/html/CSS.java
3068         (addInternal): New method. Checks for shorthand CSS attributes
3069         and parses them.
3070         (parseBackgroundShorthand): New method. Parses the background
3071         shorthand attribute.
3072         * javax/swing/text/html/HTMLDocument.java
3073         (HTMLReader.LinkAction): Made class a subclass of HiddenAction.
3074         (HTMLReader.LinkAction.start): Implemented to load the linked
3075         stylesheet.
3076         (HTMLReader.LinkAction.end): Removed. This is not needed.
3077         * javax/swing/text/html/StyleSheet.java
3078         (CSSStyleSheetParserCallback.declaration): Push declaration
3079         through CSS.addInternal() to parse shorthand attributes.
3080         (addCSSAttribute): Push declaration through CSS.addInternal()
3081         to parse shorthand attributes.
3082         (importStyleSheet): Implemented. This adds a stylesheet from
3083         an URL.
3084         * javax/swing/text/html/TableView.java
3085         (calculateColumnRequirements): Increase column index for
3086         non CellView children to avoid endless loop.
3087         * javax/swing/text/CompositeView.java
3088         (setParent): Comparen with numChildren not with real arraylength.
3089
3090 2006-11-11  David Gilbert  <david.gilbert@object-refinery.com>
3091
3092         * java/beans/beancontext/BeanContextSupport.java
3093         (getChildBeanContextChild): Implemented.
3094
3095 2006-11-10  Roman Kennke  <kennke@aicas.com>
3096
3097         * javax/swing/text/View.java
3098         (updateLayout): Only repaint when needed.
3099
3100 2006-11-10  David Gilbert  <david.gilbert@object-refinery.com>
3101
3102         * java/util/Collections.java
3103         (sort(List)): Minor API doc addition,
3104         (sort(List, Comparator)): Likewise.
3105
3106 2006-11-10  David Fu  <fchoong@netbeans.jp>
3107
3108         * javax/swing/text/html/HTMLWriter.java
3109         (traverse): Removed Classpath specific handling of implied
3110         tags.
3111         (traverseHtmlFragment): Removed Classpath specific handling of
3112         implied tags.
3113
3114 2006-11-10  Roman Kennke  <kennke@aicas.com>
3115
3116         * javax/swing/text/ParagraphView.java
3117         (Row.getMaximumSize): Removed. This method is not necessary.
3118         * javax/swing/text/html/TableView.java
3119         (CellView): Moved attribute init to setPropertiesFromAttributes().
3120         (setPropertiesFromAttributes): Fetch attributes here.
3121         (RowView.RowView): Documented.
3122         (RowView.getMaximumSpan): Overridden to restrict the max span
3123         in the Y direction.
3124         (RowView.layoutMajorAxis): Correctly layout the spans.
3125         (columnWidths): New field. Stores the width attributes of
3126         the columns.
3127         (calculateColumnRequirements): Added support for relative
3128          (== percent) width attributes.
3129         (calculateMajorAxisRequirements): Removed.
3130         (calculateMinorAxisRequirements): Removed unnecessary code.
3131         (getMaximumSpan): Overridden to restrict the table's width.
3132         (layoutColumns): Documented. Implement more clever table layout,
3133         i.e. for relative columns etc.
3134         (layoutMinorAxis): Don't mark rows invalid.
3135         (updateGrid): Added docs. Initialize column widths.
3136
3137 2006-11-09  Roman Kennke  <kennke@aicas.com>
3138
3139         * gnu/java/awt/peer/headless/HeadlessGraphicsEnvironment,
3140         * gnu/java/awt/peer/headless/HeadlessToolkit: New classes.
3141         Implement basic headless toolkit.
3142         * java/awt/Toolkit.java
3143         (getDefaultToolkit): Check headless property and create
3144         headless toolkit when true.
3145
3146 2006-11-09  Ingo Proetel  <proetel@aicas.com>
3147 2006-11-09  Roman Kennke  <kennke@aicas.com>
3148
3149         * gnu/java/awt/peer/swing/SwingButtonPeer.java
3150         (SwingButton.button): New field.
3151         (SwingButton.SwingButton): Added constructor.
3152         (SwingButton.isShowing): Access button field instead of
3153         the surrounding class.
3154         (SwingButton.getParent): Access button field instead of
3155         the surrounding class.
3156         (SwingButtonPeer): Call new SwingButton constructor.
3157         * gnu/java/awt/peer/swing/SwingComponent.java:
3158         Several documentation updates.
3159         * gnu/java/awt/peer/swing/SwingComponentPeer.java
3160         (currentPaintEvents): New field.
3161         (peerFont): New field.
3162         (SwingComponentPeer): Initialize currentPaintEvents fields.
3163         (coalescePaintEvents): Implemented.
3164         (dispose): Unregister peer from heavyweight list of its container.
3165         (getGraphics): Fetch graphics from parent component.
3166         (handleEvent): Discard paint event if its coalesced.
3167         (init): Register component with its container for proper painting.
3168         (paint): Call peerPaint().
3169         (peerPaint): Added argument that indicates if we should update.
3170         Call paint or update on the actual AWT component.
3171         (peerPaintComponent): New method. Paints the peer (Swing) component.
3172         (setFont): Set peerFont field.
3173         * gnu/java/awt/peer/swing/SwingContainerPeer.java
3174         (backbuffer): New field.
3175         (focusOwner): New field.
3176         (heavyweightDescendents): New field.
3177         (SwingContainerPeer): Take Container as argument. Don't call init
3178         yet.
3179         (addHeavyweightDescendent): New method.
3180         (getFocusOwner): New helper method.
3181         (getInsets): Delegate to insets().
3182         (handleKeyEvent): Dispatch event to focus owner.
3183         (handleMouseEvent): Dispatch to child component.
3184         (isDoubleBuffering): New helper method.
3185         (peerPaint): Overridden to implement container painting with
3186         double buffering.
3187         (peerPaintChildren): New method. Paints the descendents of this
3188         container.
3189         (removeHeavyweightDescendent): New helper method.       
3190         * gnu/java/awt/peer/swing/SwingFramePeer.java
3191         (peerPaint): Removed.
3192         (peerPaintComponent): Overridden to paint the menu bar.
3193         * gnu/java/awt/peer/swing/SwingLabelPeer.java
3194         (SwingLabel.label): New field.
3195         (SwingLabel.SwingLabel): Added constructor with Label argument.
3196         (SwingLabel.getGraphics): Implemented to fetch the graphics from
3197         the actual AWT component.
3198         (SwingLabel.getParent): Implemented to fetch the parent from
3199         the AWT component.
3200         (SwingLabel.isShowing): Access the label field.
3201         (SwingLabelPeer): Set alignment from label.
3202         * gnu/java/awt/peer/swing/SwingListPeer.java: New class.
3203         * gnu/java/awt/peer/swing/SwingMenuBarPeer.java: Documentation
3204         fixlet.
3205         * gnu/java/awt/peer/swing/SwingPanelPeer.java:
3206         Don't be a lighweight peer.
3207         (SwingPanelPeer): Call init.
3208         * gnu/java/awt/peer/swing/SwingTextAreaPeer.java: New class.
3209         * gnu/java/awt/peer/swing/SwingTextFieldPeer.java
3210         (SwingTextField.textField): New field.
3211         (SwingTextField.SwingTextField): New constructor.
3212         (SwingTextField.isShowing): Access field not enclosing class.
3213         (SwingTextField.getGraphics): New method.
3214         (SwingTextField.getParent): New method.
3215         (SwingTextFieldPeer): Call new constructor.
3216         (select): Renamed arguments.
3217         * gnu/java/awt/peer/swing/SwingWindowPeer.java
3218         (SwingWindowPeer): Call init.
3219
3220 2006-11-09  Tania Bento  <tbento@redhat.com>
3221
3222         * javax/swing/JLabel.java
3223         (JLabel(Icon)): Changed documentation; Changed text to null.
3224         (JLabel(Icon,int)): Likewise.
3225         (JLabel(text)): Changed documenation.
3226         (JLabel(text,int)): Likewise.
3227         (JLabel(text,Icon,int)): Changed documentation; Throw 
3228         IllegalArgumentException if int is not one of LEFT, RIGHT,
3229         CENTER, LEADING or TRAILING.
3230
3231 2006-11-09  David Gilbert  <david.gilbert@object-refinery.com>
3232
3233         * java/beans/beancontext/BeanContextSupport.java
3234         (BeanContextSupport): Use correct dtime default,
3235         (BeanContextSupport(BeanContext)): Likewise,
3236         (BeanContextSupport(BeanContext, Locale)): Likewise, plus renamed
3237         locale argument,
3238         (BeanContextSupport(BeanContext, Locale, boolean)): Likewise,
3239         (BeanContextSupport(BeanContext, Locale, boolean, boolean)): Likewise.
3240
3241 2006-11-09  David Gilbert  <david.gilbert@object-refinery.com>
3242
3243         * java/beans/beancontext/BeanContextSupport.java
3244         (getBeanContextPeer): Implemented.
3245
3246 2006-11-09  Roman Kennke  <kennke@aicas.com>
3247
3248         * javax/swing/text/html/BlockView.java
3249         (cssHeight): Removed.
3250         (cssWidth): Removed.
3251         (cssSpans): New field. Replaces the two fields above.
3252         (BlockView): Allocate cssSpans array.
3253         (layoutMinorAxis): Fetch and use child span, not this view's span.
3254         (setCSSSpan): Adjusted to use cssSpans array.
3255         (setPropertiesFromAttributes): Adjusted to use cssSpans array.
3256
3257 2006-11-09  Roman Kennke  <kennke@aicas.com>
3258
3259         * javax/swing/text/html/InlineView.java
3260         (nowrap): New field.
3261         (getBreakWeight): Add support for nowrap.
3262         (setPropertiesFromAttributes): Fetch the nowrap setting.
3263
3264 2006-11-09  Roman Kennke  <kennke@aicas.com>
3265
3266         * gnu/javax/swing/text/html/css/CSSParser.java
3267         (parseRuleset): Use new Selector class.
3268         (parseValue): Parse multiple anys, not only one.
3269         (main): Allow stylesheet be specified on the command line.
3270         Use new Selector class.
3271         * gnu/javax/swing/text/html/css/CSSParserCallback.java
3272         (startStatement): Use Selector class.
3273         * gnu/javax/swing/text/html/css/CSSScanner.java
3274         (readName): Actually read a character in the loop to avoid
3275         endless loop.
3276         * gnu/javax/swing/text/html/css/Length.java
3277         (getValue): Only multiply when we have a percentage value.
3278         * gnu/javax/swing/text/html/css/Selector.java:
3279         New class. Provides handling of CSS selectors.
3280         * javax/swing/text/html/StyleSheet.java
3281         (CSSStyle.PREC_AUTHOR_IMPORTANT): New constant field.
3282         (CSSStyle.PREC_AUTHOR_NORMAL): New constant field.
3283         (CSSStyle.PREC_NORM): New constant field.
3284         (CSSStyle.PREC_UA): New constant field.
3285         (CSSStyle.PREC_USER_IMPORTANT): New constant field.
3286         (CSSStyle.precedence): New field.
3287         (CSSStyle.priority): Removed.
3288         (CSSStyle.selector): New field.
3289         (CSSStyle.CSSStyle(int,Selector)): Initialize with Selector
3290         and precendence.
3291         (CSSStyle.compareTo): Adjusted to use the precedence and
3292         specificity of the selector.
3293         (CSSStyleSheetParserCallback.precedence): New field.
3294         (CSSStyleSheetParserCallback.selector): Removed.
3295         (CSSStyleSheetParserCallback.style): New field.
3296         (CSSStyleSheetParserCallback.CSSStyleSheetParserCallback):
3297         Initialize with precedence.
3298         (CSSStyleSheetParserCallback.declaration): Don't look up
3299         existing rule, simply create new one.
3300         (CSSStyleSheetParserCallback.endStatement): Append style
3301         to stylesheet.
3302         (CSSStyleSheetParserCallback.startStatement): Use new Selector
3303         class.
3304         (css): Changed to be ArrayList.
3305         (addRule): Create parser with author-normal precendence.
3306         (getRule): Fixed implementation.
3307         (loadRules): Create parser with UA precendence.
3308         (resolveStyle): Use Selector class for resolving and matching
3309         stylesheet rules.
3310         (translateHTMLToCSS): Added mappings for a couple of HTML
3311         attributes.
3312
3313 2006-11-09  David Gilbert  <david.gilbert@object-refinery.com>
3314
3315         Fixes bug #29770
3316         * java/beans/SimpleBeanInfo.java
3317         (loadImage): Check for nulls.
3318
3319 2006-11-09  Robert Schuster  <robertschuster@fsfe.org>
3320
3321         * native/jni/java-nio/gnu_java_nio_VMChannel.c:
3322         (getpeername): Added 16 byte offset to memcpy operation.
3323
3324 2006-11-09  Robert Schuster  <robertschuster@fsfe.org>
3325
3326         * native/jni/java-nio/gnu_java_nio_VMChannel.c:
3327         (getsockname): Added 16 byte offset to memcpy operation.
3328
3329 2006-11-08  Mark Wielaard  <mark@klomp.org>
3330
3331         Fixes bug #29754
3332         * java/io/OutputStreamWriter.java
3333         (OutputStreamWriter(OutputStream,Charset)): Set encodingName.
3334         (OutputStreamWriter(OutputStream,CharsetEncoder)): Likewise.
3335
3336 2006-11-08  Roman Kennke  <kennke@aicas.com>
3337
3338         * javax/swing/text/html/HTMLEditorKit.java
3339         (getParser): Use plain HTML_401F DTD.
3340         * javax/swing/text/html/HTMLDocument.java
3341         (HTMLReader.print): Removed method and all calls to it.
3342         (HTMLReader.printBuffer): Removed method and all calls to it.
3343         (HTMLReader.inImpliedParagraph): New field.
3344         (HTMLReader.inParagraph): New field.
3345         (HTMLReader.addContent): Create implied p-tag if necessary.
3346         (HTMLReader.addSpecialElement): Create implied p-tag if necessary.
3347         (HTMLReader.blockClose): Close implied p-tag if necessary.
3348         (HTMLReader.blockOpen): Close implied p-tag if necessary.
3349         * gnu/javax/swing/text/html/parser/HTML_401Swing.java: Removed.
3350
3351 2006-11-08  Roman Kennke  <kennke@aicas.com>
3352
3353         * javax/swing/text/html/HTMLEditorKit.java
3354         (HTMLFactory.create): Removed mapping for TD tag. This
3355         is done in TableView.
3356         * javax/swing/text/html/TableView.java:
3357         Implemented from scratch.
3358
3359 2006-11-07  Roman Kennke  <kennke@aicas.com>
3360
3361         * gnu/javax/swing/text/html/parser/support/Parser.java
3362         (_handleText): Check if text content is actually allowed before
3363         passing empty text fragments on to the parser callbacks.
3364
3365 2006-11-07  Mark Wielaard  <mark@klomp.org>
3366
3367         * gnu/java/net/protocol/jar/Handler.java (parseURL): Flatten jar
3368         path.
3369         (flat): New method.
3370
3371 2006-11-07  Tania Bento  <tbento@redhat.com>
3372
3373         * java/awt/FlowLayout.java
3374         (getSize): If parent does not have a component, then a 
3375         different formula is used to calcuate the width.
3376
3377 2006-11-07  Roman Kennke  <kennke@aicas.com>
3378
3379         * javax/swing/text/html/HTMLEditorKit.java
3380         (HTMLFactory.create): Include ListView.
3381         * javax/swing/text/html/ListView.java
3382         (paint): Removed comment.
3383         * javax/swing/text/html/StyleSheet.java
3384         (CSSStyle.priority): New field.
3385         (CSSStyle.CSSStyle(int)): New constructor with priority.
3386         (CSSStyle.compareTo): New method. Used for sorting the styles.
3387         (CSSStyleSheetParserCallback.declaration): Store the style
3388         with the complete selector.
3389         (ListPainter.attributes): Renamed as field.
3390         (ListPainter.styleSheet): New field.
3391         (ListPainter.type): New field.
3392         (ListPainter.ListPainter): Pass StyleSheet to constructor.
3393         (ListPainter.paint): Provide simplistic implementation.
3394         (getListPainter): Pass StyleSheet to constructor.
3395         (resolveStyle): Fixed CSS style resolving.
3396
3397 2006-11-07  Roman Kennke  <kennke@aicas.com>
3398
3399         * gnu/javax/swing/text/html/css/BorderWidth.java:
3400         New class. Handles CSS border width values.
3401         * gnu/javax/swing/text/html/css/Length.java
3402         (floatValue): Made protected so that BorderWidth can access it.
3403         * javax/swing/text/html/CSS.java
3404         (Attribute.BORDER_BOTTOM_COLOR): New static field.
3405         (Attribute.BORDER_BOTTOM_STYLE): New static field.
3406         (Attribute.BORDER_LEFT_COLOR): New static field.
3407         (Attribute.BORDER_LEFT_STYLE): New static field.
3408         (Attribute.BORDER_RIGHT_COLOR): New static field.
3409         (Attribute.BORDER_RIGHT_STYLE): New static field.
3410         (Attribute.BORDER_TOP_COLOR): New static field.
3411         (Attribute.BORDER_TOP_STYLE): New static field.
3412         (getValue): Added some mappings for the border color and
3413         border width values.
3414         * javax/swing/text/html/CSSBorder.java: New class. Implements
3415         CSS borders.
3416         * javax/swing/text/html/StyleSheet.java
3417         (BoxPainter.background): New field.
3418         (BoxPainter.border): New field.
3419         (BoxPainter.bottomInset): Documented.
3420         (BoxPainter.leftInset): Documented.
3421         (BoxPainter.rightInset): Documented.
3422         (BoxPainter.topInset): Documented.
3423         (BoxPainter.BoxPainter): Added support for borders and background.
3424         (BoxPainter.getInset): Add border insets.
3425         (BoxPainter.paint): Implemented. Paints the background and the
3426         CSS border.
3427         (addRule): Be less picky about parse and IO exceptions.
3428         (getBoxPainter): Adjust to new BoxPainter constructor.
3429
3430 2006-11-07  Andreas  <a.tobler@schweiz.org>
3431
3432         * examples/Makefile.am: Add rule to install the *.html files we use
3433         in the Swing Demo.
3434
3435 2006-11-06  Francis Kung  <fkung@redhat.com>
3436
3437         * gnu/java/awt/peer/gtk/ComponentGraphics.java
3438         (fillRect): Handle custom composites.
3439         (drawRenderedImage): Handle custom composites.
3440         (drawImage): Handle custom composites.
3441         (createBuffer): New method.
3442         (drawLine): Handle custom composites.
3443         (drawComposite): New method.
3444         (fill): Handle custom composites.
3445         (getNativeCM): New method.
3446         (drawGlyphVector): Handle custom composites.
3447         (drawRect): Handle custom composites.
3448         (draw): Handle custom composites.
3449         * gnu/java/awt/peer/gtk/VolatileImageGraphics.java
3450         (drawComposite): Unset composite during draw call, to prevent parent
3451         from handling composite again.
3452         * gnu/java/awt/peer/gtk/CairoGraphics2D.java
3453         (getBufferCM): Added comments.
3454         (getNativeCM): Made abstract.
3455         (setComposite): Removed comments.
3456
3457 2006-11-06  Roman Kennke  <kennke@aicas.com>
3458
3459         * examples/gnu/classpath/examples/swing/HtmlDemo.java:
3460         Fixed initial window size and start document.
3461
3462 2006-11-06  Roman Kennke  <kennke@aicas.com>
3463
3464         * javax/swing/text/html/HTMLDocument.java
3465         (HTMLReader.addSpecialElement): Removed comment about
3466         htmlAttributeSet.
3467         (HTMLReader.handleComment): Create SimpleAttributeSet instead
3468         of htmlAttributeSet.
3469         * javax/swing/text/html/parser/DocumentParser.java
3470         (gnuParser.handleStartTag): Use SimpleAttributeSet instead
3471         of htmlAttributeSet.
3472         * javax/swing/text/html/parser/ParserDelegator.java
3473         (gnuParser.handleStartTag): Use SimpleAttributeSet instead
3474         of htmlAttributeSet.
3475         * gnu/javax/swing/text/html/parser/GnuParserDelegator.java
3476         (gnuParser.handleStartTag): Use SimpleAttributeSet instead
3477         of htmlAttributeSet.
3478         * gnu/javax/swing/text/html/parser/support/Parser.java
3479         (getAttributes): Return a SimpleAttributeSet.
3480         (restOfTag): Don't set resolving parent here.
3481
3482 2006-11-06  Tania Bento  <tbento@redhat.com>
3483
3484         * java/awt/TextComponent.java
3485         (setSelectionStart): Added check.
3486
3487 2006-11-06  Tania Bento  <tbento@redhat.com>
3488
3489         * java/awt/TextField.java
3490         (minimumSize(int)): Check if minimum size has been previously
3491         set and changed values of Dimension returned if peer == null.
3492         (preferredSize(int)): Check if preferred size has been previously
3493         set and changed values of Dimension returned if peer == null.
3494
3495 2006-11-06  Roman Kennke  <kennke@aicas.com>
3496
3497         * javax/swing/JTree.java
3498         (TreeModelHandler.treeNodesRemoved): Implemented.
3499         (TreeModelHandler.treeStructureChanged): Implemented.
3500         (nodeStates): Made package private.
3501
3502 2006-11-06  Francis Kung  <fkung@redhat.com>
3503
3504         PR 29420
3505         * javax/swing/JTree.java
3506         (clearSelectionPathStates): New private method to clean up nodeStates.
3507         (removeSelectionPath): Call clearSelectionPathStates().
3508         (removeSelectionPaths): Call clearSelectionPathStates().
3509         (removeSelectionRow): Call clearSelectionPathStates().
3510         (setSelectionPath): Call clearSelectionPathStates().
3511         (setSelectionPaths): Call clearSelectionPathStates().
3512         (setSelectionRow): Call clearSelectionPathStates().
3513
3514 2006-11-06  Ito Kazumitsu  <kaz@maczuka.gcd.org>
3515
3516         Fixes bug #29703
3517         * java/util/regex/Matcher.java(reset): Reset inputCharIndexed.
3518
3519 2006-11-06  Roman Kennke  <kennke@aicas.com>
3520
3521         * examples/gnu/classpath/examples/swing/HtmlDemo.java:
3522         Changed to implement a minimalistic browser.
3523         * examples/gnu/classpath/examples/swing/forms.html,
3524         * examples/gnu/classpath/examples/swing/textstyles.html,
3525         * examples/gnu/classpath/examples/swing/welcome.html:
3526         Some example content.
3527
3528 2006-11-06  Roman Kennke  <kennke@aicas.com>
3529
3530         * javax/swing/text/ComponentView.java
3531         (setParent): Lock the document and repaint the hosting
3532         container.
3533         * javax/swing/text/FlowView.java
3534         (FlowStrategy.createView): Removed comment.
3535         (FlowView): Initialize span with Short.MAX_VALUE.
3536         (getFlowStart): Return 0 unconditionally.
3537         (layout): Moved code around to make it more readable.
3538         (loadChildren): Always set the parent.
3539         * javax/swing/text/GlyphView.java
3540         (DefaultGlyphPainter.fontMetrics): New field.
3541         (DefaultGlyphPainter.getAscent): Use new helper method to
3542         synchronize the font metrics.
3543         (DefaultGlyphPainter.getBoundedPosition): Use new helper method
3544         to synchronize the font metrics.
3545         (DefaultGlyphPainter.getDescent): Use new helper method to
3546         synchronize the font metrics.
3547         (DefaultGlyphPainter.getHeight): Use new helper method to
3548         synchronize the font metrics.
3549         (DefaultGlyphPainter.getSpan): Use new helper method to
3550         synchronize the font metrics.
3551         (DefaultGlyphPainter.modelToView): Use new helper method to
3552         synchronize the font metrics.
3553         (DefaultGlyphPainter.updateFontMetrics): New helper method for
3554         font metrics caching.
3555         (DefaultGlyphPainter.viewToModel): Use new helper method to
3556         synchronize the font metrics. Fixed view to model mapping.
3557         * javax/swing/text/View.java
3558         (removeAll): Pass null to replace().
3559         (setParent): Only reparent children that have this view as parent.
3560
3561 2006-11-05  Mark Wielaard  <mark@klomp.org>
3562
3563         * include/gnu_java_net_VMPlainDatagramSocketImpl.h: Removed.
3564         * include/gnu_java_nio_channels_FileChannelImpl.h: Removed.
3565         * native/jni/java-net/gnu_java_net_VMPlainDatagramSocketImpl.c:
3566         Removed.
3567         * native/jni/java-nio/gnu_java_nio_channels_FileChannelImpl.c:
3568         Removed.
3569         * native/jni/java-nio/Makefile.am (libjavanio_la_SOURCES):
3570         Remove gnu_java_nio_channels_FileChannelImpl.c.
3571
3572 2006-11-03  Roman Kennke  <kennke@aicas.com>
3573
3574         * javax/swing/text/html/BlockView.java
3575         (attributes): New field.
3576         (cssHeight): New field.
3577         (cssWidth): New field.
3578         (painter): New field.
3579         (calculateMajorAxisRequirements): Overridden to account for
3580         CSS settings.
3581         (calculateMinorAxisRequirements): Overridden to account for
3582         CSS settings.
3583         (layoutMinorAxis): Overridden to account for CSS settings.
3584         (changedUpdate): Formatting fixlet.
3585         (constrainSize): New helper method.
3586         (getAlignment): Fix alignment.
3587         (getAttributes): Cache attributes for better performance.
3588         (getStyleSheet): Fetch stylesheet from document rather than creating
3589         a new one.
3590         (paint): Remove comment.
3591         (setCSSSpan): New helper method.
3592         (setPropertiesFromAttributes): Implemented to fetch the
3593         recognized properties.
3594         * javax/swing/text/html/CSS.java
3595         (getValue): Added mapping for width and height attributes.
3596         * javax/swing/text/html/InlineView.java
3597         (longestWord): New field.
3598         (getLongestWord): New helper method.
3599         (calculateLongestWord): New helper method.
3600         (getMinimumSpan): Overridden to constrain the minimum span by the
3601         longest word.
3602         * javax/swing/text/html/ParagraphView.java
3603         (cssHeight): New field.
3604         (cssWidth): New field.
3605         (calculateMinorAxisRequirements): Overridden to account for
3606         CSS settings.
3607         (setCSSSpan): New helper method.
3608         (setPropertiesFromAttributes): Fetch CSS width and height. Added
3609         null check.
3610         * gnu/javax/swing/text/html/css/Length.java
3611         (percentage): New field.
3612         (Length): Determine percentage values.
3613         (getValue(float)): New method for handling percentage values.
3614         (isPercentage): New method.
3615
3616 2006-11-03  Tania Bento  <tbento@redhat.com>
3617
3618         * java/awt/TextArea.java
3619         (getMinimumSize): Changed documentation.
3620         (getPreferredSize): Changed documentation.
3621         (getMinimumSize(int,int)): Changed documenation.
3622         (getPreferredSize(int,int)): Changed documenation.
3623         (minimumSize): Changed documentation.
3624         (preferredSize): Changed documenation.
3625         (minimumSize(int,int)): Changed documentation.  Checked if 
3626         minimum size had been previously set and changed values of
3627         Dimension returned if peer == null.
3628         (preferredSize(int, int)): Checked if preferred size had been
3629         previously set and changed values of Dimension returned if
3630         peer = null.
3631
3632 2006-11-03  Tania Bento  <tbento@redhat.com>
3633
3634         * java/awt/event/ComponentEvent.java
3635         (paramString): Changed format of string representation returned.
3636
3637 2006-11-03  Roman Kennke  <kennke@aicas.com>
3638
3639         * javax/swing/text/html/HTMLDocument.java
3640         (HTMLReader.FormAction.start): Added support for textarea.
3641         (HTMLReader.FormAction.end): Added support for textarea.
3642         (HTMLReader.HeadAction.end): Call super to actually close the
3643         block.
3644         (HTMLReader.inTextArea): New field.
3645         (HTMLReader.textAreaDocument): New field.
3646         (HTMLReader.handleText): Call textAreaContent when inside
3647         a textarea tag.
3648         (HTMLReader.textAreaContent): Implemented to initialize
3649         the text area's model.
3650         * javax/swing/text/html/FormView.java
3651         (createComponent): Added support for textarea tag.
3652
3653 2006-11-03  Roman Kennke  <kennke@aicas.com>
3654
3655         * javax/swing/text/html/HTMLDocument.java
3656         (HTMLReader.IsindexAction.start): Implemented.
3657
3658 2006-11-03  Roman Kennke  <kennke@aicas.com>
3659
3660         * javax/swing/text/html/StyleSheet.java
3661         (addRule): Implemented.
3662         * javax/swing/text/html/HTMLDocument.java
3663         (HTMLReader.inStyleTag): New field.
3664         (HTMLReader.styles): New field.
3665         (HTMLReader.HeadAction.end): Implemented to read all stylesheets,
3666         if any.
3667         (HTMLReader.StyleAction.start): Set inStyleTag flag.
3668         (HTMLReader.StyleAction.end): Set inStyleTag flag.
3669         (HTMLReader.handleText): When inside a style tag, add
3670         content to the styles array.
3671
3672 2006-11-02  Roman Kennke  <kennke@aicas.com>
3673
3674         * javax/swing/text/html/FormView.java
3675         (maxIsPreferred): New field.
3676         (createComponent): Initialize components correctly.
3677         (getMaximumSpan): Return the preferred span for components
3678         that need this. The maxIsPreferred flag is set accordingly
3679         in createComponent.
3680         * javax/swing/text/html/HTMLDocument.java
3681         (HTMLReader.FormAction.start): Implemented to set the
3682         correct model as attribute.
3683         (HTMLReader.FormAction.setModel): New helper method.
3684         (HTMLReader.FormAction.end): Call super to finish the element.
3685         Added TODO about things left to do.
3686         (HTMLReader.handleComment): Use SimpleAttributeSet rather
3687         than htmlAttributeSet.
3688         * javax/swing/text/html/HTMLEditorKit.java
3689         (HTMLFactory.create): Create BlockView for FORM tags.
3690         Create FormView for INPUT, TEXTAREA and SELECT tags.
3691
3692 2006-11-02  David Gilbert  <david.gilbert@object-refinery.com>
3693
3694         * java/awt/geom/GeneralPath.java: API doc fixes.
3695
3696 2006-11-02  Roman Kennke  <kennke@aicas.com>
3697
3698         * javax/swing/text/html/ImageView.java
3699         (getImageURL): Fetch attribute from element. Consider the
3700         base URL for relative image locations.
3701
3702 2006-11-02  Roman Kennke  <kennke@aicas.com>
3703
3704         * javax/swing/JEditorPane.java
3705         (setContentType): Strip off attributes.
3706         * javax/swing/text/html/HTMLEditorKit.java
3707         (LinkController.activateLink(int,JEditorPane,int,int): New
3708         method. Implements activation of a hyperlink.
3709         (LinkController.activateLinke(int,JEditorPane)): Delegate
3710         to the other activateLink() method.
3711         (LinkController.createHyperlinkEvent): New helper method.
3712         (LinkController.mouseClicked): Implemented to activate the link.
3713         (LinkController.mouseDragged): Added comment that this
3714         method does nothing.
3715         (LinkController.mouseMoved): Update cursor for hyperlinks.
3716         (mouseHandler): Renamed field to linkController.
3717         (HTMLEditorKit): Create a link controller.
3718         (clone): Give the clone a new link controller.
3719         (deinstall): De-install link controller as mouseMotionListener too.
3720         (install): Install link controller as mouseMotionListener too.
3721
3722 2006-11-02  Roman Kennke  <kennke@aicas.com>
3723
3724         PR 29644
3725         * javax/swing/text/FlowView.java
3726         (FlowStrategy.changedUpdate): Reversed condition. This caused
3727         wrong layout and bad performance.
3728         (FlowStrategy.insertUpdate): Reversed condition. This caused
3729         wrong layout and bad performance.
3730         (FlowStrategy.removeUpdate): Reversed condition. This caused
3731         wrong layout and bad performance.
3732         (LogicalView): Changed to be a subclass of CompositeView.
3733         (LogicalView()): Only take one Element argument.
3734         (LogicalView.childAllocation): New method for implementing
3735         the abstract CompositeView method.
3736         (LogicalView.forwardUpdateToView): Overridden for correct
3737         reparenting.
3738         (getMinimumSpan): Overridden to handle line breaking correctly.
3739         (getPreferredSpan): Implemented to handle line breaking correctly.
3740         (getViewAtPoint): New method for implementing
3741         the abstract CompositeView method.
3742         (getViewIndexAtPosition): Overridden to handle leaf elements
3743         correctly.
3744         (isAfter): New method for implementing
3745         the abstract CompositeView method.
3746         (isBefore): New method for implementing
3747         the abstract CompositeView method.
3748         (loadChildren): Overridden to handle leaf elements
3749         correctly.
3750         (paint): New method for implementing
3751         the abstract CompositeView method.
3752         (calculateMinorAxisRequirements): Use preferredSpan in calculation.
3753         (loadChildren): Initialize flow layout by sending a synthetic
3754         insertUpdate() to the layout strategy.
3755         * javax/swing/text/GlyphView.java
3756         (DefaultGlyphPainter.getBoundedPosition): Fall back to Toolkit's
3757         font metrics if component is not available. Add initial offset
3758         to result.
3759         (breakView): Be more clever when breaking the view.
3760         (getBreakLocation): New helper method to determine a good
3761         break location.
3762         (getBreakWeight): Be more clever when breaking the view.
3763         (getTabbedSpan): Make sure we have a painter. Use view's
3764         start and end offset rather than the element's.
3765         * javax/swing/text/Utilities.java
3766         (drawTabbedText): Avoid useless add and sub with the y offset.
3767
3768 2006-11-02  Roman Kennke  <kennke@aicas.com>
3769
3770         PR 29644
3771         * gnu/java/awt/peer/ClasspathFontPeer.java
3772         (getStringBounds): Removed abstract method. This is replaced
3773         in java.awt.Font to use a TextLayout.
3774         * gnu/java/awt/peer/gtk/GtkWindowPeer.java
3775         (GtkWindowPeer): Set a font on the window object.
3776         * gnu/java/awt/peer/gtk/FreetypeGlyphVector.java
3777         (FreetypeGlyphVector(Font,String,FontRenderContext,int)):
3778         Changed to take char,int,int instead of String. Filter
3779         control characters.
3780         (FreetypeGlyphVector(Font,String,FontRenderContext)):
3781         Create char array out of string.
3782         (getLogicalBounds): Don't translate bounds. They already are
3783         translated.
3784         * gnu/java/awt/peer/gtk/GdkFontMetrics.java
3785         (stringWidth): Filter out control characters.
3786         * gnu/java/awt/peer/gtk/GdkFontPeer.java
3787         (getStringBounds): Removed unneeded method.