OSDN Git Service

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