OSDN Git Service

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