OSDN Git Service

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