OSDN Git Service

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