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