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