OSDN Git Service

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