OSDN Git Service

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