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