OSDN Git Service

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