From neugens.limasoftware at gmail.com Tue Sep 2 03:47:03 2008 From: neugens.limasoftware at gmail.com (neugens.limasoftware at gmail.com) Date: Tue, 02 Sep 2008 10:47:03 +0000 Subject: hg: caciocavallo/ng: Added basic infrastructure for new Swing based peers. Message-ID: <20080902104703.2EC81D03E@hg.openjdk.java.net> Changeset: 6601026d56cf Author: Roman Kennke Date: 2008-09-02 12:18 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/6601026d56cf Added basic infrastructure for new Swing based peers. + src/gnu/java/awt/peer/x/EscherPlatformWindow.java + src/gnu/java/awt/peer/x/EscherPlatformWindowFactory.java + src/gnu/java/awt/peer/x/EscherToolkit.java ! src/gnu/java/awt/peer/x/XEventPump.java ! src/gnu/java/awt/peer/x/XWindowPeer.java - src/gnu/java/util/ComponentReshapeEvent.java + src/sun/awt/peer/cacio/CacioCanvasPeer.java + src/sun/awt/peer/cacio/CacioComponent.java + src/sun/awt/peer/cacio/CacioComponentPeer.java + src/sun/awt/peer/cacio/CacioContainerPeer.java + src/sun/awt/peer/cacio/CacioFramePeer.java + src/sun/awt/peer/cacio/CacioToolkit.java + src/sun/awt/peer/cacio/CacioWindowPeer.java + src/sun/awt/peer/cacio/PlatformWindow.java + src/sun/awt/peer/cacio/PlatformWindowFactory.java + tests/gnu/escher/TestCanvas.java From neugens.limasoftware at gmail.com Tue Sep 2 04:03:20 2008 From: neugens.limasoftware at gmail.com (neugens.limasoftware at gmail.com) Date: Tue, 02 Sep 2008 11:03:20 +0000 Subject: hg: caciocavallo/jdk7/jdk: Added ComponentReshapeEvent support for updating AWT's knowledge about component bounds without triggering layout. Message-ID: <20080902110336.25B62D045@hg.openjdk.java.net> Changeset: 6dad9749410a Author: Roman Kennke Date: 2008-09-02 11:26 +0200 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/jdk/rev/6dad9749410a Added ComponentReshapeEvent support for updating AWT's knowledge about component bounds without triggering layout. ! src/share/classes/java/awt/Component.java + src/share/classes/sun/awt/event/ComponentReshapeEvent.java From roman at kennke.org Tue Sep 2 04:09:34 2008 From: roman at kennke.org (Roman Kennke) Date: Tue, 02 Sep 2008 13:09:34 +0200 Subject: Ideas about improved architecture of the generic Swing peers In-Reply-To: <1218794992.6783.44.camel@moonlight> References: <1218794992.6783.44.camel@moonlight> Message-ID: <1220353774.8444.16.camel@moonlight> Hi folks, I'm CCing awt-dev now, I think this could be interesting. Please scroll down and read the original mail so that you know what I'm talking about. Basically, I'm trying to implement AWT peers that are based on Swing (for the widgets) and require minimum effort for porting to new platforms. Basically, the only thing that is required to be implemented on a new platform is the windowing functionality, abstracted out nicely by the PlatformWindow interface. Today I pushed a first prototype of the new Swing based AWT peers. It follows the basic architecture described in the original email (all components have their own native window, which is abstracted behind an interface, components are backed by their Swing counterparts for drawing and state handling). So far, this only serves as proof-of-concept. It is possible to open a Frame and put Canvas inside it. The code is based on the patches of the Caciocavallo project (which should probably be merged in mainline at some point). You can find the code here: http://hg.openjdk.java.net/caciocavallo/ng/ The basic framework is located in the package sun.awt.peer.cacio, an example implementation based on Escher [1] can be found in gnu.java.awt.peer.x (start looking at EscherToolkit maybe). and the patched OpenJDK forest here: http://hg.openjdk.java.net/caciocavallo/jdk7/ Questions, suggestions, comments and code are heartily welcome :-) Cheers, Roman [1] http://escher.sf.net Am Freitag, den 15.08.2008, 12:09 +0200 schrieb Roman Kennke: > Hello people, > > I'd like to outline my ideas about an improved architecture of the > generic Swing based peers. But let me first describe the current state > and the problem(s) we need to address: > > Currently, the Swing peers implement most of the peers in > java.awt.peer.* (well ok, minus a couple of complex ones, like > ScrollPane, Choice, etc). They are not supposed to work standalone, but > need some support by a real backend. Most notably, this would be an > implementation of java.awt.Toolkit and the top-level window peers > (WindowPeer, DialogPeer and FramePeer). Based on these toplevel windows, > the Swing peers handle all the widgets in a semi-lightweight fashion: > all the drawing is done using Graphics contexts from the toplevel > windows. However, the actual Swing components are not connected to the > component hierarchy in any way, they are only 'hooked in' in a way, so > that from the perspective of the Swing component it appears as if it > were in the component hierarchy, but infact it isn't (from the > perspective of the hierarchy). > > This architecture, requiring the real backend to implement the toplevel > windows, and do everything else in a quasi-lightweight fashion has some > disadvantages, or at least, one big disadvantage. It is really hard to > get the special behaviour of AWT heavyweight components correct. For > example, suppose you have a Frame, inside this frame you have a Swing > component, and a Panel. The panel would always be on top of the Swing > component, regardless of the stacking order in the window. To make it > even more complex, if you had a Swing component in the Panel, it would > be drawn on the Panel, not on the Window (an thus, it would appear to be > always on top of the other Swing component). To get this right in the > Swing peers, we had to implement a bunch of hacks, that involve double > buffers for all components and other ugly stuff, and it never worked > really well. > > The answer, for me, was found in the implementation of the XWindow peers > in OpenJDK. All AWT components are 'simply' given their own X Windows. > I, coming from a Swing background, first had to get over this concept a > little, but then it seemed all logical, and I think most toolkits (at > least in the X world) are implemented like that. And even though not > specified exactly, Java AWT applications expect such behavior from AWT > components. > > What I would like to propose is a kind of blend between the architecture > of the XAWT peers in OpenJDK and the Swing peers: Let all AWT components > be drawn in their own window, but let Swing do the drawing and handling > of logic and events. This way, we would get a maximum portable AWT peer > implementation, that requires only minimal effort to port to any new > platform. The interesting part is to implement this idea: > > The first thing to think about is that all components should have their > own window. To me, this means, that the common superclass of all the > peers, the SwingComponentPeer, must implement all the necessary > windowing behaviour. This is done similarily in the XAWT peers, but in a > very X specific way. All other peers, including the toplevel peers and > the widgets, derive from this class (an exception would probably be the > menu related peers). Since SwingComponentPeer already implements all the > necessary windowing functionality, the toplevel peers don't have much to > do on their own, except delegating to super here and there. The widget > peers now don't search for a parent graphics for drawing, but can do > everything in their own window. > > The tricky part here is, when the SwingComponentPeer is at the top of > the hierarchy, how can we 'plug in' platform specific code there? > Subclassing surely isn't it. My idea is to have a kind of PlatformWindow > interface, which is used by the SwingComponentPeer to delegate all the > real window implementation stuff to. We should be careful to create a > nice clean interface there. Porting the AWT would then be as simple as > implementing this one interface (plus J2D pipeline), and boing! have all > the AWT widgets and toplevel windows available. > > And we need to consider that not only SwingComponentPeer calls into the > PlatformWindow impl, but the PlatformWindow impl also needs to call back > to the SwingComponentPeer for handling events. In the XAWT > implementation this is done by passing back X events. Of course, we > don't want platform specific events in the Swing peers. So the > PlatformWindow implementation needs to take care and transform all > platform specific events to Java AWT events before passing them back to > the SwingComponentPeer. It might be necessary to introduce a couple of > internal peer events for handling stuff that is not covered by the > 'official' AWT events. > > Summary of the architecture outline (this would be a good point to slip > in an UML diagram, but I really don't like diagrams ;-) ): > > SwingComponentPeer is the all-mighty master superclass here. It provides > all the necessary windowing functionality. But it doesn't implement this > itself, but instead delegates to a PlatformWindow implementation. > PlatformWindow would be an interface that specifies all the windowing > functionality that we need from the underlying platform. The > PlatformWindow implementation is also expected to pass all the events > from the window to the SwingComponentPeer, in the form of AWT event > objects (it must already translate the native event types to the > corresponding AWT events). Subclasses of SwingComponentPeer implement > both the widgets as well as the toplevel windows. Drawing the widgets > and handling the state logic of the component is done by Swing. > > Please tell me what you think. > > Cheers, Roman > -- http://kennke.org/blog/ -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Dies ist ein digital signierter Nachrichtenteil Url : http://mail.openjdk.java.net/pipermail/caciocavallo-dev/attachments/20080902/6dce7239/attachment.bin From neugens.limasoftware at gmail.com Tue Sep 2 06:25:54 2008 From: neugens.limasoftware at gmail.com (neugens.limasoftware at gmail.com) Date: Tue, 02 Sep 2008 13:25:54 +0000 Subject: hg: caciocavallo/ng: Added basic support for Label and Button. Message-ID: <20080902132554.69135D04F@hg.openjdk.java.net> Changeset: 872bbb43f383 Author: Roman Kennke Date: 2008-09-02 15:14 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/872bbb43f383 Added basic support for Label and Button. + src/sun/awt/peer/cacio/CacioButtonPeer.java ! src/sun/awt/peer/cacio/CacioComponentPeer.java + src/sun/awt/peer/cacio/CacioLabelPeer.java + src/sun/awt/peer/cacio/CacioSwingComponent.java ! src/sun/awt/peer/cacio/CacioToolkit.java + tests/gnu/escher/TestComponents.java From neugens.limasoftware at gmail.com Tue Sep 2 06:50:18 2008 From: neugens.limasoftware at gmail.com (neugens.limasoftware at gmail.com) Date: Tue, 02 Sep 2008 13:50:18 +0000 Subject: hg: caciocavallo/ng: Removed the old Swing peers and obsolete stuff in the Escher peers. Message-ID: <20080902135019.02AF3D054@hg.openjdk.java.net> Changeset: 24d8d3ecfd52 Author: Roman Kennke Date: 2008-09-02 15:43 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/24d8d3ecfd52 Removed the old Swing peers and obsolete stuff in the Escher peers. ! .classpath ! .settings/org.eclipse.jdt.core.prefs ! .settings/org.eclipse.jdt.ui.prefs - src/gnu/java/awt/peer/swing/SwingButtonPeer.java - src/gnu/java/awt/peer/swing/SwingCanvasPeer.java - src/gnu/java/awt/peer/swing/SwingCheckboxPeer.java - src/gnu/java/awt/peer/swing/SwingComponent.java - src/gnu/java/awt/peer/swing/SwingComponentPeer.java - src/gnu/java/awt/peer/swing/SwingContainerPeer.java - src/gnu/java/awt/peer/swing/SwingFramePeer.java - src/gnu/java/awt/peer/swing/SwingLabelPeer.java - src/gnu/java/awt/peer/swing/SwingListPeer.java - src/gnu/java/awt/peer/swing/SwingMenuBarPeer.java - src/gnu/java/awt/peer/swing/SwingMenuItemPeer.java - src/gnu/java/awt/peer/swing/SwingMenuPeer.java - src/gnu/java/awt/peer/swing/SwingPanelPeer.java - src/gnu/java/awt/peer/swing/SwingTextAreaPeer.java - src/gnu/java/awt/peer/swing/SwingTextFieldPeer.java - src/gnu/java/awt/peer/swing/SwingToolkit.java - src/gnu/java/awt/peer/swing/SwingWindowPeer.java - src/gnu/java/awt/peer/swing/package.html - src/gnu/java/awt/peer/x/EscherKeyboardFocusManager.java ! src/gnu/java/awt/peer/x/EscherPlatformWindow.java ! src/gnu/java/awt/peer/x/EscherToolkit.java - src/gnu/java/awt/peer/x/XDialogPeer.java ! src/gnu/java/awt/peer/x/XEventPump.java - src/gnu/java/awt/peer/x/XFramePeer.java ! src/gnu/java/awt/peer/x/XGraphicsDevice.java - src/gnu/java/awt/peer/x/XToolkit.java - src/gnu/java/awt/peer/x/XWindowPeer.java From roman at kennke.org Tue Sep 2 11:43:00 2008 From: roman at kennke.org (roman at kennke.org) Date: Tue, 02 Sep 2008 18:43:00 +0000 Subject: hg: caciocavallo/ng: 2 new changesets Message-ID: <20080902184300.98059D0C2@hg.openjdk.java.net> Changeset: ceeb5da99bed Author: Roman Kennke Date: 2008-09-02 16:28 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/ceeb5da99bed Added event handling for mouse, keyboard and focus events. Implemented setEnabled(). Call addNotify() on Swing components to give them a dummy peer. ! src/sun/awt/peer/cacio/CacioButtonPeer.java ! src/sun/awt/peer/cacio/CacioComponentPeer.java ! src/sun/awt/peer/cacio/CacioLabelPeer.java Changeset: d3cd959cdc40 Author: Roman Kennke Date: 2008-09-02 20:40 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/d3cd959cdc40 Commented CacioComponent. ! src/sun/awt/peer/cacio/CacioComponent.java From neugens.limasoftware at gmail.com Tue Sep 2 11:49:53 2008 From: neugens.limasoftware at gmail.com (neugens.limasoftware at gmail.com) Date: Tue, 02 Sep 2008 18:49:53 +0000 Subject: hg: caciocavallo/ng: Fix typo in comment. Message-ID: <20080902184953.31D5FD0CB@hg.openjdk.java.net> Changeset: 1c09445f8ae3 Author: Mario Torre Date: 2008-09-02 20:49 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/1c09445f8ae3 Fix typo in comment. ! src/sun/awt/peer/cacio/CacioSwingComponent.java From Andrei.Dmitriev at Sun.COM Wed Sep 3 10:23:30 2008 From: Andrei.Dmitriev at Sun.COM (Andrei V. Dmitriev) Date: Wed, 03 Sep 2008 21:23:30 +0400 Subject: Ideas about improved architecture of the generic Swing peers In-Reply-To: <1220353774.8444.16.camel@moonlight> References: <1218794992.6783.44.camel@moonlight> <1220353774.8444.16.camel@moonlight> Message-ID: <48BEC812.9080301@sun.com> Hi Roman, tried this version and in contrast to previous one this looks much more functional. :) I decided that it's only reasonable to check pure-AWT scenarios so just picked a simple "Button-in-a-Frame" thing up and seem it does work. Haven't looked on how it deals with events... this is an issue for some near future. I spent some time walking around the new code and found this pretty much similar to a prototype which existed by this moment for a - week or something. :) You did inherited from the SunToolkit class and left Runnable aside. Perhaps this could save some more lines of code. As a matter of fact I also tried some more complicated AWT test which I believe covers all components and failed on TextArea peer initialization. The good thing is we actually have semi-lightweight peer for text components in X11 code so we probably may be kept from part of this work. Just in case you haven't realized that yet. :) Thanks, Andrei Roman Kennke wrote: > Hi folks, > > I'm CCing awt-dev now, I think this could be interesting. Please scroll > down and read the original mail so that you know what I'm talking about. > Basically, I'm trying to implement AWT peers that are based on Swing > (for the widgets) and require minimum effort for porting to new > platforms. Basically, the only thing that is required to be implemented > on a new platform is the windowing functionality, abstracted out nicely > by the PlatformWindow interface. > > Today I pushed a first prototype of the new Swing based AWT peers. It > follows the basic architecture described in the original email (all > components have their own native window, which is abstracted behind an > interface, components are backed by their Swing counterparts for drawing > and state handling). So far, this only serves as proof-of-concept. It is > possible to open a Frame and put Canvas inside it. The code is based on > the patches of the Caciocavallo project (which should probably be merged > in mainline at some point). You can find the code here: > > http://hg.openjdk.java.net/caciocavallo/ng/ > > The basic framework is located in the package sun.awt.peer.cacio, an > example implementation based on Escher [1] can be found in > gnu.java.awt.peer.x (start looking at EscherToolkit maybe). > > and the patched OpenJDK forest here: > > http://hg.openjdk.java.net/caciocavallo/jdk7/ > > > Questions, suggestions, comments and code are heartily welcome :-) > > Cheers, Roman > > [1] http://escher.sf.net > > Am Freitag, den 15.08.2008, 12:09 +0200 schrieb Roman Kennke: >> Hello people, >> >> I'd like to outline my ideas about an improved architecture of the >> generic Swing based peers. But let me first describe the current state >> and the problem(s) we need to address: >> >> Currently, the Swing peers implement most of the peers in >> java.awt.peer.* (well ok, minus a couple of complex ones, like >> ScrollPane, Choice, etc). They are not supposed to work standalone, but >> need some support by a real backend. Most notably, this would be an >> implementation of java.awt.Toolkit and the top-level window peers >> (WindowPeer, DialogPeer and FramePeer). Based on these toplevel windows, >> the Swing peers handle all the widgets in a semi-lightweight fashion: >> all the drawing is done using Graphics contexts from the toplevel >> windows. However, the actual Swing components are not connected to the >> component hierarchy in any way, they are only 'hooked in' in a way, so >> that from the perspective of the Swing component it appears as if it >> were in the component hierarchy, but infact it isn't (from the >> perspective of the hierarchy). >> >> This architecture, requiring the real backend to implement the toplevel >> windows, and do everything else in a quasi-lightweight fashion has some >> disadvantages, or at least, one big disadvantage. It is really hard to >> get the special behaviour of AWT heavyweight components correct. For >> example, suppose you have a Frame, inside this frame you have a Swing >> component, and a Panel. The panel would always be on top of the Swing >> component, regardless of the stacking order in the window. To make it >> even more complex, if you had a Swing component in the Panel, it would >> be drawn on the Panel, not on the Window (an thus, it would appear to be >> always on top of the other Swing component). To get this right in the >> Swing peers, we had to implement a bunch of hacks, that involve double >> buffers for all components and other ugly stuff, and it never worked >> really well. >> >> The answer, for me, was found in the implementation of the XWindow peers >> in OpenJDK. All AWT components are 'simply' given their own X Windows. >> I, coming from a Swing background, first had to get over this concept a >> little, but then it seemed all logical, and I think most toolkits (at >> least in the X world) are implemented like that. And even though not >> specified exactly, Java AWT applications expect such behavior from AWT >> components. >> >> What I would like to propose is a kind of blend between the architecture >> of the XAWT peers in OpenJDK and the Swing peers: Let all AWT components >> be drawn in their own window, but let Swing do the drawing and handling >> of logic and events. This way, we would get a maximum portable AWT peer >> implementation, that requires only minimal effort to port to any new >> platform. The interesting part is to implement this idea: >> >> The first thing to think about is that all components should have their >> own window. To me, this means, that the common superclass of all the >> peers, the SwingComponentPeer, must implement all the necessary >> windowing behaviour. This is done similarily in the XAWT peers, but in a >> very X specific way. All other peers, including the toplevel peers and >> the widgets, derive from this class (an exception would probably be the >> menu related peers). Since SwingComponentPeer already implements all the >> necessary windowing functionality, the toplevel peers don't have much to >> do on their own, except delegating to super here and there. The widget >> peers now don't search for a parent graphics for drawing, but can do >> everything in their own window. >> >> The tricky part here is, when the SwingComponentPeer is at the top of >> the hierarchy, how can we 'plug in' platform specific code there? >> Subclassing surely isn't it. My idea is to have a kind of PlatformWindow >> interface, which is used by the SwingComponentPeer to delegate all the >> real window implementation stuff to. We should be careful to create a >> nice clean interface there. Porting the AWT would then be as simple as >> implementing this one interface (plus J2D pipeline), and boing! have all >> the AWT widgets and toplevel windows available. >> >> And we need to consider that not only SwingComponentPeer calls into the >> PlatformWindow impl, but the PlatformWindow impl also needs to call back >> to the SwingComponentPeer for handling events. In the XAWT >> implementation this is done by passing back X events. Of course, we >> don't want platform specific events in the Swing peers. So the >> PlatformWindow implementation needs to take care and transform all >> platform specific events to Java AWT events before passing them back to >> the SwingComponentPeer. It might be necessary to introduce a couple of >> internal peer events for handling stuff that is not covered by the >> 'official' AWT events. >> >> Summary of the architecture outline (this would be a good point to slip >> in an UML diagram, but I really don't like diagrams ;-) ): >> >> SwingComponentPeer is the all-mighty master superclass here. It provides >> all the necessary windowing functionality. But it doesn't implement this >> itself, but instead delegates to a PlatformWindow implementation. >> PlatformWindow would be an interface that specifies all the windowing >> functionality that we need from the underlying platform. The >> PlatformWindow implementation is also expected to pass all the events >> from the window to the SwingComponentPeer, in the form of AWT event >> objects (it must already translate the native event types to the >> corresponding AWT events). Subclasses of SwingComponentPeer implement >> both the widgets as well as the toplevel windows. Drawing the widgets >> and handling the state logic of the component is done by Swing. >> >> Please tell me what you think. >> >> Cheers, Roman >> From roman at kennke.org Wed Sep 3 12:40:26 2008 From: roman at kennke.org (Roman Kennke) Date: Wed, 03 Sep 2008 21:40:26 +0200 Subject: Ideas about improved architecture of the generic Swing peers In-Reply-To: <48BEC812.9080301@sun.com> References: <1218794992.6783.44.camel@moonlight> <1220353774.8444.16.camel@moonlight> <48BEC812.9080301@sun.com> Message-ID: <1220470826.3600.9.camel@moonlight> Hi Andrei, > tried this version and in contrast to previous one this looks much more > functional. :) > I decided that it's only reasonable to check pure-AWT scenarios so just > picked a simple "Button-in-a-Frame" thing up and seem it does work. Yeah, I implemented Buttons and Labels yesterday :-) > Haven't looked on how it deals with events... this is an issue for some > near future. MouseEvents and some other things like PaintEvent, ComponentEvent should work, at least good enough for getting basic painting and mouse handling, resizing, etc to work. Today I looked a little in KeyboardEvent and FocusEvent handling, this is a little weird, because the KeyboardFocusManager must not expose the backing Swing components as focus owner, but yet the Swing component should 'think' it is focused. But I already have some ideas that I try this evening. > I spent some time walking around the new code and found > this pretty much similar to a prototype which existed by this moment for > a - week or something. :) Cool. So maybe it's a good idea to decide for one of the two prototypes, either you push out your stuff in the open and we work together on that, or we continue together on the Cacio peers. What do you think? It doesn't seem to make sense to develop two implementations in parallel... > You did inherited from the SunToolkit class and left Runnable aside. > Perhaps this could save some more lines of code. Surely. I'm not sure yet what SunToolkit has to do with Runnable, but I guess I'll study the code and learn :-) > As a matter of fact I also tried some more complicated AWT test which I > believe covers all components and failed on TextArea peer > initialization. Yeha! I only implemented Window, Frame, Canvas, Button and Label so far. The other toplevels and Panel seem to be some more low hanging fruits. The text components shouldn't be so bad - I already had these working to some degree in the old Swing peers of GNU Classpath. What I'm really scared about are the compound components like Scrollpane and Choice and the Menu related stuff. > The good thing is we actually have semi-lightweight peer > for text components in X11 code so we probably may be kept from part of > this work. Just in case you haven't realized that yet. :) Yeah, I've seen that. Very cool. Infact, my inspiration for all this is both the XAWT peers of OpenJDK and my old work on GNU Classpath, and to me, this new code is a merge of ideas from both. > Thanks, > Andrei Thank you! /Roman -- http://kennke.org/blog/ -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Dies ist ein digital signierter Nachrichtenteil Url : http://mail.openjdk.java.net/pipermail/caciocavallo-dev/attachments/20080903/96d5a498/attachment.bin From roman at kennke.org Thu Sep 4 04:46:07 2008 From: roman at kennke.org (roman at kennke.org) Date: Thu, 04 Sep 2008 11:46:07 +0000 Subject: hg: caciocavallo/ng: Implemented basic focus event handling. Message-ID: <20080904114608.11928D1E4@hg.openjdk.java.net> Changeset: c81bee8b008d Author: Roman Kennke Date: 2008-09-04 13:45 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/c81bee8b008d Implemented basic focus event handling. ! src/gnu/java/awt/peer/x/EscherPlatformWindow.java ! src/gnu/java/awt/peer/x/XEventPump.java ! src/sun/awt/peer/cacio/CacioButtonPeer.java ! src/sun/awt/peer/cacio/CacioComponentPeer.java ! src/sun/awt/peer/cacio/CacioLabelPeer.java ! src/sun/awt/peer/cacio/CacioWindowPeer.java ! src/sun/awt/peer/cacio/PlatformWindow.java ! tests/gnu/escher/TestComponents.java From neugens.limasoftware at gmail.com Thu Sep 4 04:50:56 2008 From: neugens.limasoftware at gmail.com (neugens.limasoftware at gmail.com) Date: Thu, 04 Sep 2008 11:50:56 +0000 Subject: hg: caciocavallo/ng: Fix typo in javadco. Message-ID: <20080904115057.25DC3D1EB@hg.openjdk.java.net> Changeset: b9be5e99dbd4 Author: Mario Torre Date: 2008-09-04 13:49 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/b9be5e99dbd4 Fix typo in javadco. ! src/sun/awt/peer/cacio/CacioLabelPeer.java From roman at kennke.org Thu Sep 4 04:56:53 2008 From: roman at kennke.org (roman at kennke.org) Date: Thu, 04 Sep 2008 11:56:53 +0000 Subject: hg: caciocavallo/jdk7/jdk: Call getParent() instead of accessing the parent field directly. Required for supporting the Cacio peers. Message-ID: <20080904115721.101AED1F2@hg.openjdk.java.net> Changeset: 7422f7375c3c Author: Roman Kennke Date: 2008-09-04 13:55 +0200 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/jdk/rev/7422f7375c3c Call getParent() instead of accessing the parent field directly. Required for supporting the Cacio peers. ! src/share/classes/java/awt/Component.java From roman at kennke.org Thu Sep 4 07:21:24 2008 From: roman at kennke.org (Roman Kennke) Date: Thu, 04 Sep 2008 16:21:24 +0200 Subject: Ideas about improved architecture of the generic Swing peers In-Reply-To: <48BFE7E7.8090405@sun.com> References: <1218794992.6783.44.camel@moonlight> <1220353774.8444.16.camel@moonlight> <48BFE7E7.8090405@sun.com> Message-ID: <1220538084.6422.10.camel@moonlight> Hi Artem, > I haven't had a chance to look at Caciocavallo project, so some of my > questions may look pretty naive, but still: > > 1. Do I understand correctly, that you're using XToolkit approach: each > component has its own native (heavyweight) window, but all the drawing > is performed in a lightweight manner? Yes. > 2. A small note about original email. Most of the problems described in > the email are related to a known AWT limitation about using both heavy- > and lightweight components inside a single container. As of JDK7 this > limitation is eliminated, and hw/lw mixing works pretty well and fast. Cool. But we don't really mix LW and HW. > 3. What is PlatformWindow interface? Does it correspond to a top-level > window or any heavyweight component? This corresponds to each HW component, because all components use a native window. The interface is similar to WindowPeer plus ComponentPeer, but with some quirks. For example, in the XToolkit, you have the XComponentPeer which is a subclass of XWindow. XWindow implements all (most?) of the actual window functionality. What we are doing is similar, but IMO more portable: CacioComponentPeer implements all the window functionality, but by delegating the platform dependent parts to an implementation of the PlatformWindow interface. The PlatformWindow implementation is responsible for handling the window (e.g. setVisible()) and for passing back events from the window system to the CacioComponentPeer (which in turn passen the events on to the EQ). > 4. Do you suggest an approach when a lightweight (Swing) component is > inserted into an AWT widget (aggregation) or just reuse some painting > and other Swing stuff (draw Swing components onto AWT components)? I don't insert Swing into AWT. From the POV of the application, it should never see the Swing components used. The peer instantiates the Swing components, but does not add it to the AWT hierarchy. But it does some tricks, so that the Swing components 'thinks' it has a valid parent, to allow painting and some other stuff. > 5. You write your current implementation works on X11 with EscherToolkit > on top of it. Do you think it would be hard to use existing AWT > toolkits: XToolkit & WToolkit - for an underlying layer? I'm not sure what you mean by that. I think it should be possible to use X11 or Win32 for underlying layer (Escher == X11/Xlib in 100% Java). If you want to use the Swing peers in XToolkit or WToolkit, you'd have to implement the PlatformWindow interface in these toolkits and subclass from CacioToolkit, instead of SunToolkit. /Roman > > Thanks, > > Artem > > Roman Kennke wrote: > > Hi folks, > > > > I'm CCing awt-dev now, I think this could be interesting. Please scroll > > down and read the original mail so that you know what I'm talking about. > > Basically, I'm trying to implement AWT peers that are based on Swing > > (for the widgets) and require minimum effort for porting to new > > platforms. Basically, the only thing that is required to be implemented > > on a new platform is the windowing functionality, abstracted out nicely > > by the PlatformWindow interface. > > > > Today I pushed a first prototype of the new Swing based AWT peers. It > > follows the basic architecture described in the original email (all > > components have their own native window, which is abstracted behind an > > interface, components are backed by their Swing counterparts for drawing > > and state handling). So far, this only serves as proof-of-concept. It is > > possible to open a Frame and put Canvas inside it. The code is based on > > the patches of the Caciocavallo project (which should probably be merged > > in mainline at some point). You can find the code here: > > > > http://hg.openjdk.java.net/caciocavallo/ng/ > > > > The basic framework is located in the package sun.awt.peer.cacio, an > > example implementation based on Escher [1] can be found in > > gnu.java.awt.peer.x (start looking at EscherToolkit maybe). > > > > and the patched OpenJDK forest here: > > > > http://hg.openjdk.java.net/caciocavallo/jdk7/ > > > > > > Questions, suggestions, comments and code are heartily welcome :-) > > > > Cheers, Roman > > > > [1] http://escher.sf.net > > > > Am Freitag, den 15.08.2008, 12:09 +0200 schrieb Roman Kennke: > >> Hello people, > >> > >> I'd like to outline my ideas about an improved architecture of the > >> generic Swing based peers. But let me first describe the current state > >> and the problem(s) we need to address: > >> > >> Currently, the Swing peers implement most of the peers in > >> java.awt.peer.* (well ok, minus a couple of complex ones, like > >> ScrollPane, Choice, etc). They are not supposed to work standalone, but > >> need some support by a real backend. Most notably, this would be an > >> implementation of java.awt.Toolkit and the top-level window peers > >> (WindowPeer, DialogPeer and FramePeer). Based on these toplevel windows, > >> the Swing peers handle all the widgets in a semi-lightweight fashion: > >> all the drawing is done using Graphics contexts from the toplevel > >> windows. However, the actual Swing components are not connected to the > >> component hierarchy in any way, they are only 'hooked in' in a way, so > >> that from the perspective of the Swing component it appears as if it > >> were in the component hierarchy, but infact it isn't (from the > >> perspective of the hierarchy). > >> > >> This architecture, requiring the real backend to implement the toplevel > >> windows, and do everything else in a quasi-lightweight fashion has some > >> disadvantages, or at least, one big disadvantage. It is really hard to > >> get the special behaviour of AWT heavyweight components correct. For > >> example, suppose you have a Frame, inside this frame you have a Swing > >> component, and a Panel. The panel would always be on top of the Swing > >> component, regardless of the stacking order in the window. To make it > >> even more complex, if you had a Swing component in the Panel, it would > >> be drawn on the Panel, not on the Window (an thus, it would appear to be > >> always on top of the other Swing component). To get this right in the > >> Swing peers, we had to implement a bunch of hacks, that involve double > >> buffers for all components and other ugly stuff, and it never worked > >> really well. > >> > >> The answer, for me, was found in the implementation of the XWindow peers > >> in OpenJDK. All AWT components are 'simply' given their own X Windows. > >> I, coming from a Swing background, first had to get over this concept a > >> little, but then it seemed all logical, and I think most toolkits (at > >> least in the X world) are implemented like that. And even though not > >> specified exactly, Java AWT applications expect such behavior from AWT > >> components. > >> > >> What I would like to propose is a kind of blend between the architecture > >> of the XAWT peers in OpenJDK and the Swing peers: Let all AWT components > >> be drawn in their own window, but let Swing do the drawing and handling > >> of logic and events. This way, we would get a maximum portable AWT peer > >> implementation, that requires only minimal effort to port to any new > >> platform. The interesting part is to implement this idea: > >> > >> The first thing to think about is that all components should have their > >> own window. To me, this means, that the common superclass of all the > >> peers, the SwingComponentPeer, must implement all the necessary > >> windowing behaviour. This is done similarily in the XAWT peers, but in a > >> very X specific way. All other peers, including the toplevel peers and > >> the widgets, derive from this class (an exception would probably be the > >> menu related peers). Since SwingComponentPeer already implements all the > >> necessary windowing functionality, the toplevel peers don't have much to > >> do on their own, except delegating to super here and there. The widget > >> peers now don't search for a parent graphics for drawing, but can do > >> everything in their own window. > >> > >> The tricky part here is, when the SwingComponentPeer is at the top of > >> the hierarchy, how can we 'plug in' platform specific code there? > >> Subclassing surely isn't it. My idea is to have a kind of PlatformWindow > >> interface, which is used by the SwingComponentPeer to delegate all the > >> real window implementation stuff to. We should be careful to create a > >> nice clean interface there. Porting the AWT would then be as simple as > >> implementing this one interface (plus J2D pipeline), and boing! have all > >> the AWT widgets and toplevel windows available. > >> > >> And we need to consider that not only SwingComponentPeer calls into the > >> PlatformWindow impl, but the PlatformWindow impl also needs to call back > >> to the SwingComponentPeer for handling events. In the XAWT > >> implementation this is done by passing back X events. Of course, we > >> don't want platform specific events in the Swing peers. So the > >> PlatformWindow implementation needs to take care and transform all > >> platform specific events to Java AWT events before passing them back to > >> the SwingComponentPeer. It might be necessary to introduce a couple of > >> internal peer events for handling stuff that is not covered by the > >> 'official' AWT events. > >> > >> Summary of the architecture outline (this would be a good point to slip > >> in an UML diagram, but I really don't like diagrams ;-) ): > >> > >> SwingComponentPeer is the all-mighty master superclass here. It provides > >> all the necessary windowing functionality. But it doesn't implement this > >> itself, but instead delegates to a PlatformWindow implementation. > >> PlatformWindow would be an interface that specifies all the windowing > >> functionality that we need from the underlying platform. The > >> PlatformWindow implementation is also expected to pass all the events > >> from the window to the SwingComponentPeer, in the form of AWT event > >> objects (it must already translate the native event types to the > >> corresponding AWT events). Subclasses of SwingComponentPeer implement > >> both the widgets as well as the toplevel windows. Drawing the widgets > >> and handling the state logic of the component is done by Swing. > >> > >> Please tell me what you think. > >> > >> Cheers, Roman > >> -- http://kennke.org/blog/ -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Dies ist ein digital signierter Nachrichtenteil Url : http://mail.openjdk.java.net/pipermail/caciocavallo-dev/attachments/20080904/cfde8264/attachment.bin From Artem.Ananiev at Sun.COM Thu Sep 4 06:51:35 2008 From: Artem.Ananiev at Sun.COM (Artem Ananiev) Date: Thu, 04 Sep 2008 17:51:35 +0400 Subject: Ideas about improved architecture of the generic Swing peers In-Reply-To: <1220353774.8444.16.camel@moonlight> References: <1218794992.6783.44.camel@moonlight> <1220353774.8444.16.camel@moonlight> Message-ID: <48BFE7E7.8090405@sun.com> Hi, Roman, I haven't had a chance to look at Caciocavallo project, so some of my questions may look pretty naive, but still: 1. Do I understand correctly, that you're using XToolkit approach: each component has its own native (heavyweight) window, but all the drawing is performed in a lightweight manner? 2. A small note about original email. Most of the problems described in the email are related to a known AWT limitation about using both heavy- and lightweight components inside a single container. As of JDK7 this limitation is eliminated, and hw/lw mixing works pretty well and fast. 3. What is PlatformWindow interface? Does it correspond to a top-level window or any heavyweight component? 4. Do you suggest an approach when a lightweight (Swing) component is inserted into an AWT widget (aggregation) or just reuse some painting and other Swing stuff (draw Swing components onto AWT components)? 5. You write your current implementation works on X11 with EscherToolkit on top of it. Do you think it would be hard to use existing AWT toolkits: XToolkit & WToolkit - for an underlying layer? Thanks, Artem Roman Kennke wrote: > Hi folks, > > I'm CCing awt-dev now, I think this could be interesting. Please scroll > down and read the original mail so that you know what I'm talking about. > Basically, I'm trying to implement AWT peers that are based on Swing > (for the widgets) and require minimum effort for porting to new > platforms. Basically, the only thing that is required to be implemented > on a new platform is the windowing functionality, abstracted out nicely > by the PlatformWindow interface. > > Today I pushed a first prototype of the new Swing based AWT peers. It > follows the basic architecture described in the original email (all > components have their own native window, which is abstracted behind an > interface, components are backed by their Swing counterparts for drawing > and state handling). So far, this only serves as proof-of-concept. It is > possible to open a Frame and put Canvas inside it. The code is based on > the patches of the Caciocavallo project (which should probably be merged > in mainline at some point). You can find the code here: > > http://hg.openjdk.java.net/caciocavallo/ng/ > > The basic framework is located in the package sun.awt.peer.cacio, an > example implementation based on Escher [1] can be found in > gnu.java.awt.peer.x (start looking at EscherToolkit maybe). > > and the patched OpenJDK forest here: > > http://hg.openjdk.java.net/caciocavallo/jdk7/ > > > Questions, suggestions, comments and code are heartily welcome :-) > > Cheers, Roman > > [1] http://escher.sf.net > > Am Freitag, den 15.08.2008, 12:09 +0200 schrieb Roman Kennke: >> Hello people, >> >> I'd like to outline my ideas about an improved architecture of the >> generic Swing based peers. But let me first describe the current state >> and the problem(s) we need to address: >> >> Currently, the Swing peers implement most of the peers in >> java.awt.peer.* (well ok, minus a couple of complex ones, like >> ScrollPane, Choice, etc). They are not supposed to work standalone, but >> need some support by a real backend. Most notably, this would be an >> implementation of java.awt.Toolkit and the top-level window peers >> (WindowPeer, DialogPeer and FramePeer). Based on these toplevel windows, >> the Swing peers handle all the widgets in a semi-lightweight fashion: >> all the drawing is done using Graphics contexts from the toplevel >> windows. However, the actual Swing components are not connected to the >> component hierarchy in any way, they are only 'hooked in' in a way, so >> that from the perspective of the Swing component it appears as if it >> were in the component hierarchy, but infact it isn't (from the >> perspective of the hierarchy). >> >> This architecture, requiring the real backend to implement the toplevel >> windows, and do everything else in a quasi-lightweight fashion has some >> disadvantages, or at least, one big disadvantage. It is really hard to >> get the special behaviour of AWT heavyweight components correct. For >> example, suppose you have a Frame, inside this frame you have a Swing >> component, and a Panel. The panel would always be on top of the Swing >> component, regardless of the stacking order in the window. To make it >> even more complex, if you had a Swing component in the Panel, it would >> be drawn on the Panel, not on the Window (an thus, it would appear to be >> always on top of the other Swing component). To get this right in the >> Swing peers, we had to implement a bunch of hacks, that involve double >> buffers for all components and other ugly stuff, and it never worked >> really well. >> >> The answer, for me, was found in the implementation of the XWindow peers >> in OpenJDK. All AWT components are 'simply' given their own X Windows. >> I, coming from a Swing background, first had to get over this concept a >> little, but then it seemed all logical, and I think most toolkits (at >> least in the X world) are implemented like that. And even though not >> specified exactly, Java AWT applications expect such behavior from AWT >> components. >> >> What I would like to propose is a kind of blend between the architecture >> of the XAWT peers in OpenJDK and the Swing peers: Let all AWT components >> be drawn in their own window, but let Swing do the drawing and handling >> of logic and events. This way, we would get a maximum portable AWT peer >> implementation, that requires only minimal effort to port to any new >> platform. The interesting part is to implement this idea: >> >> The first thing to think about is that all components should have their >> own window. To me, this means, that the common superclass of all the >> peers, the SwingComponentPeer, must implement all the necessary >> windowing behaviour. This is done similarily in the XAWT peers, but in a >> very X specific way. All other peers, including the toplevel peers and >> the widgets, derive from this class (an exception would probably be the >> menu related peers). Since SwingComponentPeer already implements all the >> necessary windowing functionality, the toplevel peers don't have much to >> do on their own, except delegating to super here and there. The widget >> peers now don't search for a parent graphics for drawing, but can do >> everything in their own window. >> >> The tricky part here is, when the SwingComponentPeer is at the top of >> the hierarchy, how can we 'plug in' platform specific code there? >> Subclassing surely isn't it. My idea is to have a kind of PlatformWindow >> interface, which is used by the SwingComponentPeer to delegate all the >> real window implementation stuff to. We should be careful to create a >> nice clean interface there. Porting the AWT would then be as simple as >> implementing this one interface (plus J2D pipeline), and boing! have all >> the AWT widgets and toplevel windows available. >> >> And we need to consider that not only SwingComponentPeer calls into the >> PlatformWindow impl, but the PlatformWindow impl also needs to call back >> to the SwingComponentPeer for handling events. In the XAWT >> implementation this is done by passing back X events. Of course, we >> don't want platform specific events in the Swing peers. So the >> PlatformWindow implementation needs to take care and transform all >> platform specific events to Java AWT events before passing them back to >> the SwingComponentPeer. It might be necessary to introduce a couple of >> internal peer events for handling stuff that is not covered by the >> 'official' AWT events. >> >> Summary of the architecture outline (this would be a good point to slip >> in an UML diagram, but I really don't like diagrams ;-) ): >> >> SwingComponentPeer is the all-mighty master superclass here. It provides >> all the necessary windowing functionality. But it doesn't implement this >> itself, but instead delegates to a PlatformWindow implementation. >> PlatformWindow would be an interface that specifies all the windowing >> functionality that we need from the underlying platform. The >> PlatformWindow implementation is also expected to pass all the events >> from the window to the SwingComponentPeer, in the form of AWT event >> objects (it must already translate the native event types to the >> corresponding AWT events). Subclasses of SwingComponentPeer implement >> both the widgets as well as the toplevel windows. Drawing the widgets >> and handling the state logic of the component is done by Swing. >> >> Please tell me what you think. >> >> Cheers, Roman >> From roman at kennke.org Thu Sep 4 13:33:24 2008 From: roman at kennke.org (roman at kennke.org) Date: Thu, 04 Sep 2008 20:33:24 +0000 Subject: hg: caciocavallo/ng: 2 new changesets Message-ID: <20080904203324.8C473D280@hg.openjdk.java.net> Changeset: 2a568ff28c1d Author: Roman Kennke Date: 2008-09-04 22:32 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/2a568ff28c1d Implemented PanelPeer and CheckboxPeer. + src/sun/awt/peer/cacio/CacioCheckboxPeer.java ! src/sun/awt/peer/cacio/CacioComponentPeer.java + src/sun/awt/peer/cacio/CacioPanelPeer.java ! src/sun/awt/peer/cacio/CacioToolkit.java ! tests/gnu/escher/TestComponents.java Changeset: f56ab94a84c3 Author: Roman Kennke Date: 2008-09-04 22:32 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/f56ab94a84c3 Automated merge with ssh://rkennke at hg.openjdk.java.net/caciocavallo/ng From Andrei.Dmitriev at Sun.COM Fri Sep 5 07:13:08 2008 From: Andrei.Dmitriev at Sun.COM (Andrei V. Dmitriev) Date: Fri, 05 Sep 2008 18:13:08 +0400 Subject: Ideas about improved architecture of the generic Swing peers In-Reply-To: <1220470826.3600.9.camel@moonlight> References: <1218794992.6783.44.camel@moonlight> <1220353774.8444.16.camel@moonlight> <48BEC812.9080301@sun.com> <1220470826.3600.9.camel@moonlight> Message-ID: <48C13E74.9040000@sun.com> Hi Roman, Roman Kennke wrote: >> I spent some time walking around the new code and found >> this pretty much similar to a prototype which existed by this moment for >> a - week or something. :) > > Cool. So maybe it's a good idea to decide for one of the two prototypes, > either you push out your stuff in the open and we work together on that, > or we continue together on the Cacio peers. What do you think? It > doesn't seem to make sense to develop two implementations in parallel... Right, but the thing is the progress there is more than poor - can't afford much time spending on that. Anyway, that is a hack into the XToolkit stack directly and that saved me a lot of time as there is no need to build the hierarchy from "scratch", just picked the existing stuff up. I realize that solution isn't so flexible and are considered like a proof of concept. > >> You did inherited from the SunToolkit class and left Runnable aside. >> Perhaps this could save some more lines of code. > > Surely. I'm not sure yet what SunToolkit has to do with Runnable, but I > guess I'll study the code and learn :-) > > >> As a matter of fact I also tried some more complicated AWT test which I >> believe covers all components and failed on TextArea peer >> initialization. > > Yeha! I only implemented Window, Frame, Canvas, Button and Label so far. > The other toplevels and Panel seem to be some more low hanging fruits. > The text components shouldn't be so bad - I already had these working to > some degree in the old Swing peers of GNU Classpath. What I'm really > scared about are the compound components like Scrollpane and Choice and > the Menu related stuff. Sigh, agree, that must be a scrupulous job. XChoice peer has never been in a good shape. :) Thanks, Andrei > >> The good thing is we actually have semi-lightweight peer >> for text components in X11 code so we probably may be kept from part of >> this work. Just in case you haven't realized that yet. :) > > Yeah, I've seen that. Very cool. Infact, my inspiration for all this is > both the XAWT peers of OpenJDK and my old work on GNU Classpath, and to > me, this new code is a merge of ideas from both. > >> Thanks, >> Andrei > > Thank you! > > /Roman > From roman at kennke.org Fri Sep 5 08:04:31 2008 From: roman at kennke.org (roman at kennke.org) Date: Fri, 05 Sep 2008 15:04:31 +0000 Subject: hg: caciocavallo/jdk7/corba: 11 new changesets Message-ID: <20080905150442.1F0B6D2DA@hg.openjdk.java.net> Changeset: 80a0f46a6203 Author: xdono Date: 2008-07-17 11:28 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/corba/rev/80a0f46a6203 Added tag jdk7-b31 for changeset ef6af34d75a7 ! .hgtags Changeset: f07251088084 Author: xdono Date: 2008-08-04 13:44 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/corba/rev/f07251088084 Added tag jdk7-b32 for changeset 80a0f46a6203 ! .hgtags Changeset: e9dad83f035c Author: ohair Date: 2008-08-01 13:37 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/corba/rev/e9dad83f035c 6732815: CORBA_2_3 java sources not explicitly compiled Reviewed-by: tbell ! make/org/omg/CORBA/Makefile Changeset: 41c585204e91 Author: tbell Date: 2008-08-07 09:40 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/corba/rev/41c585204e91 Merge Changeset: 6e0cf0dc59e5 Author: ohair Date: 2008-08-06 14:30 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/corba/rev/6e0cf0dc59e5 6734545: Corrections to missing explicit corba sources on javac compile lines Reviewed-by: tbell ! make/com/sun/corba/minclude/com_sun_corba_se_impl_dynamicany.jmk ! make/com/sun/corba/minclude/com_sun_corba_se_impl_encoding.jmk ! make/com/sun/corba/minclude/com_sun_corba_se_impl_ior.jmk ! make/com/sun/corba/minclude/com_sun_corba_se_impl_orbutil.jmk ! make/com/sun/corba/minclude/com_sun_corba_se_impl_protocol.jmk ! make/com/sun/corba/minclude/com_sun_corba_se_spi_legacy_interceptor.jmk ! make/com/sun/corba/minclude/com_sun_corba_se_spi_monitoring.jmk ! make/com/sun/corba/minclude/com_sun_corba_se_spi_presentation_rmi.jmk ! make/com/sun/corba/minclude/com_sun_corba_se_spi_transport.jmk ! make/com/sun/corba/minclude/org_omg_CosNaming.jmk ! make/com/sun/corba/minclude/org_omg_DynamicAny.jmk ! make/com/sun/corba/minclude/org_omg_PortableInterceptor.jmk ! make/com/sun/corba/se/sources/Makefile ! make/javax/xa/Makefile ! make/org/omg/CORBA/Makefile Changeset: 33486187d718 Author: ohair Date: 2008-08-06 16:08 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/corba/rev/33486187d718 6724669: JDK7: Official change to Sun Studio 12 compilers on Solaris Reviewed-by: tbell ! make/common/shared/Compiler-sun.gmk ! make/jprt.config Changeset: 6a5b9d2f8b20 Author: xdono Date: 2008-08-12 15:16 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/corba/rev/6a5b9d2f8b20 Merge Changeset: 05bf6aacc874 Author: xdono Date: 2008-08-14 09:26 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/corba/rev/05bf6aacc874 Added tag jdk7-b33 for changeset 6a5b9d2f8b20 ! .hgtags Changeset: e0e03ab25da0 Author: tbell Date: 2008-08-07 18:00 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/corba/rev/e0e03ab25da0 Merge Changeset: 0a812b9824e5 Author: tbell Date: 2008-08-14 22:14 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/corba/rev/0a812b9824e5 Merge Changeset: 3867c4d14a5b Author: xdono Date: 2008-08-28 11:05 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/corba/rev/3867c4d14a5b Added tag jdk7-b34 for changeset 0a812b9824e5 ! .hgtags From roman at kennke.org Fri Sep 5 08:07:52 2008 From: roman at kennke.org (roman at kennke.org) Date: Fri, 05 Sep 2008 15:07:52 +0000 Subject: hg: caciocavallo/jdk7/hotspot: 58 new changesets Message-ID: <20080905150947.A4E6BD2DF@hg.openjdk.java.net> Changeset: 2bdd95ad93d7 Author: xdono Date: 2008-07-17 11:28 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/2bdd95ad93d7 Added tag jdk7-b31 for changeset 9c2ecc2ffb12 ! .hgtags Changeset: 1fdb98a17101 Author: coleenp Date: 2008-07-19 17:38 -0400 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/1fdb98a17101 6716785: implicit null checks not triggering with CompressedOops Summary: allocate alignment-sized page(s) below java heap so that memory accesses at heap_base+1page give signal and cause an implicit null check Reviewed-by: kvn, jmasa, phh, jcoomes ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/os_cpu/linux_sparc/vm/assembler_linux_sparc.cpp ! src/os_cpu/linux_x86/vm/assembler_linux_x86_32.cpp ! src/os_cpu/linux_x86/vm/assembler_linux_x86_64.cpp ! src/os_cpu/solaris_sparc/vm/assembler_solaris_sparc.cpp ! src/os_cpu/solaris_x86/vm/assembler_solaris_x86_32.cpp ! src/os_cpu/solaris_x86/vm/assembler_solaris_x86_64.cpp ! src/os_cpu/windows_x86/vm/assembler_windows_x86_32.cpp ! src/os_cpu/windows_x86/vm/assembler_windows_x86_64.cpp ! src/share/vm/asm/assembler.cpp ! src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/gc_implementation/parallelScavenge/psVirtualspace.cpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/os.hpp ! src/share/vm/runtime/virtualspace.cpp ! src/share/vm/runtime/virtualspace.hpp Changeset: 3df2fe7c4451 Author: trims Date: 2008-07-25 11:29 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/3df2fe7c4451 Merge Changeset: b727c32788a9 Author: trims Date: 2008-08-01 18:51 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/b727c32788a9 6732819: Turn off compressed oops by default for now Summary: Workaround for CompOops bug Reviewed-by: coleenp ! src/share/vm/runtime/arguments.cpp Changeset: 585535ec8a14 Author: xdono Date: 2008-08-04 13:44 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/585535ec8a14 Added tag jdk7-b32 for changeset b727c32788a9 ! .hgtags Changeset: 5b3b8a69f10f Author: xdono Date: 2008-08-14 09:26 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/5b3b8a69f10f Added tag jdk7-b33 for changeset 585535ec8a14 ! .hgtags Changeset: d95b224e9f17 Author: kamg Date: 2008-07-28 14:07 -0400 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/d95b224e9f17 6721093: -XX:AppendRatio=N not supported Summary: Add mechanism to ignore unsupported flags for a set period of time Reviewed-by: acorn, never, coleenp ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/includeDB_core ! src/share/vm/memory/universe.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/arguments.hpp ! src/share/vm/runtime/init.cpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/java.hpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/os.hpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/threadLocalStorage.cpp ! src/share/vm/runtime/threadLocalStorage.hpp ! src/share/vm/runtime/vmStructs.cpp ! src/share/vm/services/threadService.cpp Changeset: 4395df5b73d3 Author: coleenp Date: 2008-07-30 15:06 -0400 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/4395df5b73d3 Merge Changeset: 524eca34ea76 Author: kvn Date: 2008-07-03 18:02 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/524eca34ea76 6684714: Optimize EA Connection Graph build performance Summary: switch on EA by default, optimize Connection Graph construction Reviewed-by: rasbold, never ! src/share/vm/compiler/oopMap.cpp ! src/share/vm/compiler/oopMap.hpp ! src/share/vm/opto/bytecodeInfo.cpp ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/escape.cpp ! src/share/vm/opto/escape.hpp Changeset: 4a4c365f777d Author: kvn Date: 2008-07-11 12:19 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/4a4c365f777d Merge ! src/share/vm/compiler/oopMap.cpp ! src/share/vm/compiler/oopMap.hpp ! src/share/vm/opto/bytecodeInfo.cpp ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/escape.cpp ! src/share/vm/opto/escape.hpp Changeset: 9b66e6287f4a Author: rasbold Date: 2008-07-16 10:08 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/9b66e6287f4a 6707044: uncommon_trap of ifnull bytecode leaves garbage on expression stack Summary: Remove call to repush_if_args() Reviewed-by: kvn, jrose ! src/share/vm/opto/parse2.cpp Changeset: 02a35ad4adf8 Author: kvn Date: 2008-07-16 16:04 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/02a35ad4adf8 6723160: Nightly failure: Error: meet not symmetric Summary: Add missing _instance_id settings and other EA fixes. Reviewed-by: rasbold ! src/share/vm/adlc/formssel.cpp ! src/share/vm/opto/callnode.cpp ! src/share/vm/opto/cfgnode.cpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/escape.cpp ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/macro.hpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/node.hpp ! src/share/vm/opto/type.cpp + test/compiler/6724218/Test.java Changeset: 18aab3cdd513 Author: rasbold Date: 2008-07-21 13:37 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/18aab3cdd513 6726504: handle do_ifxxx calls in parser more uniformly Summary: make do_ifnull() handling similar to do_if() Reviewed-by: jrose, kvn ! src/share/vm/opto/parse.hpp ! src/share/vm/opto/parse2.cpp Changeset: 910a4cb98e9e Author: never Date: 2008-07-25 09:07 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/910a4cb98e9e 6717457: Internal Error (src/share/vm/code/relocInfo.hpp:1089) Reviewed-by: kvn ! src/cpu/x86/vm/stubGenerator_x86_32.cpp ! src/cpu/x86/vm/stubGenerator_x86_64.cpp Changeset: 6ca61c728c2d Author: never Date: 2008-07-25 11:32 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/6ca61c728c2d 6712835: Server compiler fails with assertion (loop_count < K,"infinite loop in PhaseIterGVN::transform") Reviewed-by: kvn ! src/share/vm/ci/ciMethodBlocks.cpp ! src/share/vm/opto/idealGraphPrinter.cpp ! src/share/vm/opto/ifnode.cpp + test/compiler/6712835/Test6712835.java Changeset: 020a0b730379 Author: never Date: 2008-07-25 15:54 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/020a0b730379 6700047: C2 failed in idom_no_update Summary: partial peeling shouldn't place clones into loop Reviewed-by: kvn ! src/share/vm/opto/loopopts.cpp + test/compiler/6700047/Test6700047.java Changeset: be7facf71163 Author: kvn Date: 2008-07-25 16:03 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/be7facf71163 6729552: jvm98 crashes with SS12 built jdk on Solaris X64 fastdebug version Summary: SS12 C++ tripped over new templates usage in instanceKlass.cpp. Reviewed-by: never ! make/solaris/makefiles/fastdebug.make Changeset: b0fe4deeb9fb Author: kvn Date: 2008-07-28 17:12 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/b0fe4deeb9fb 6726999: nsk/stress/jck12a/jck12a010 assert(n != null,"Bad immediate dominator info.") Summary: Escape Analysis fixes. Reviewed-by: never, rasbold ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/escape.cpp ! src/share/vm/opto/escape.hpp ! src/share/vm/opto/lcm.cpp ! src/share/vm/opto/loopopts.cpp ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/memnode.hpp ! src/share/vm/opto/superword.cpp ! src/share/vm/runtime/arguments.cpp ! test/compiler/6646019/Test.java ! test/compiler/6689060/Test.java ! test/compiler/6695810/Test.java + test/compiler/6726999/Test.java Changeset: 3e333d6f35dd Author: rasbold Date: 2008-07-29 14:48 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/3e333d6f35dd 6730192: expression stack wrong at deoptimization point Summary: add safepoint before popping expression stack, not after Reviewed-by: kvn ! src/share/vm/opto/parse2.cpp Changeset: ef72a36b968e Author: kvn Date: 2008-07-30 09:54 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/ef72a36b968e Merge ! src/share/vm/runtime/arguments.cpp Changeset: 4c5fa80d85da Author: kvn Date: 2008-07-31 13:42 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/4c5fa80d85da Merge ! src/share/vm/runtime/arguments.cpp Changeset: 40b69ca33f4b Author: kvn Date: 2008-07-31 15:47 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/40b69ca33f4b 6732312: Switch off executing Escape Analysis by default Summary: Switch off executing Escape Analysis by default for now Reviewed-by: rasbold ! src/share/vm/opto/c2_globals.hpp Changeset: 54499b980c23 Author: swamyv Date: 2008-07-29 13:54 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/54499b980c23 6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar Summary: Removed maf-1_0.jar and jlfg-1_0.jar files. Reviewed-by: poonam, jjh ! agent/make/Makefile ! agent/make/bugspot.bat ! agent/make/build.xml ! agent/make/hsdb.bat ! agent/make/hsdb.sh ! agent/make/saenv.bat ! agent/make/saenv.sh ! agent/make/saenv64.bat ! agent/make/saenv64.sh + agent/src/share/classes/com/sun/java/swing/action/AboutAction.java + agent/src/share/classes/com/sun/java/swing/action/ActionManager.java + agent/src/share/classes/com/sun/java/swing/action/ActionUtilities.java + agent/src/share/classes/com/sun/java/swing/action/AlignCenterAction.java + agent/src/share/classes/com/sun/java/swing/action/AlignLeftAction.java + agent/src/share/classes/com/sun/java/swing/action/AlignRightAction.java + agent/src/share/classes/com/sun/java/swing/action/ApplyAction.java + agent/src/share/classes/com/sun/java/swing/action/BackAction.java + agent/src/share/classes/com/sun/java/swing/action/CancelAction.java + agent/src/share/classes/com/sun/java/swing/action/DelegateAction.java + agent/src/share/classes/com/sun/java/swing/action/ExitAction.java + agent/src/share/classes/com/sun/java/swing/action/FileMenu.java + agent/src/share/classes/com/sun/java/swing/action/FinishAction.java + agent/src/share/classes/com/sun/java/swing/action/HelpAction.java + agent/src/share/classes/com/sun/java/swing/action/HelpMenu.java + agent/src/share/classes/com/sun/java/swing/action/NewAction.java + agent/src/share/classes/com/sun/java/swing/action/NextAction.java + agent/src/share/classes/com/sun/java/swing/action/OkAction.java + agent/src/share/classes/com/sun/java/swing/action/OpenAction.java + agent/src/share/classes/com/sun/java/swing/action/SaveAction.java + agent/src/share/classes/com/sun/java/swing/action/SaveAsAction.java + agent/src/share/classes/com/sun/java/swing/action/StateChangeAction.java + agent/src/share/classes/com/sun/java/swing/action/ViewMenu.java + agent/src/share/classes/com/sun/java/swing/ui/CommonMenuBar.java + agent/src/share/classes/com/sun/java/swing/ui/CommonToolBar.java + agent/src/share/classes/com/sun/java/swing/ui/CommonUI.java + agent/src/share/classes/com/sun/java/swing/ui/OkCancelButtonPanel.java + agent/src/share/classes/com/sun/java/swing/ui/OkCancelDialog.java + agent/src/share/classes/com/sun/java/swing/ui/SplashScreen.java + agent/src/share/classes/com/sun/java/swing/ui/StatusBar.java + agent/src/share/classes/com/sun/java/swing/ui/TabsDlg.java + agent/src/share/classes/com/sun/java/swing/ui/ToggleActionPropertyChangeListener.java + agent/src/share/classes/com/sun/java/swing/ui/WizardDlg.java + agent/src/share/classes/images/toolbarButtonGraphics/development/Server16.gif + agent/src/share/classes/images/toolbarButtonGraphics/development/Server24.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/About16.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/About24.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/Delete16.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/Delete24.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/Find16.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/Help16.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/Help24.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/History16.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/History24.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/Information16.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/Information24.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/New16.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/New24.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/Open16.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/Open24.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/Save16.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/Save24.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/SaveAs16.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/SaveAs24.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/Zoom16.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/ZoomIn16.gif + agent/src/share/classes/images/toolbarButtonGraphics/general/ZoomIn24.gif + agent/src/share/classes/images/toolbarButtonGraphics/navigation/Down16.gif + agent/src/share/classes/images/toolbarButtonGraphics/navigation/Up16.gif + agent/src/share/classes/images/toolbarButtonGraphics/text/AlignCenter16.gif + agent/src/share/classes/images/toolbarButtonGraphics/text/AlignCenter24.gif + agent/src/share/classes/images/toolbarButtonGraphics/text/AlignLeft16.gif + agent/src/share/classes/images/toolbarButtonGraphics/text/AlignLeft24.gif + agent/src/share/classes/images/toolbarButtonGraphics/text/AlignRight16.gif + agent/src/share/classes/images/toolbarButtonGraphics/text/AlignRight24.gif - agent/src/share/lib/jlfgr-1_0.jar - agent/src/share/lib/maf-1_0.jar Changeset: c7e8144ef65e Author: dcubed Date: 2008-07-30 14:41 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/c7e8144ef65e Merge - agent/src/share/lib/jlfgr-1_0.jar - agent/src/share/lib/maf-1_0.jar Changeset: 610674f963d2 Author: dcubed Date: 2008-07-31 22:34 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/610674f963d2 Merge - agent/src/share/lib/jlfgr-1_0.jar - agent/src/share/lib/maf-1_0.jar Changeset: 7f601f7c9b48 Author: martin Date: 2008-07-31 18:50 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/7f601f7c9b48 6731726: jmap -permstat reports only 50-60% of permgen memory usage. Reviewed-by: swamyv, martin Contributed-by: yamauchi at google.com ! agent/src/share/classes/sun/jvm/hotspot/tools/PermStat.java Changeset: f31ba9518910 Author: dcubed Date: 2008-07-31 22:40 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/f31ba9518910 Merge Changeset: 12eea04c8b06 Author: jmasa Date: 2008-07-09 15:08 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/12eea04c8b06 6672698: mangle_unused_area() should not remangle the entire heap at each collection. Summary: Maintain a high water mark for the allocations in a space and mangle only up to that high water mark. Reviewed-by: ysr, apetrusenko ! src/share/vm/gc_implementation/concurrentMarkSweep/binaryTreeDictionary.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/freeBlockDictionary.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/freeChunk.hpp ! src/share/vm/gc_implementation/includeDB_gc_concurrentMarkSweep ! src/share/vm/gc_implementation/includeDB_gc_parNew ! src/share/vm/gc_implementation/includeDB_gc_parallelScavenge ! src/share/vm/gc_implementation/includeDB_gc_shared ! src/share/vm/gc_implementation/parNew/asParNewGeneration.cpp ! src/share/vm/gc_implementation/parNew/parNewGeneration.cpp ! src/share/vm/gc_implementation/parallelScavenge/asPSYoungGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/cardTableExtension.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp ! src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp ! src/share/vm/gc_implementation/parallelScavenge/psMarkSweepDecorator.cpp ! src/share/vm/gc_implementation/parallelScavenge/psOldGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/psOldGen.hpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp ! src/share/vm/gc_implementation/parallelScavenge/psYoungGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/psYoungGen.hpp ! src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp ! src/share/vm/gc_implementation/shared/mutableNUMASpace.hpp ! src/share/vm/gc_implementation/shared/mutableSpace.cpp ! src/share/vm/gc_implementation/shared/mutableSpace.hpp + src/share/vm/gc_implementation/shared/spaceDecorator.cpp + src/share/vm/gc_implementation/shared/spaceDecorator.hpp ! src/share/vm/includeDB_core ! src/share/vm/includeDB_features ! src/share/vm/memory/defNewGeneration.cpp ! src/share/vm/memory/defNewGeneration.hpp ! src/share/vm/memory/dump.cpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/memory/genCollectedHeap.hpp ! src/share/vm/memory/genMarkSweep.cpp ! src/share/vm/memory/generation.cpp ! src/share/vm/memory/generation.hpp ! src/share/vm/memory/space.cpp ! src/share/vm/memory/space.hpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/utilities/globalDefinitions.hpp Changeset: 15dd2594d08e Author: jcoomes Date: 2008-07-11 16:11 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/15dd2594d08e 6718283: existing uses of *_FORMAT_W() were broken by 6521491 Reviewed-by: ysr, pbk ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp Changeset: f88815ca1af1 Author: jcoomes Date: 2008-07-11 16:11 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/f88815ca1af1 6483129: par compact assertion failure (new_top > bottom) Summary: avoid computing the dense prefix if a space is empty Reviewed-by: pbk, tonyp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp Changeset: 2214b226b7f0 Author: jcoomes Date: 2008-07-11 16:11 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/2214b226b7f0 6724367: par compact could clear less young gen summary data Reviewed-by: jmasa, apetrusenko ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp Changeset: 9d6a3a6891f8 Author: iveresov Date: 2008-07-14 04:12 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/9d6a3a6891f8 6720130: NUMA allocator: The linux version should search for libnuma.so.1 Summary: Search for libnuma.so.1 on Linux and liblgrp.so.1 on Solaris. Reviewed-by: jmasa ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp Changeset: d6340ab4105b Author: iveresov Date: 2008-07-17 10:26 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/d6340ab4105b 6723228: NUMA allocator: assert(lgrp_id != -1, "No lgrp_id set") 6723229: NUMA allocator: assert(lgrp_num > 0, "There should be at least one locality group") Summary: The fix takes care of the assertion triggered during TLAB resizing after reconfiguration. Also it now handles a defect in the topology graph, in which a single leaf node doesn't have memory. Reviewed-by: jmasa ! src/os/solaris/vm/os_solaris.cpp ! src/share/vm/gc_implementation/shared/gcUtil.hpp ! src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp ! src/share/vm/gc_implementation/shared/mutableNUMASpace.hpp Changeset: 850fdf70db2b Author: jmasa Date: 2008-07-28 15:30 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/850fdf70db2b Merge ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/binaryTreeDictionary.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/freeBlockDictionary.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/freeChunk.hpp ! src/share/vm/gc_implementation/includeDB_gc_concurrentMarkSweep ! src/share/vm/gc_implementation/includeDB_gc_parallelScavenge ! src/share/vm/gc_implementation/includeDB_gc_shared ! src/share/vm/gc_implementation/parNew/asParNewGeneration.cpp ! src/share/vm/gc_implementation/parNew/parNewGeneration.cpp ! src/share/vm/gc_implementation/parallelScavenge/asPSYoungGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/cardTableExtension.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp ! src/share/vm/gc_implementation/parallelScavenge/psMarkSweepDecorator.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp ! src/share/vm/gc_implementation/parallelScavenge/psYoungGen.cpp ! src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp ! src/share/vm/gc_implementation/shared/mutableNUMASpace.hpp ! src/share/vm/gc_implementation/shared/mutableSpace.cpp ! src/share/vm/gc_implementation/shared/mutableSpace.hpp ! src/share/vm/includeDB_core ! src/share/vm/memory/defNewGeneration.cpp ! src/share/vm/memory/defNewGeneration.hpp ! src/share/vm/memory/dump.cpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/memory/genCollectedHeap.hpp ! src/share/vm/memory/genMarkSweep.cpp ! src/share/vm/memory/generation.cpp ! src/share/vm/memory/generation.hpp ! src/share/vm/memory/space.cpp ! src/share/vm/memory/space.hpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/utilities/globalDefinitions.hpp Changeset: b7f01ad69d30 Author: jmasa Date: 2008-08-04 12:11 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/b7f01ad69d30 Merge - agent/src/share/lib/jlfgr-1_0.jar - agent/src/share/lib/maf-1_0.jar ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/share/vm/includeDB_core Changeset: 818a18cd69a8 Author: jmasa Date: 2008-07-30 11:54 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/818a18cd69a8 6730514: assertion failure in mangling code when expanding by 0 bytes Summary: An expansion by 0 bytes was not anticipated when the assertion was composed. Reviewed-by: jjh, jcoomes, apetrusenko ! make/windows/makefiles/defs.make ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp ! src/share/vm/gc_implementation/parallelScavenge/psOldGen.cpp ! src/share/vm/gc_implementation/shared/spaceDecorator.cpp ! src/share/vm/memory/compactingPermGenGen.cpp ! src/share/vm/memory/compactingPermGenGen.hpp ! src/share/vm/memory/generation.cpp ! src/share/vm/memory/generation.hpp Changeset: e8cf9b1f7c93 Author: jmasa Date: 2008-08-04 12:15 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/e8cf9b1f7c93 Merge Changeset: 6f17a7c9f8b4 Author: xlu Date: 2008-08-01 15:12 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/6f17a7c9f8b4 6719981: Update Hotspot Windows os_win32 for windows XP 64 bit and windows 2008 Reviewed-by: dholmes, kamg ! src/os/windows/vm/os_windows.cpp Changeset: f7e6d42d9323 Author: xlu Date: 2008-08-01 15:18 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/f7e6d42d9323 6618886: Anonymous objects can be destructed immediately and so should not be used Reviewed-by: dholmes, kamg ! src/os/solaris/vm/osThread_solaris.cpp Changeset: 4fa67937726c Author: trims Date: 2008-08-10 13:13 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/4fa67937726c Merge - agent/src/share/lib/jlfgr-1_0.jar - agent/src/share/lib/maf-1_0.jar Changeset: aa8f54688692 Author: trims Date: 2008-08-10 21:31 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/aa8f54688692 Merge - agent/src/share/lib/jlfgr-1_0.jar - agent/src/share/lib/maf-1_0.jar ! src/share/vm/runtime/arguments.cpp Changeset: 79276d1b7e50 Author: trims Date: 2008-08-10 21:58 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/79276d1b7e50 6735720: Bump the HS14 build number to 03 Summary: Update Hotspot 14 build number to 03 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 4852f4a82e58 Author: ohair Date: 2008-08-14 11:18 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/4852f4a82e58 6724668: Hotspot: Official change to Sun Studio 12 compilers on Solaris Summary: Moving to SS12. Builds with SS11 still work, the compiler comes from your PATH when building hotspot. Reviewed-by: tbell ! make/jprt.config ! make/solaris/makefiles/sparcWorks.make Changeset: f3a650d8df24 Author: thurka Date: 2008-08-14 21:05 +0200 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/f3a650d8df24 6625846: Export system property java.version via jvmstat Summary: java.version added to property_counters_ss array Reviewed-by: swamyv ! src/share/vm/runtime/statSampler.cpp Changeset: 7f9b895777f8 Author: thurka Date: 2008-08-15 05:55 +0200 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/7f9b895777f8 Merge Changeset: a2de7dfbfcf0 Author: swamyv Date: 2008-08-12 12:44 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/a2de7dfbfcf0 6718125: SA: jmap prints negative size for MaxNewHeap. Summary: Fixed printing of negative value for MaxNewHeap. Reviewed-by: jjh ! agent/src/share/classes/sun/jvm/hotspot/tools/HeapSummary.java Changeset: 44aea0a1e099 Author: swamyv Date: 2008-08-15 12:05 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/44aea0a1e099 Merge Changeset: 9199f248b0ee Author: ysr Date: 2008-08-14 17:58 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/9199f248b0ee 6722112: CMS: Incorrect encoding of overflown object arrays during concurrent precleaning Summary: When an object array overflows during precleaning, we should have been marking the entire array dirty, not just its first card. Reviewed-by: jmasa, poonam, tonyp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp Changeset: 92e12124e774 Author: ysr Date: 2008-08-20 01:30 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/92e12124e774 Merge Changeset: 51ae48d8072f Author: kamg Date: 2008-08-13 08:56 -0400 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/51ae48d8072f 6736718: more copyright headers wrong Summary: Changed license headers to GPL Reviewed-by: tonyp, rasbold ! make/hotspot_distro ! test/compiler/6646019/Test.java ! test/compiler/6689060/Test.java ! test/compiler/6695810/Test.java Changeset: 3529d0e8d09c Author: xlu Date: 2008-08-15 10:08 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/3529d0e8d09c 6608862: segv in JvmtiEnvBase::check_for_periodic_clean_up() Reviewed-by: dholmes, dcubed, jcoomes ! src/share/vm/runtime/thread.cpp Changeset: 6e76352f1f62 Author: xlu Date: 2008-08-18 14:53 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/6e76352f1f62 6459085: naked pointer subtractions in class data sharing code Reviewed-by: jcoomes ! make/linux/makefiles/vm.make ! src/share/vm/memory/dump.cpp Changeset: 70c4fb9cf899 Author: apangin Date: 2008-08-19 06:02 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/70c4fb9cf899 Merge - agent/src/share/lib/jlfgr-1_0.jar - agent/src/share/lib/maf-1_0.jar ! src/share/vm/memory/dump.cpp ! test/compiler/6646019/Test.java ! test/compiler/6689060/Test.java ! test/compiler/6695810/Test.java Changeset: d7bb383033d6 Author: apangin Date: 2008-08-20 12:24 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/d7bb383033d6 Merge Changeset: 9f7cf8db35b8 Author: trims Date: 2008-08-20 20:24 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/9f7cf8db35b8 Merge Changeset: 5251a9cd8eb8 Author: jcoomes Date: 2008-08-27 15:41 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/5251a9cd8eb8 6742207: jdk7 32-bit windows build failed running pack200 Summary: 6730514 inadvertently disabled perm gen expansion; reenable Reviewed-by: ysr ! src/share/vm/memory/compactingPermGenGen.cpp ! src/share/vm/memory/compactingPermGenGen.hpp Changeset: 5967ae2171f6 Author: xdono Date: 2008-08-28 11:05 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/5967ae2171f6 Added tag jdk7-b34 for changeset 5251a9cd8eb8 ! .hgtags Changeset: c570f6da01ce Author: Roman Kennke Date: 2008-09-05 17:06 +0200 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/hotspot/rev/c570f6da01ce Merged from JDK7 master repository. - agent/src/share/lib/jlfgr-1_0.jar - agent/src/share/lib/maf-1_0.jar From roman at kennke.org Fri Sep 5 08:18:54 2008 From: roman at kennke.org (roman at kennke.org) Date: Fri, 05 Sep 2008 15:18:54 +0000 Subject: hg: caciocavallo/jdk7: 10 new changesets Message-ID: <20080905151854.706F8D2E4@hg.openjdk.java.net> Changeset: becf8e17fc02 Author: xdono Date: 2008-07-17 11:28 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/rev/becf8e17fc02 Added tag jdk7-b31 for changeset 3300a35a0bd5 ! .hgtags Changeset: 64da805be725 Author: xdono Date: 2008-07-17 22:06 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/rev/64da805be725 Merge Changeset: 5ceaca28a876 Author: xdono Date: 2008-08-04 13:44 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/rev/5ceaca28a876 Added tag jdk7-b32 for changeset 64da805be725 ! .hgtags Changeset: 55b2666e52e1 Author: ohair Date: 2008-08-06 14:57 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/rev/55b2666e52e1 6728161: Add SKIP_BOOT_CYCLE feature to create boot jdk and use it during build Reviewed-by: tbell ! Makefile ! make/Defs-internal.gmk ! make/jprt.config ! make/jprt.gmk Changeset: 844619bd3580 Author: ohair Date: 2008-08-06 16:06 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/rev/844619bd3580 6724669: JDK7: Official change to Sun Studio 12 compilers on Solaris Reviewed-by: tbell ! README-builds.html ! make/jprt.config Changeset: 746ca6b12c56 Author: ohair Date: 2008-08-06 16:39 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/rev/746ca6b12c56 Merge ! README-builds.html ! make/jprt.config Changeset: bb1ef4ee3d2c Author: xdono Date: 2008-08-12 15:16 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/rev/bb1ef4ee3d2c Merge Changeset: 7aa4f433229a Author: xdono Date: 2008-08-14 09:26 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/rev/7aa4f433229a Added tag jdk7-b33 for changeset bb1ef4ee3d2c ! .hgtags Changeset: 46a989ab9329 Author: ohair Date: 2008-08-17 09:56 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/rev/46a989ab9329 6737659: debug bundles are empty Summary: Build order issue with debug build, caused final debug bundle to be empty. Reviewed-by: tbell ! Makefile Changeset: 143c1abedb7d Author: xdono Date: 2008-08-28 11:05 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/rev/143c1abedb7d Added tag jdk7-b34 for changeset 46a989ab9329 ! .hgtags From roman at kennke.org Fri Sep 5 08:19:31 2008 From: roman at kennke.org (roman at kennke.org) Date: Fri, 05 Sep 2008 15:19:31 +0000 Subject: hg: caciocavallo/jdk7/jaxp: 4 new changesets Message-ID: <20080905151938.68E52D2E9@hg.openjdk.java.net> Changeset: 400a5ee432cc Author: xdono Date: 2008-07-17 11:28 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/jaxp/rev/400a5ee432cc Added tag jdk7-b31 for changeset 255d64ee287e ! .hgtags Changeset: 95375835527f Author: xdono Date: 2008-08-04 13:44 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/jaxp/rev/95375835527f Added tag jdk7-b32 for changeset 400a5ee432cc ! .hgtags Changeset: 01facdf8cabd Author: xdono Date: 2008-08-14 09:26 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/jaxp/rev/01facdf8cabd Added tag jdk7-b33 for changeset 95375835527f ! .hgtags Changeset: eac46d1eb7f0 Author: xdono Date: 2008-08-28 11:05 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/jaxp/rev/eac46d1eb7f0 Added tag jdk7-b34 for changeset 01facdf8cabd ! .hgtags From roman at kennke.org Fri Sep 5 08:21:53 2008 From: roman at kennke.org (roman at kennke.org) Date: Fri, 05 Sep 2008 15:21:53 +0000 Subject: hg: caciocavallo/jdk7/jaxws: 4 new changesets Message-ID: <20080905152200.A21C0D2F2@hg.openjdk.java.net> Changeset: e6daca2eced9 Author: xdono Date: 2008-07-17 11:28 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/jaxws/rev/e6daca2eced9 Added tag jdk7-b31 for changeset f97862382536 ! .hgtags Changeset: 6dcbcfb9551a Author: xdono Date: 2008-08-04 13:44 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/jaxws/rev/6dcbcfb9551a Added tag jdk7-b32 for changeset e6daca2eced9 ! .hgtags Changeset: 7a9f629cd957 Author: xdono Date: 2008-08-14 09:26 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/jaxws/rev/7a9f629cd957 Added tag jdk7-b33 for changeset 6dcbcfb9551a ! .hgtags Changeset: b0f01c2508b6 Author: xdono Date: 2008-08-28 11:05 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/jaxws/rev/b0f01c2508b6 Added tag jdk7-b34 for changeset 7a9f629cd957 ! .hgtags From roman at kennke.org Fri Sep 5 08:22:08 2008 From: roman at kennke.org (roman at kennke.org) Date: Fri, 05 Sep 2008 15:22:08 +0000 Subject: hg: caciocavallo/jdk7/langtools: 39 new changesets Message-ID: <20080905152310.537A4D2F3@hg.openjdk.java.net> Changeset: c5965e789eb6 Author: xdono Date: 2008-07-17 11:28 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/c5965e789eb6 Added tag jdk7-b31 for changeset 07c916ecfc71 ! .hgtags Changeset: 5e270b126573 Author: jjg Date: 2008-07-08 16:59 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/5e270b126573 6715251: javap should be consistent with javac and return 2 if given no arguments Reviewed-by: ksrini ! src/share/classes/com/sun/tools/javap/JavapTask.java ! test/tools/javap/T4876942.java + test/tools/javap/T6715251.java Changeset: 0d4aa3c00af5 Author: jjg Date: 2008-07-08 17:14 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/0d4aa3c00af5 6715757: javap does not print "extends java.lang.Object" Reviewed-by: ksrini ! src/share/classes/com/sun/tools/classfile/Type.java ! src/share/classes/com/sun/tools/javap/ClassWriter.java ! test/tools/javap/4870651/T4870651.java ! test/tools/javap/T4880663.java Changeset: df47f7f4c95a Author: jjg Date: 2008-07-08 17:25 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/df47f7f4c95a 6715753: unknown option error can be a little more helpful Reviewed-by: ksrini ! src/share/classes/com/sun/tools/javap/JavapTask.java ! src/share/classes/com/sun/tools/javap/resources/javap.properties + test/tools/javap/T6715753.java Changeset: 1bdd8cea398e Author: jjg Date: 2008-07-08 17:53 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/1bdd8cea398e 6716452: (classfile) need a method to get the index of an attribute Reviewed-by: ksrini ! src/share/classes/com/sun/tools/classfile/Attributes.java + test/tools/javap/T6716452.java Changeset: c33f7ddeeff2 Author: jjg Date: 2008-07-08 18:06 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/c33f7ddeeff2 4501661: disallow mixing -public, -private, and -protected options at the same time Reviewed-by: ksrini ! src/share/classes/com/sun/tools/javap/JavapTask.java ! src/share/classes/com/sun/tools/javap/Options.java ! src/share/classes/com/sun/tools/javap/resources/javap.properties + test/tools/javap/T4501661.java Changeset: 82c7aa6fe50a Author: jjg Date: 2008-07-10 11:25 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/82c7aa6fe50a 6724327: eliminate use of shell tests for simple golden file tests Reviewed-by: darcy ! test/tools/javac/CyclicInheritance.java ! test/tools/javac/CyclicInheritance.out - test/tools/javac/CyclicInheritance.sh ! test/tools/javac/ExtendsAccess/ExtendsAccess.java ! test/tools/javac/ExtendsAccess/ExtendsAccess.out - test/tools/javac/ExtendsAccess/ExtendsAccess.sh ! test/tools/javac/FloatingPointChanges/BadConstructorModifiers.java ! test/tools/javac/FloatingPointChanges/BadConstructorModifiers.out - test/tools/javac/FloatingPointChanges/BadConstructorModifiers.sh ! test/tools/javac/InnerNamedConstant_2.java ! test/tools/javac/InnerNamedConstant_2.out - test/tools/javac/InnerNamedConstant_2.sh ! test/tools/javac/LocalClasses_2.java ! test/tools/javac/LocalClasses_2.out - test/tools/javac/LocalClasses_2.sh ! test/tools/javac/NameCollision.java ! test/tools/javac/NameCollision.out - test/tools/javac/NameCollision.sh ! test/tools/javac/NestedInnerClassNames.java ! test/tools/javac/NestedInnerClassNames.out - test/tools/javac/NestedInnerClassNames.sh ! test/tools/javac/NonStaticFieldExpr1.java ! test/tools/javac/NonStaticFieldExpr1.out - test/tools/javac/NonStaticFieldExpr1.sh ! test/tools/javac/NonStaticFieldExpr2.java ! test/tools/javac/NonStaticFieldExpr2.out - test/tools/javac/NonStaticFieldExpr2.sh ! test/tools/javac/NonStaticFieldExpr3.java ! test/tools/javac/NonStaticFieldExpr3.out - test/tools/javac/NonStaticFieldExpr3.sh ! test/tools/javac/QualifiedAccess/QualifiedAccess_1.java ! test/tools/javac/QualifiedAccess/QualifiedAccess_1.out - test/tools/javac/QualifiedAccess/QualifiedAccess_1.sh ! test/tools/javac/QualifiedAccess/QualifiedAccess_2.java ! test/tools/javac/QualifiedAccess/QualifiedAccess_2.out - test/tools/javac/QualifiedAccess/QualifiedAccess_2.sh ! test/tools/javac/QualifiedAccess/QualifiedAccess_3.java ! test/tools/javac/QualifiedAccess/QualifiedAccess_3.out - test/tools/javac/QualifiedAccess/QualifiedAccess_3.sh ! test/tools/javac/SynchronizedClass.java ! test/tools/javac/SynchronizedClass.out - test/tools/javac/SynchronizedClass.sh ! test/tools/javac/depDocComment/DeprecatedDocComment.java ! test/tools/javac/depDocComment/DeprecatedDocComment.out - test/tools/javac/depDocComment/DeprecatedDocComment.sh Changeset: 62fcf8d73dc5 Author: jjg Date: 2008-07-10 16:50 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/62fcf8d73dc5 6724551: Use Queues instead of Lists to link compiler phases Reviewed-by: darcy ! src/share/classes/com/sun/tools/javac/api/JavacTaskImpl.java ! src/share/classes/com/sun/tools/javac/comp/Enter.java ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java ! src/share/classes/com/sun/tools/javac/util/ListBuffer.java Changeset: 41fb91c70d47 Author: jjg Date: 2008-07-11 14:59 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/41fb91c70d47 6725036: javac returns incorrect value for lastModifiedTime() when source is a zip file archive Reviewed-by: darcy ! src/share/classes/com/sun/tools/javac/file/ZipFileIndex.java + test/tools/javac/T6725036.java Changeset: 74fbb87d5965 Author: tbell Date: 2008-07-18 11:25 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/74fbb87d5965 Merge Changeset: 1cf29847eb6e Author: jjg Date: 2008-07-15 09:50 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/1cf29847eb6e 6724071: refactor Log into a front end and back end Reviewed-by: darcy + src/share/classes/com/sun/tools/javac/util/AbstractLog.java ! src/share/classes/com/sun/tools/javac/util/DiagnosticFormatter.java + src/share/classes/com/sun/tools/javac/util/DiagnosticSource.java ! src/share/classes/com/sun/tools/javac/util/JCDiagnostic.java ! src/share/classes/com/sun/tools/javac/util/Log.java Changeset: 5a9172b251dd Author: jjg Date: 2008-07-15 19:22 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/5a9172b251dd 6657907: javadoc has unchecked warnings Reviewed-by: bpatel ! src/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ConfigurationImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/ConstructorWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlSerialMethodWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageFrameWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageUseWriter.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/Configuration.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/ConstantsSummaryWriter.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeOptionalMemberBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AnnotationTypeRequiredMemberBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ClassBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ConstantsSummaryBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/ConstructorBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/EnumConstantBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/FieldBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/LayoutParser.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MemberSummaryBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MethodBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/CodeTaglet.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/LiteralTaglet.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ParamTaglet.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/TagletManager.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ThrowsTaglet.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/ClassDocCatalog.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/ClassTree.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/ClassUseMapper.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/DeprecatedAPIListBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocFinder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/Extern.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/Group.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/ImplementedMethods.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/IndexBuilder.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/MetaKeywords.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/SourceToHTMLConverter.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/Util.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/VisibleMemberMap.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/LinkFactory.java ! src/share/classes/com/sun/tools/javadoc/DocletInvoker.java ! src/share/classes/com/sun/tools/javadoc/ExecutableMemberDocImpl.java ! src/share/classes/com/sun/tools/javadoc/JavadocEnter.java ! src/share/classes/com/sun/tools/javadoc/JavadocMemberEnter.java ! src/share/classes/com/sun/tools/javadoc/SeeTagImpl.java ! src/share/classes/com/sun/tools/javadoc/SerializedForm.java ! src/share/classes/com/sun/tools/javah/Gen.java Changeset: 13aee98cc0d8 Author: tbell Date: 2008-07-22 11:41 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/13aee98cc0d8 Merge Changeset: 4af43632966c Author: xdono Date: 2008-08-04 13:45 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/4af43632966c Added tag jdk7-b32 for changeset 13aee98cc0d8 ! .hgtags Changeset: 866db3b5e7b2 Author: jjg Date: 2008-07-23 19:55 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/866db3b5e7b2 6726015: JavaCompiler: replace desugarLater by compileStates Reviewed-by: mcimadamore ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java ! test/tools/javac/6199662/Tree.java Changeset: 77dba8b57346 Author: mcimadamore Date: 2008-07-24 10:35 +0100 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/77dba8b57346 6651719: Compiler crashes possibly during forward reference of TypeParameter Summary: compiler should apply capture conversion when checking for bound conformance Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Check.java - test/tools/javac/capture/Capture4.java + test/tools/javac/generics/wildcards/6651719/T6651719a.java + test/tools/javac/generics/wildcards/6651719/T6651719b.java Changeset: 36df13bde238 Author: mcimadamore Date: 2008-07-24 11:12 +0100 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/36df13bde238 6594284: NPE thrown when calling a method on an intersection type Summary: javac should report an error when the capture of an actual type parameter does not exist Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/code/Type.java ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Check.java + test/tools/javac/capture/T6594284.java Changeset: 5c9cdeb740f2 Author: mcimadamore Date: 2008-07-24 19:06 +0100 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/5c9cdeb740f2 6717241: some diagnostic argument is prematurely converted into a String object Summary: removed early toString() conversions applied to diagnostic arguments Reviewed-by: jjg + src/share/classes/com/sun/tools/javac/api/Formattable.java ! src/share/classes/com/sun/tools/javac/code/Flags.java ! src/share/classes/com/sun/tools/javac/code/Kinds.java ! src/share/classes/com/sun/tools/javac/code/Symbol.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! src/share/classes/com/sun/tools/javac/parser/Keywords.java ! src/share/classes/com/sun/tools/javac/parser/Parser.java ! src/share/classes/com/sun/tools/javac/parser/Token.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties ! src/share/classes/com/sun/tools/javac/util/DiagnosticFormatter.java ! src/share/classes/com/sun/tools/javac/util/JCDiagnostic.java ! test/tools/javac/5045412/out ! test/tools/javac/6330920/T6330920.out + test/tools/javac/6717241/T6717241a.java + test/tools/javac/6717241/T6717241a.out + test/tools/javac/6717241/T6717241b.java + test/tools/javac/6717241/T6717241b.out ! test/tools/javac/ExtendsAccess/ExtendsAccess.out ! test/tools/javac/NonStaticFieldExpr1.out ! test/tools/javac/NonStaticFieldExpr2.out ! test/tools/javac/NonStaticFieldExpr3.out ! test/tools/javac/T6247324.out ! test/tools/javac/annotations/6365854/test1.out ! test/tools/javac/generics/inference/6611449/T6611449.out ! test/tools/javac/policy/byfile.ABD.out ! test/tools/javac/policy/bytodo.ABD.out ! test/tools/javac/policy/simple.ABD.out Changeset: 8973372aedf8 Author: mcimadamore Date: 2008-07-25 12:05 +0100 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/8973372aedf8 6500701: Enhanced for loop with generics generates faulty bytecode Summary: Lower is too strict when translating enhanced causing CCE to be thrown at runtime Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Lower.java + test/tools/javac/foreach/T6500701.java Changeset: dc4744d13247 Author: mcimadamore Date: 2008-07-25 12:22 +0100 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/dc4744d13247 6675483: Javac rejects multiple type-variable bound declarations starting with an enum type Summary: Intersection types bounded by an enum are erroeously considered harmful by javac Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Attr.java + test/tools/javac/enum/T6675483.java Changeset: 37470f5ea179 Author: mcimadamore Date: 2008-07-28 10:22 +0100 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/37470f5ea179 6720185: DiagnosticFormatter refactoring Summary: Brand new hierarchy of diagnostic formatters for achieving better reusability Reviewed-by: jjg + src/share/classes/com/sun/tools/javac/api/DiagnosticFormatter.java + src/share/classes/com/sun/tools/javac/util/AbstractDiagnosticFormatter.java + src/share/classes/com/sun/tools/javac/util/BasicDiagnosticFormatter.java - src/share/classes/com/sun/tools/javac/util/DiagnosticFormatter.java ! src/share/classes/com/sun/tools/javac/util/JCDiagnostic.java ! src/share/classes/com/sun/tools/javac/util/Log.java + src/share/classes/com/sun/tools/javac/util/RawDiagnosticFormatter.java Changeset: 0a5f04fb7282 Author: tbell Date: 2008-08-07 09:45 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/0a5f04fb7282 Merge Changeset: 1c4a97a661b9 Author: xdono Date: 2008-08-14 09:26 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/1c4a97a661b9 Added tag jdk7-b33 for changeset 0a5f04fb7282 ! .hgtags Changeset: 3437676858e3 Author: jjg Date: 2008-08-01 15:23 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/3437676858e3 6627362: javac generates code that uses array.clone, which is not available on JavaCard 6627364: javac needs Float and Double on the bootclasspath even when not directly used 6627366: javac needs Cloneable and Serializable on the classpath even when not directly used Reviewed-by: darcy ! src/share/classes/com/sun/tools/javac/code/Symtab.java ! src/share/classes/com/sun/tools/javac/comp/Lower.java ! test/tools/javac/5045412/Bar.java ! test/tools/javac/5045412/Foo.java - test/tools/javac/5045412/out + test/tools/javac/6627362/T6627362.java + test/tools/javac/6627362/x/E.java + test/tools/javac/6627362/x/Object.java + test/tools/javac/synthesize/Boolean.java + test/tools/javac/synthesize/Byte.java + test/tools/javac/synthesize/Character.java + test/tools/javac/synthesize/Cloneable.java + test/tools/javac/synthesize/Double.java + test/tools/javac/synthesize/Float.java + test/tools/javac/synthesize/Integer.java + test/tools/javac/synthesize/Long.java + test/tools/javac/synthesize/Main.java + test/tools/javac/synthesize/Number.java + test/tools/javac/synthesize/Object.java + test/tools/javac/synthesize/Serializable.java + test/tools/javac/synthesize/Short.java + test/tools/javac/synthesize/Test.java + test/tools/javac/synthesize/Void.java Changeset: fd1d361ae294 Author: jjg Date: 2008-08-04 15:09 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/fd1d361ae294 4111861: static final field contents are not displayed Reviewed-by: ksrini ! src/share/classes/com/sun/tools/javap/ClassWriter.java ! src/share/classes/com/sun/tools/javap/JavapTask.java ! src/share/classes/com/sun/tools/javap/Options.java ! src/share/classes/com/sun/tools/javap/resources/javap.properties + test/tools/javap/4111861/A.java + test/tools/javap/4111861/T4111861.java Changeset: 05684554f040 Author: jjg Date: 2008-08-04 17:54 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/05684554f040 4884240: additional option required for javap Reviewed-by: ksrini ! src/share/classes/com/sun/tools/javap/ClassWriter.java ! src/share/classes/com/sun/tools/javap/JavapTask.java ! src/share/classes/com/sun/tools/javap/Options.java ! src/share/classes/com/sun/tools/javap/resources/javap.properties + test/tools/javap/T4884240.java ! test/tools/javap/T6622260.java Changeset: b6d5f53b3b29 Author: mcimadamore Date: 2008-08-05 12:54 +0100 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/b6d5f53b3b29 6730423: Diagnostic formatter should be an instance field of JCDiagnostic Summary: JCDiagnostic.fragment should be deprecated and the diagnostic factory should be used instead Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/Infer.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java ! src/share/classes/com/sun/tools/javac/util/JCDiagnostic.java Changeset: 6be961ee2290 Author: jjg Date: 2008-08-05 17:07 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/6be961ee2290 6733995: legal notice repair on langtools/src/share/classes/com/sun/tools/javap/JavapTask.java Reviewed-by: ksrini ! src/share/classes/com/sun/tools/javap/JavapTask.java Changeset: 7ec8d871eb8c Author: tbell Date: 2008-08-07 18:03 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/7ec8d871eb8c Merge - test/tools/javac/5045412/out Changeset: d635feaf3747 Author: mcimadamore Date: 2008-08-08 15:16 +0100 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/d635feaf3747 6695838: javac does not detect cyclic inheritance involving static inner classes after import clause Summary: Javac fails to detect some errors due to the order in which a class' static imports are entered Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java + test/tools/javac/staticImport/6695838/T6695838.java + test/tools/javac/staticImport/6695838/a/Foo.java + test/tools/javac/staticImport/6695838/a/FooInterface.java Changeset: 30a415f8667f Author: mcimadamore Date: 2008-08-08 17:38 +0100 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/30a415f8667f 6718364: inference fails when a generic method is invoked with raw arguments Summary: Bug in the implementation of Types.isSubtypeUnchecked Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/code/Types.java + test/tools/javac/generics/inference/6718364/T6718364.java + test/tools/javac/generics/inference/6718364/T6718364.out Changeset: 6542933af8f4 Author: mcimadamore Date: 2008-08-08 17:43 +0100 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/6542933af8f4 6676362: Spurious forward reference error with final var + instance variable initializer Summary: Some javac forward reference errors aren't compliant with the JLS Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/code/Symbol.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/AttrContext.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties + test/tools/javac/ForwardReference/T6676362a.java + test/tools/javac/ForwardReference/T6676362b.java ! test/tools/javac/enum/forwardRef/T6425594.out Changeset: fac6b1beaa5a Author: mcimadamore Date: 2008-08-08 17:48 +0100 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/fac6b1beaa5a 6734819: Javac performs flows analysis on already translated classes Summary: Regression in JavaCompiler.desugar introduced in 6726015 Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java + test/tools/javac/6734819/T6734819a.java + test/tools/javac/6734819/T6734819a.out + test/tools/javac/6734819/T6734819b.java + test/tools/javac/6734819/T6734819b.out + test/tools/javac/6734819/T6734819c.java + test/tools/javac/6734819/T6734819c.out Changeset: 938a80a47670 Author: mcimadamore Date: 2008-08-08 17:52 +0100 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/938a80a47670 6732461: broken message file for annotation processing Summary: Regression in sqe test introduced in 6720185 Reviewed-by: jjg ! src/share/classes/com/sun/tools/apt/util/Bark.java Changeset: eefde0421566 Author: tbell Date: 2008-08-10 18:36 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/eefde0421566 Merge Changeset: 4026dece07e8 Author: tbell Date: 2008-08-14 22:17 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/4026dece07e8 Merge Changeset: 8889fb6c5af0 Author: xdono Date: 2008-08-28 11:05 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/8889fb6c5af0 Added tag jdk7-b34 for changeset 4026dece07e8 ! .hgtags Changeset: 37551dc0f591 Author: mcimadamore Date: 2008-08-22 11:46 +0100 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/37551dc0f591 6733837: Recent work on javac diagnostic affected javac output Summary: Problems with diagnostic path and tab character in the source code Reviewed-by: darcy, jjg ! src/share/classes/com/sun/tools/javac/api/DiagnosticFormatter.java ! src/share/classes/com/sun/tools/javac/util/AbstractDiagnosticFormatter.java ! src/share/classes/com/sun/tools/javac/util/BasicDiagnosticFormatter.java ! src/share/classes/com/sun/tools/javac/util/DiagnosticSource.java ! src/share/classes/com/sun/tools/javac/util/JCDiagnostic.java ! src/share/classes/com/sun/tools/javac/util/Log.java ! src/share/classes/com/sun/tools/javac/util/RawDiagnosticFormatter.java + test/tools/javac/api/6733837/T6733837.java Changeset: 81f66dd906eb Author: tbell Date: 2008-08-29 12:42 -0700 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/langtools/rev/81f66dd906eb Merge From roman at kennke.org Sat Sep 6 02:01:48 2008 From: roman at kennke.org (Roman Kennke) Date: Sat, 06 Sep 2008 11:01:48 +0200 Subject: Ideas about improved architecture of the generic Swing peers In-Reply-To: <271e55d20809052116he4e24e9t659e3f0d67121096@mail.gmail.com> References: <1218794992.6783.44.camel@moonlight> <1220353774.8444.16.camel@moonlight> <271e55d20809052116he4e24e9t659e3f0d67121096@mail.gmail.com> Message-ID: <1220691708.6571.19.camel@moonlight> Thanks Oleg, I really like scepticism :-) > Based on our previous experience with text components in XAWT? I'd say that > this can be hard (very hard or even impossible( to write GOOD AWT components > using Swing. By "good" I mean components which will compatible with current > behavior of the same component. I see this is a problem, but nothing that can't be solved with some hacking :-) > Also I wonder if AWT component will > have AWT LaF > when it is being used in application which uses both AWT and Swing. Eh, I was not aware there was something like AWT LaF. I thought AWT just uses whatever the backend uses (Motif, Win32, or in the case of GNU Classpath, GTK or Qt). Having the same LaF for Swing and AWT should be good IMO. But if not, it should be possible to install a special UI class on the backing Swing components... > So, I'd suggest to run JCK tests on this new toolkit and be a little > bit more skeptic and > try to find weak places of this approach. Surely I am. Regarding the JCK - yeah funny. Give me access to it, and I'll do it :-) > Because if you want to > incorporate this toolkit to > JDK you must have compatible behavior, LaF, and pass JCK. I can solve the first two points (compatibility and LaF) but not the last one :-) Thanks for giving me some perspective. Cheers, Roman -- http://kennke.org/blog/ -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Dies ist ein digital signierter Nachrichtenteil Url : http://mail.openjdk.java.net/pipermail/caciocavallo-dev/attachments/20080906/bf3d71af/attachment.bin From oleg.sukhodolsky at gmail.com Fri Sep 5 21:16:36 2008 From: oleg.sukhodolsky at gmail.com (Oleg Sukhodolsky) Date: Sat, 6 Sep 2008 08:16:36 +0400 Subject: Ideas about improved architecture of the generic Swing peers In-Reply-To: <1220353774.8444.16.camel@moonlight> References: <1218794992.6783.44.camel@moonlight> <1220353774.8444.16.camel@moonlight> Message-ID: <271e55d20809052116he4e24e9t659e3f0d67121096@mail.gmail.com> I like the idea, but I'll add some skepticism to your discussion :) Based on our previous experience with text components in XAWT? I'd say that this can be hard (very hard or even impossible( to write GOOD AWT components using Swing. By "good" I mean components which will compatible with current behavior of the same component. Also I wonder if AWT component will have AWT LaF when it is being used in application which uses both AWT and Swing. So, I'd suggest to run JCK tests on this new toolkit and be a little bit more skeptic and try to find weak places of this approach. Because if you want to incorporate this toolkit to JDK you must have compatible behavior, LaF, and pass JCK. Regards, Oleg. On Tue, Sep 2, 2008 at 3:09 PM, Roman Kennke wrote: > Hi folks, > > I'm CCing awt-dev now, I think this could be interesting. Please scroll > down and read the original mail so that you know what I'm talking about. > Basically, I'm trying to implement AWT peers that are based on Swing > (for the widgets) and require minimum effort for porting to new > platforms. Basically, the only thing that is required to be implemented > on a new platform is the windowing functionality, abstracted out nicely > by the PlatformWindow interface. > > Today I pushed a first prototype of the new Swing based AWT peers. It > follows the basic architecture described in the original email (all > components have their own native window, which is abstracted behind an > interface, components are backed by their Swing counterparts for drawing > and state handling). So far, this only serves as proof-of-concept. It is > possible to open a Frame and put Canvas inside it. The code is based on > the patches of the Caciocavallo project (which should probably be merged > in mainline at some point). You can find the code here: > > http://hg.openjdk.java.net/caciocavallo/ng/ > > The basic framework is located in the package sun.awt.peer.cacio, an > example implementation based on Escher [1] can be found in > gnu.java.awt.peer.x (start looking at EscherToolkit maybe). > > and the patched OpenJDK forest here: > > http://hg.openjdk.java.net/caciocavallo/jdk7/ > > > Questions, suggestions, comments and code are heartily welcome :-) > > Cheers, Roman > > [1] http://escher.sf.net > > Am Freitag, den 15.08.2008, 12:09 +0200 schrieb Roman Kennke: >> Hello people, >> >> I'd like to outline my ideas about an improved architecture of the >> generic Swing based peers. But let me first describe the current state >> and the problem(s) we need to address: >> >> Currently, the Swing peers implement most of the peers in >> java.awt.peer.* (well ok, minus a couple of complex ones, like >> ScrollPane, Choice, etc). They are not supposed to work standalone, but >> need some support by a real backend. Most notably, this would be an >> implementation of java.awt.Toolkit and the top-level window peers >> (WindowPeer, DialogPeer and FramePeer). Based on these toplevel windows, >> the Swing peers handle all the widgets in a semi-lightweight fashion: >> all the drawing is done using Graphics contexts from the toplevel >> windows. However, the actual Swing components are not connected to the >> component hierarchy in any way, they are only 'hooked in' in a way, so >> that from the perspective of the Swing component it appears as if it >> were in the component hierarchy, but infact it isn't (from the >> perspective of the hierarchy). >> >> This architecture, requiring the real backend to implement the toplevel >> windows, and do everything else in a quasi-lightweight fashion has some >> disadvantages, or at least, one big disadvantage. It is really hard to >> get the special behaviour of AWT heavyweight components correct. For >> example, suppose you have a Frame, inside this frame you have a Swing >> component, and a Panel. The panel would always be on top of the Swing >> component, regardless of the stacking order in the window. To make it >> even more complex, if you had a Swing component in the Panel, it would >> be drawn on the Panel, not on the Window (an thus, it would appear to be >> always on top of the other Swing component). To get this right in the >> Swing peers, we had to implement a bunch of hacks, that involve double >> buffers for all components and other ugly stuff, and it never worked >> really well. >> >> The answer, for me, was found in the implementation of the XWindow peers >> in OpenJDK. All AWT components are 'simply' given their own X Windows. >> I, coming from a Swing background, first had to get over this concept a >> little, but then it seemed all logical, and I think most toolkits (at >> least in the X world) are implemented like that. And even though not >> specified exactly, Java AWT applications expect such behavior from AWT >> components. >> >> What I would like to propose is a kind of blend between the architecture >> of the XAWT peers in OpenJDK and the Swing peers: Let all AWT components >> be drawn in their own window, but let Swing do the drawing and handling >> of logic and events. This way, we would get a maximum portable AWT peer >> implementation, that requires only minimal effort to port to any new >> platform. The interesting part is to implement this idea: >> >> The first thing to think about is that all components should have their >> own window. To me, this means, that the common superclass of all the >> peers, the SwingComponentPeer, must implement all the necessary >> windowing behaviour. This is done similarily in the XAWT peers, but in a >> very X specific way. All other peers, including the toplevel peers and >> the widgets, derive from this class (an exception would probably be the >> menu related peers). Since SwingComponentPeer already implements all the >> necessary windowing functionality, the toplevel peers don't have much to >> do on their own, except delegating to super here and there. The widget >> peers now don't search for a parent graphics for drawing, but can do >> everything in their own window. >> >> The tricky part here is, when the SwingComponentPeer is at the top of >> the hierarchy, how can we 'plug in' platform specific code there? >> Subclassing surely isn't it. My idea is to have a kind of PlatformWindow >> interface, which is used by the SwingComponentPeer to delegate all the >> real window implementation stuff to. We should be careful to create a >> nice clean interface there. Porting the AWT would then be as simple as >> implementing this one interface (plus J2D pipeline), and boing! have all >> the AWT widgets and toplevel windows available. >> >> And we need to consider that not only SwingComponentPeer calls into the >> PlatformWindow impl, but the PlatformWindow impl also needs to call back >> to the SwingComponentPeer for handling events. In the XAWT >> implementation this is done by passing back X events. Of course, we >> don't want platform specific events in the Swing peers. So the >> PlatformWindow implementation needs to take care and transform all >> platform specific events to Java AWT events before passing them back to >> the SwingComponentPeer. It might be necessary to introduce a couple of >> internal peer events for handling stuff that is not covered by the >> 'official' AWT events. >> >> Summary of the architecture outline (this would be a good point to slip >> in an UML diagram, but I really don't like diagrams ;-) ): >> >> SwingComponentPeer is the all-mighty master superclass here. It provides >> all the necessary windowing functionality. But it doesn't implement this >> itself, but instead delegates to a PlatformWindow implementation. >> PlatformWindow would be an interface that specifies all the windowing >> functionality that we need from the underlying platform. The >> PlatformWindow implementation is also expected to pass all the events >> from the window to the SwingComponentPeer, in the form of AWT event >> objects (it must already translate the native event types to the >> corresponding AWT events). Subclasses of SwingComponentPeer implement >> both the widgets as well as the toplevel windows. Drawing the widgets >> and handling the state logic of the component is done by Swing. >> >> Please tell me what you think. >> >> Cheers, Roman >> > -- > http://kennke.org/blog/ > From neugens at limasoftware.net Sat Sep 6 04:54:09 2008 From: neugens at limasoftware.net (Mario Torre) Date: Sat, 06 Sep 2008 13:54:09 +0200 Subject: Ideas about improved architecture of the generic Swing peers In-Reply-To: <1220691708.6571.19.camel@moonlight> References: <1218794992.6783.44.camel@moonlight> <1220353774.8444.16.camel@moonlight> <271e55d20809052116he4e24e9t659e3f0d67121096@mail.gmail.com> <1220691708.6571.19.camel@moonlight> Message-ID: <1220702049.3290.7.camel@nirvana> Il giorno sab, 06/09/2008 alle 11.01 +0200, Roman Kennke ha scritto: Hi all! > I see this is a problem, but nothing that can't be solved with some > hacking :-) SMOP :) > > Because if you want to > > incorporate this toolkit to > > JDK you must have compatible behavior, LaF, and pass JCK. > > I can solve the first two points (compatibility and LaF) but not the > last one :-) Maybe you guys at Sun can do this for us, but I find it quite odd, maybe OpenJDK sponsored projects should have access to the JCK? I think it's important to do this while we develop the software so we can fix problems in realtime, especially design issues, because we then have to live with them, I don't want to do the wrong thing here. Thanks for adding some pepper to the mix, though :) Cheers, Mario From mark at klomp.org Sun Sep 7 04:29:29 2008 From: mark at klomp.org (Mark Wielaard) Date: Sun, 07 Sep 2008 13:29:29 +0200 Subject: Ideas about improved architecture of the generic Swing peers In-Reply-To: <1220702049.3290.7.camel@nirvana> References: <1218794992.6783.44.camel@moonlight> <1220353774.8444.16.camel@moonlight> <271e55d20809052116he4e24e9t659e3f0d67121096@mail.gmail.com> <1220691708.6571.19.camel@moonlight> <1220702049.3290.7.camel@nirvana> Message-ID: <1220786969.3614.12.camel@hermans.wildebeest.org> Hi, On Sat, 2008-09-06 at 13:54 +0200, Mario Torre wrote: > Il giorno sab, 06/09/2008 alle 11.01 +0200, Roman Kennke ha scritto: > > > Because if you want to > > > incorporate this toolkit to > > > JDK you must have compatible behavior, LaF, and pass JCK. > > > > I can solve the first two points (compatibility and LaF) but not the > > last one :-) > > Maybe you guys at Sun can do this for us, but I find it quite odd, maybe > OpenJDK sponsored projects should have access to the JCK? > > I think it's important to do this while we develop the software so we > can fix problems in realtime, especially design issues, because we then > have to live with them, I don't want to do the wrong thing here. Yeah, requiring passing a proprietary closed, legally troublesome testsuite only available under NDA is somewhat odd for contributions to an open free software community project. The JCK is proprietary and access is only granted under NDA so it is impossible to share tests and code snippets from it with the rest of the community. It seems only fair that someone that wants to require JCK passing does the testing themselves and rewrites any failing tests for the community contributors so you can at least share those publicly with others on the mailinglists and everybody can see and verify the reasons why certain design decisions have been taken. The current proprietary nature of the JCK also prevents most distros from running it since their build systems are public. So running the TCK can only be done afterward by another entity that has some proprietary closed secret setup on the binaries. Which is really a bit too late for a community project. (Luckily most distros do run the mauve and integrated jtreg tests now for each build of icedtea.) So I agree that all this sounds a bit odd. We really should start working on some way to make new TCK tests (for JDK7 at least) added as free software (to either the standard jtreg or mauve suite) so they can be shared like the rest of OpenJDK. So that we will no longer be dragged down by the current proprietary NDA JCK setup. Cheers, Mark From Dalibor.Topic at Sun.COM Sun Sep 7 17:09:36 2008 From: Dalibor.Topic at Sun.COM (Dalibor Topic) Date: Mon, 08 Sep 2008 02:09:36 +0200 Subject: Ideas about improved architecture of the generic Swing peers In-Reply-To: <1220691708.6571.19.camel@moonlight> References: <1218794992.6783.44.camel@moonlight> <1220353774.8444.16.camel@moonlight> <271e55d20809052116he4e24e9t659e3f0d67121096@mail.gmail.com> <1220691708.6571.19.camel@moonlight> Message-ID: <48C46D40.3060507@sun.com> Roman Kennke wrote: > Surely I am. Regarding the JCK - yeah funny. Give me access to it, and > I'll do it :-) > http://openjdk.java.net/groups/conformance/JckAccess/index.html cheers, dalibor topic -- ******************************************************************* Dalibor Topic Tel: (+49 40) 23 646 738 Java F/OSS Ambassador AIM: robiladonaim Sun Microsystems GmbH Mobile: (+49 177) 2664 192 Nagelsweg 55 http://openjdk.java.net D-20097 Hamburg mailto:Dalibor.Topic at sun.com Sitz der Gesellschaft: Sonnenallee 1, D-85551 Kirchheim-Heimstetten Amtsgericht M?nchen: HRB 161028 Gesch?ftsf?hrer: Thomas Schr?der, Wolfgang Engels, Dr. Roland B?mer Vorsitzender des Aufsichtsrates: Martin H?ring From roman at kennke.org Tue Sep 9 02:47:27 2008 From: roman at kennke.org (roman at kennke.org) Date: Tue, 09 Sep 2008 09:47:27 +0000 Subject: hg: caciocavallo/ng: Fixed signature of CacioComponentPeer.flip() to reflect the API change in OpenJDK. Message-ID: <20080909094728.551FCD5AC@hg.openjdk.java.net> Changeset: f3cd01d8baa6 Author: Roman Kennke Date: 2008-09-09 11:46 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/f3cd01d8baa6 Fixed signature of CacioComponentPeer.flip() to reflect the API change in OpenJDK. ! src/sun/awt/peer/cacio/CacioComponentPeer.java From Andrei.Dmitriev at Sun.COM Tue Sep 9 09:14:56 2008 From: Andrei.Dmitriev at Sun.COM (Andrei V. Dmitriev) Date: Tue, 09 Sep 2008 20:14:56 +0400 Subject: Ideas about improved architecture of the generic Swing peers In-Reply-To: <48C46D40.3060507@sun.com> References: <1218794992.6783.44.camel@moonlight> <1220353774.8444.16.camel@moonlight> <271e55d20809052116he4e24e9t659e3f0d67121096@mail.gmail.com> <1220691708.6571.19.camel@moonlight> <48C46D40.3060507@sun.com> Message-ID: <48C6A100.5050504@sun.com> Roman, for convenience you first could try getting access to those tests. That allows you to get more involved into technical details of (hm... potential) issues if they are :) I'm also ready to make JCK trials and supply with reports. BTW, opened regression tests are also of a high value. Here is the harness for them: [1]. Thanks, Andrei [1] http://openjdk.java.net/jtreg/ Dalibor Topic wrote: > Roman Kennke wrote: >> Surely I am. Regarding the JCK - yeah funny. Give me access to it, and >> I'll do it :-) >> > http://openjdk.java.net/groups/conformance/JckAccess/index.html > > cheers, > dalibor topic > From neugens.limasoftware at gmail.com Tue Sep 9 09:23:04 2008 From: neugens.limasoftware at gmail.com (neugens.limasoftware at gmail.com) Date: Tue, 09 Sep 2008 16:23:04 +0000 Subject: hg: caciocavallo/ng: Call init() method of superclass to avoid NPE on Fedora. Message-ID: <20080909162304.E087BD5C7@hg.openjdk.java.net> Changeset: 9b05023d90c9 Author: Mario Torre Date: 2008-09-09 18:21 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/9b05023d90c9 Call init() method of superclass to avoid NPE on Fedora. ! src/gnu/java/awt/peer/x/EscherFontConfiguration.java From neugens.limasoftware at gmail.com Wed Sep 10 07:13:07 2008 From: neugens.limasoftware at gmail.com (neugens.limasoftware at gmail.com) Date: Wed, 10 Sep 2008 14:13:07 +0000 Subject: hg: caciocavallo/ng: Fix switch update and paint in peerPaint method. Message-ID: <20080910141307.36820D6B4@hg.openjdk.java.net> Changeset: c89009c390ad Author: Mario Torre Date: 2008-09-10 16:12 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/c89009c390ad Fix switch update and paint in peerPaint method. ! src/sun/awt/peer/cacio/CacioComponentPeer.java From neugens.limasoftware at gmail.com Wed Sep 10 08:30:16 2008 From: neugens.limasoftware at gmail.com (neugens.limasoftware at gmail.com) Date: Wed, 10 Sep 2008 15:30:16 +0000 Subject: hg: caciocavallo/ng: 2 new changesets Message-ID: <20080910153017.11816D6E0@hg.openjdk.java.net> Changeset: 3173e909139d Author: Mario Torre Date: 2008-09-10 17:29 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/3173e909139d Enable and test new CacioTexField component. ! src/sun/awt/peer/cacio/CacioToolkit.java ! tests/gnu/escher/TestComponents.java Changeset: 74e4d3fb8ea9 Author: Mario Torre Date: 2008-09-10 17:29 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/74e4d3fb8ea9 Implement TextField. + src/sun/awt/peer/cacio/CacioTextFieldPeer.java From neugens.limasoftware at gmail.com Wed Sep 10 08:42:28 2008 From: neugens.limasoftware at gmail.com (neugens.limasoftware at gmail.com) Date: Wed, 10 Sep 2008 15:42:28 +0000 Subject: hg: caciocavallo/ng: Implement correct behaviour for caret focus/defocus. Message-ID: <20080910154228.A9DB5D6F4@hg.openjdk.java.net> Changeset: f1b40595795b Author: Mario Torre Date: 2008-09-10 17:41 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/f1b40595795b Implement correct behaviour for caret focus/defocus. ! src/sun/awt/peer/cacio/CacioTextFieldPeer.java From neugens.limasoftware at gmail.com Tue Sep 23 11:01:06 2008 From: neugens.limasoftware at gmail.com (neugens.limasoftware at gmail.com) Date: Tue, 23 Sep 2008 18:01:06 +0000 Subject: hg: caciocavallo/ng: 2 new changesets Message-ID: <20080923180106.E6DA1D111@hg.openjdk.java.net> Changeset: 9c1f84459804 Author: Mario Torre Date: 2008-09-15 20:50 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/9c1f84459804 Change class visibility to package private to avoid use outside peer scope. ! src/sun/awt/peer/cacio/CacioTextFieldPeer.java Changeset: cc5326c2eaf3 Author: Mario Torre Date: 2008-09-23 20:00 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/cc5326c2eaf3 Catch the exception in the correct place, retrying with TCP sockets if UNIX sockets fails to connect to the X11 server. ! src/gnu/java/awt/peer/x/XGraphicsDevice.java From neugens.limasoftware at gmail.com Wed Sep 24 05:07:49 2008 From: neugens.limasoftware at gmail.com (neugens.limasoftware at gmail.com) Date: Wed, 24 Sep 2008 12:07:49 +0000 Subject: hg: caciocavallo/ng: Move display checks and eventPump initialisation code outside of try/catch blocks. Message-ID: <20080924120750.190DFD13B@hg.openjdk.java.net> Changeset: 55d7e906e3e6 Author: Mario Torre Date: 2008-09-24 14:06 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/55d7e906e3e6 Move display checks and eventPump initialisation code outside of try/catch blocks. ! src/gnu/java/awt/peer/x/XGraphicsDevice.java From roman at kennke.org Thu Sep 25 02:18:49 2008 From: roman at kennke.org (roman at kennke.org) Date: Thu, 25 Sep 2008 09:18:49 +0000 Subject: hg: caciocavallo/jdk7/jdk: Cleanup FontManager interface: Move internal methods and constants to FontManagerBase. Message-ID: <20080925091903.3CA9AD266@hg.openjdk.java.net> Changeset: 3d7d918eec5b Author: Roman Kennke Date: 2008-09-25 11:18 +0200 URL: http://hg.openjdk.java.net/caciocavallo/jdk7/jdk/rev/3d7d918eec5b Cleanup FontManager interface: Move internal methods and constants to FontManagerBase. ! src/share/classes/com/sun/jmx/mbeanserver/MBeanIntrospector.java ! src/share/classes/java/awt/Component.java ! src/share/classes/sun/awt/FontConfiguration.java ! src/share/classes/sun/font/CMap.java ! src/share/classes/sun/font/CompositeFont.java ! src/share/classes/sun/font/CompositeGlyphMapper.java ! src/share/classes/sun/font/FileFont.java ! src/share/classes/sun/font/FileFontStrike.java ! src/share/classes/sun/font/FontConfigManager.java ! src/share/classes/sun/font/FontDesignMetrics.java ! src/share/classes/sun/font/FontFamily.java ! src/share/classes/sun/font/FontManager.java ! src/share/classes/sun/font/FontManagerBase.java ! src/share/classes/sun/font/FontManagerFactory.java ! src/share/classes/sun/font/FontManagerNativeLibrary.java ! src/share/classes/sun/font/FontResolver.java ! src/share/classes/sun/font/FreetypeFontScaler.java ! src/share/classes/sun/font/GlyphLayout.java ! src/share/classes/sun/font/StandardGlyphVector.java ! src/share/classes/sun/font/TrueTypeFont.java ! src/share/classes/sun/font/TrueTypeGlyphMapper.java ! src/share/classes/sun/font/Type1Font.java ! src/share/classes/sun/font/Type1GlyphMapper.java ! src/share/classes/sun/java2d/SunGraphics2D.java ! src/share/classes/sun/java2d/SunGraphicsEnvironment.java ! src/share/classes/sun/print/PSPrinterJob.java ! src/share/classes/sun/print/PathGraphics.java ! src/share/native/sun/font/sunFont.c ! src/share/native/sun/font/sunfontids.h ! src/solaris/classes/sun/awt/X11FontManager.java ! src/solaris/classes/sun/awt/motif/MFontConfiguration.java ! src/solaris/classes/sun/font/FcFontConfiguration.java ! src/solaris/classes/sun/font/NativeFont.java ! src/solaris/classes/sun/font/NativeStrike.java From neugens.limasoftware at gmail.com Sun Sep 28 07:30:10 2008 From: neugens.limasoftware at gmail.com (neugens.limasoftware at gmail.com) Date: Sun, 28 Sep 2008 14:30:10 +0000 Subject: hg: caciocavallo/caciocavallo: fixed links in main index.html Message-ID: <20080928143010.7384FD632@hg.openjdk.java.net> Changeset: fec453318072 Author: Mario Torre Date: 2008-09-28 16:29 +0200 URL: http://hg.openjdk.java.net/caciocavallo/caciocavallo/rev/fec453318072 fixed links in main index.html ! cacio-docs/index.html From roman at kennke.org Mon Sep 29 01:05:28 2008 From: roman at kennke.org (roman at kennke.org) Date: Mon, 29 Sep 2008 08:05:28 +0000 Subject: hg: caciocavallo/ng: 2 new changesets Message-ID: <20080929080528.C995FD63C@hg.openjdk.java.net> Changeset: 0bc9bf58bfde Author: Roman Kennke Date: 2008-09-29 10:04 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/0bc9bf58bfde Override SunToolkit.getMouseInfoPeer(), we can't use the default implementation. ! src/gnu/java/awt/peer/x/EscherToolkit.java Changeset: 4a3f8d6c6f62 Author: Roman Kennke Date: 2008-09-29 10:04 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/4a3f8d6c6f62 Automated merge with ssh://rkennke at hg.openjdk.java.net/caciocavallo/ng