From mp at jugs.org Sat Jun 1 05:11:01 2013 From: mp at jugs.org (Dr. Michael Paus) Date: Sat, 01 Jun 2013 14:11:01 +0200 Subject: JavaFX graphics performance and suitability for advanced animations In-Reply-To: <7ED81D84-67FA-4143-96D2-33A79D5494F9@oracle.com> References: <003f01ce593f$d5f63fe0$81e2bfa0$@ozemail.com.au> <004501ce5d35$10f36700$32da3500$@ozemail.com.au> <574CC6CC-7C23-4A0E-B949-21446CD2E5B0@oracle.com> <005901ce5dfa$9bdd6cb0$d3984610$@ozemail.com.au> <7ED81D84-67FA-4143-96D2-33A79D5494F9@oracle.com> Message-ID: <51A9E4D5.2070205@jugs.org> On 31.05.13 23:35, Richard Bair wrote: > We should start simple and work our way up. Since we've spent most of our time working on raw frame rates, perhaps it would be best to face down the jitter problem first. Lets start with something simple: a basic translate transition of a rectangle, and see how that goes. > Hi, I'd like to add a very similar problem - a translate transition of a simple image. This is something you see very often in animation examples but although the JavaFX problem associated with this has already been reported many years ago (on monday it will be exactly 3 years) this has not been fixed until now. (I just checked it with JDK8 b92) My original report was marked as a duplicate, although I am still not sure it really is but I can't check this because the explanation of the possible reason in RT-6933 is kept secret. Anyway - you still can't animate images smoothly with JavaFX out of the box because although the image itself is placed at sub-pixel positions the border of the image is clipped to exact pixel boundaries which makes the animation look bad. I have attached code to show this. You can also switch between a smooth and a non-smooth animation by clicking into the image with the mouse. When you click into the image I apply a little hack so the animation becomes smooth. But one should not be forced to use such tricks with a framework like JavaFX in order to get a smooth animation for such a trivial use case. Here comes the code: (You can use the image from the original bug report) package bugs.smoothness; import java.awt.image.BufferedImage; import java.io.IOException; import java.io.InputStream; import javafx.animation.Animation; import javafx.animation.Interpolator; import javafx.animation.TranslateTransition; import javafx.application.Application; import javafx.embed.swing.SwingFXUtils; import javafx.event.EventHandler; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.scene.input.MouseEvent; import javafx.scene.paint.Color; import javafx.stage.Stage; import javafx.util.Duration; import javax.imageio.ImageIO; public class ImageAnimation extends Application { private static final String INPUT_IMAGE = "image1.jpg"; private static final double WIDTH = 1024; private static final double HEIGHT = 768; private static final Duration DURATION = Duration.millis(100000); private Image image1; private Image image2; private ImageView imageView; private TranslateTransition moveAnim; private Stage currentStage; public Image createImage(String relFilePath, boolean smooth) { InputStream is = getClass().getResourceAsStream(relFilePath); Image image = null; if (smooth) { try { BufferedImage i1 = ImageIO.read(is); BufferedImage i2 = new BufferedImage(i1.getWidth()+2, i1.getHeight()+2, BufferedImage.TYPE_INT_ARGB); i2.getGraphics().drawImage(i1, 1, 1, new java.awt.Color(0, 0, 0, 0), null); image = SwingFXUtils.toFXImage(i2, null); } catch (IOException e1) { e1.printStackTrace(); } } else { image = new Image(is); } if (image != null && !image.isError()) { return image; } else { System.err.println("Could not open " + relFilePath); return null; } } public void adjustStageTitle() { if (imageView.getImage() == image1) { currentStage.setTitle("image1 - standard border"); } else { currentStage.setTitle("image2 - one pixel transparent border"); } } @Override public void start(Stage stage) { System.out.println("javafx.runtime.version: " + System.getProperties().get("javafx.runtime.version")); currentStage = stage; image1 = createImage(INPUT_IMAGE, false); image2 = createImage(INPUT_IMAGE, true); imageView = new ImageView(image1); imageView.setSmooth(true); imageView.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler() { @Override public void handle(MouseEvent event) { Image currentImage = imageView.getImage(); if (currentImage == image1) { imageView.setImage(image2); } else { imageView.setImage(image1); } adjustStageTitle(); } }); Group root = new Group(); root.getChildren().add(imageView); // create scene Scene scene = new Scene(root, WIDTH, HEIGHT); scene.setFill(Color.LIGHTGRAY); stage.setScene(scene); adjustStageTitle(); // show stage stage.show(); // start animation moveAnim = new TranslateTransition(); moveAnim.setNode(imageView); moveAnim.setInterpolator(Interpolator.LINEAR); moveAnim.setDuration(DURATION); moveAnim.setCycleCount(Animation.INDEFINITE); moveAnim.setAutoReverse(true); moveAnim.setFromX(0f); moveAnim.setFromY(0f); moveAnim.setToX(WIDTH - imageView.getImage().getWidth()); moveAnim.setToY(HEIGHT - imageView.getImage().getHeight()); moveAnim.play(); } public static void main(String[] args) { Application.launch(args); } } From hang.vo at oracle.com Sat Jun 1 08:09:35 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Sat, 01 Jun 2013 15:09:35 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130601151032.5BFF848EB3@hg.openjdk.java.net> Changeset: cc621195ec3c Author: kcr Date: 2013-06-01 08:00 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/cc621195ec3c [TEST-ONLY] Disable failing unit tests until RT-30865 is fixed ! javafx-beans/test/javafx/collections/ObservableArrayTest.java Changeset: 582edfecdb04 Author: kcr Date: 2013-06-01 08:00 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/582edfecdb04 imported patch gradle-builders ! build.gradle ! generator.gradle ! settings.gradle From richard.bair at oracle.com Sat Jun 1 12:01:00 2013 From: richard.bair at oracle.com (Richard Bair) Date: Sat, 1 Jun 2013 12:01:00 -0700 Subject: Aliased image edges when rotated In-Reply-To: <51A9E4D5.2070205@jugs.org> References: <003f01ce593f$d5f63fe0$81e2bfa0$@ozemail.com.au> <004501ce5d35$10f36700$32da3500$@ozemail.com.au> <574CC6CC-7C23-4A0E-B949-21446CD2E5B0@oracle.com> <005901ce5dfa$9bdd6cb0$d3984610$@ozemail.com.au> <7ED81D84-67FA-4143-96D2-33A79D5494F9@oracle.com> <51A9E4D5.2070205@jugs.org> Message-ID: <5D5CEA93-2E9A-431D-9516-01F2427BC2F9@oracle.com> Hi Michael, I've modified the thread so we can keep these different threads straight :-) https://javafx-jira.kenai.com/browse/RT-11486 I've copied the relevant comment from RT-6933 (not sure it needs to be internal but it has attachments I'd have to vet, easier to copy the common tout) into RT-11486 which is the issue for introducing an API to allow you to choose how you want rotated images to look. This is interesting in that the idea of having a rendering hint is very similar to that being discussed for fonts (RT-6475) which we are discussing on that issue as being something to have specified on all shapes, although maybe we want it also on Images. > Anyway - you still can't animate images smoothly with JavaFX out of the box > because although the image itself is placed at sub-pixel positions the border > of the image is clipped to exact pixel boundaries which makes the animation look bad. > > I have attached code to show this. You can also switch between a smooth and a > non-smooth animation by clicking into the image with the mouse. When you > click into the image I apply a little hack so the animation becomes smooth. But > one should not be forced to use such tricks with a framework like JavaFX in order > to get a smooth animation for such a trivial use case. Agreed. Lets discuss on RT-11486 what kind of API should be exposed. I'm not sure what the level of effort is on the implementation in this case. Richard From zonski at gmail.com Sat Jun 1 15:21:04 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Sun, 2 Jun 2013 08:21:04 +1000 Subject: Canvas clip problems Message-ID: Here is one I can't reproduce in smaller code. http://www.screencast.com/t/AJZjx1TjFT You can see that when the enemies start off the canvas they end up leaving a smear behind. When they leave the canvas at the other end they also smear. I suspect it's something to do with the clipping code used in the game but I haven't been able to narrow it down (and this area I was a bit flaky on and I think Richard did the starting setup for). It's probably a case of clipping properly, but should this sort of behaviour be even possible to occur? p.s. thanks for the Camtasia tips - nice product. From hang.vo at oracle.com Sat Jun 1 17:49:19 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Sun, 02 Jun 2013 00:49:19 +0000 Subject: hg: openjfx/8/controls/rt: RT-28346: TextArea - Pressing ENTER/RETURN does not move cursor to new line Message-ID: <20130602004950.4F55648EBB@hg.openjdk.java.net> Changeset: 2f5985406164 Author: leifs Date: 2013-06-01 17:39 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/2f5985406164 RT-28346: TextArea - Pressing ENTER/RETURN does not move cursor to new line ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TextAreaSkin.java From richard.bair at oracle.com Sat Jun 1 17:55:18 2013 From: richard.bair at oracle.com (Richard Bair) Date: Sat, 1 Jun 2013 17:55:18 -0700 Subject: Canvas clip problems In-Reply-To: References: Message-ID: <4488F98D-9BE6-476A-AEBA-721FCC6F0436@oracle.com> "Cheese" (the smear) should never be possible. It means that the clip used on the device is wrong for some reason, and therefore some area of the screen was not being repainted that needed to be. In Swing (or Android or any other immediate mode API) it is possible that your app could have a bug that causes this, but with the scene graph the responsibility is with JFX not to mess up the dirty regions. My guess is this is related to the other issue you already filed about the "z order" rendering issue (which is also related to the clip being wrong). It might be worth putting the link to the screencast on that bug report. Richard On Jun 1, 2013, at 3:21 PM, Daniel Zwolenski wrote: > Here is one I can't reproduce in smaller code. > > http://www.screencast.com/t/AJZjx1TjFT > > You can see that when the enemies start off the canvas they end up leaving > a smear behind. When they leave the canvas at the other end they also > smear. > > I suspect it's something to do with the clipping code used in the game but > I haven't been able to narrow it down (and this area I was a bit flaky on > and I think Richard did the starting setup for). > > It's probably a case of clipping properly, but should this sort of > behaviour be even possible to occur? > > p.s. thanks for the Camtasia tips - nice product. From swpalmer at gmail.com Sat Jun 1 18:14:21 2013 From: swpalmer at gmail.com (Scott Palmer) Date: Sat, 1 Jun 2013 21:14:21 -0400 Subject: Canvas clip problems In-Reply-To: <4488F98D-9BE6-476A-AEBA-721FCC6F0436@oracle.com> References: <4488F98D-9BE6-476A-AEBA-721FCC6F0436@oracle.com> Message-ID: This looks like it may be related to the clipping issue that I'm having (the one that forces me o use the software pipeline in JavaFX 8 or the j2d pipeline in JavaX 2.2) https://javafx-jira.kenai.com/browse/RT-30591 I'll try to do the same screencast thingy, as the still in my report don't do justice to the problem. Scott On Sat, Jun 1, 2013 at 8:55 PM, Richard Bair wrote: > "Cheese" (the smear) should never be possible. It means that the clip used > on the device is wrong for some reason, and therefore some area of the > screen was not being repainted that needed to be. In Swing (or Android or > any other immediate mode API) it is possible that your app could have a bug > that causes this, but with the scene graph the responsibility is with JFX > not to mess up the dirty regions. > > My guess is this is related to the other issue you already filed about the > "z order" rendering issue (which is also related to the clip being wrong). > It might be worth putting the link to the screencast on that bug report. > > Richard > > On Jun 1, 2013, at 3:21 PM, Daniel Zwolenski wrote: > > > Here is one I can't reproduce in smaller code. > > > > http://www.screencast.com/t/AJZjx1TjFT > > > > You can see that when the enemies start off the canvas they end up > leaving > > a smear behind. When they leave the canvas at the other end they also > > smear. > > > > I suspect it's something to do with the clipping code used in the game > but > > I haven't been able to narrow it down (and this area I was a bit flaky on > > and I think Richard did the starting setup for). > > > > It's probably a case of clipping properly, but should this sort of > > behaviour be even possible to occur? > > > > p.s. thanks for the Camtasia tips - nice product. > > From swpalmer at gmail.com Sat Jun 1 18:16:14 2013 From: swpalmer at gmail.com (Scott Palmer) Date: Sat, 1 Jun 2013 21:16:14 -0400 Subject: Canvas clip problems In-Reply-To: References: <4488F98D-9BE6-476A-AEBA-721FCC6F0436@oracle.com> Message-ID: Try -Dprism.order=sw with JavaFS 8 or -Dprism.order=j2d with JavaFX 2.2 to see if the clipping issue goes away. Also try -Dprism.dirtyopts=false to see if that fixes the smearing. On Sat, Jun 1, 2013 at 9:14 PM, Scott Palmer wrote: > This looks like it may be related to the clipping issue that I'm having > (the one that forces me o use the software pipeline in JavaFX 8 or the j2d > pipeline in JavaX 2.2) > > https://javafx-jira.kenai.com/browse/RT-30591 > > I'll try to do the same screencast thingy, as the still in my report don't > do justice to the problem. > > Scott > > > On Sat, Jun 1, 2013 at 8:55 PM, Richard Bair wrote: > >> "Cheese" (the smear) should never be possible. It means that the clip >> used on the device is wrong for some reason, and therefore some area of the >> screen was not being repainted that needed to be. In Swing (or Android or >> any other immediate mode API) it is possible that your app could have a bug >> that causes this, but with the scene graph the responsibility is with JFX >> not to mess up the dirty regions. >> >> My guess is this is related to the other issue you already filed about >> the "z order" rendering issue (which is also related to the clip being >> wrong). It might be worth putting the link to the screencast on that bug >> report. >> >> Richard >> >> On Jun 1, 2013, at 3:21 PM, Daniel Zwolenski wrote: >> >> > Here is one I can't reproduce in smaller code. >> > >> > http://www.screencast.com/t/AJZjx1TjFT >> > >> > You can see that when the enemies start off the canvas they end up >> leaving >> > a smear behind. When they leave the canvas at the other end they also >> > smear. >> > >> > I suspect it's something to do with the clipping code used in the game >> but >> > I haven't been able to narrow it down (and this area I was a bit flaky >> on >> > and I think Richard did the starting setup for). >> > >> > It's probably a case of clipping properly, but should this sort of >> > behaviour be even possible to occur? >> > >> > p.s. thanks for the Camtasia tips - nice product. >> >> > From zonski at gmail.com Sat Jun 1 22:36:08 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Sun, 2 Jun 2013 15:36:08 +1000 Subject: Animation swipe stutter Message-ID: Here is another one I can't reproduce in a constrained example. http://www.screencast.com/t/ufJsZhiLhNJH This is a real world app that runs on a tablet (Windows). I tried to give this app a bit of an "iPad style", with animations to transition between screens, etc (this was built a year or two ago). Many of the animations ' perform poorly' and are either slow or jumpy, etc, but it's hard to capture on video and hard to replicate in simple examples. In this video you can see a 'stutter' as the animation goes from left to right and back again. The stutter is right at the end just before the transition finishes. Sometimes it's pretty much perfect but 70% of the time it either overshoots and re-adjusts or just suddenly jumps to the end point before it's finished the smooth animation. At least that's the visual effect as far as I can tell. This (and many of the problems) could very well be an issue with the actual code on my end and not true JFX issues. I've tried to narrow down further but it is very time consuming to do this and it would help to know if there were any rough guesses at what might be causing this problem. Is it the fact that everything is so highly styled, or just the number of components, is it something like I shouldn't do any actual real work in an 'on finished' method, etc? If there are any possible leads then I can try and put together a small sample but at the moment I'm firing randomly. As far as the code goes, it's a fairly standard parallel transition containing two translate transitions. A very simple example of the sort of logic used can be seen here: https://code.google.com/p/zenjava-playtime/source/browse/trunk/javafx-performance/animate1/src/main/java/com/zenjava/jfx/performance/animate1/SwipeApp.java But this one animates consistently smooth. From zonski at gmail.com Sat Jun 1 22:53:58 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Sun, 2 Jun 2013 15:53:58 +1000 Subject: JavaFX graphics performance and suitability for advanced animations In-Reply-To: <7D46D1FF-D585-4BE6-AABC-207FC3B1E470@oracle.com> References: <003f01ce593f$d5f63fe0$81e2bfa0$@ozemail.com.au> <1E44CC18-E6E6-4979-8296-D1CFA356AAA0@gmail.com> <362906DC-E1DB-40A3-8A8C-526BC28B507D@oracle.com> <880F3924-22DA-4C03-9AB1-03857D26838C@gmail.com> <0D52DF26-204D-4A21-8E72-36AB4E5CB72C@gmail.com> <1FBA4B49-6CF0-43D8-BF81-8440222DD257@oracle.com> <07CE54A3-DE8B-44ED-9B3F-E78C26F444AA@oracle.com> <8499C01C-6412-443B-8EA5-BF1F06D9A7F3@oracle.com> <42C74414-F9EC-4249-A674-FDCEF699550A@gmail.com> <5F28D018-590D-4AF6-B64E-3FFE6AD14436@gmail.com> <71B8B4BA-C8E6-442F-AD46-466F7E52C88D@gmail.com> <4D93C480-DE93-456D-ADEA-BE1F69ACE7A3@oracle.com> <4310DE2A-0986-4EC4-A316-183F1B405E28@oracle.com> <7D46D1FF-D585-4BE6-AABC-207FC3B1E470@oracle.com> Message-ID: I tried your pixel snapping one and it is on par with the JScript version, so it could be that either my system or my eye prefers that option. Good to know we can switch between them at least to cater for different devices. That project I captured in the last email had a fixed brand/model of tablet that it was on so in that case it's good to be able to maximise performance for that particular device. I tried to taking screen captures of the different scenarios but it's too fine detail and the animation just looks crap on all of them in the captures. I'm hearing you that this is a messy problem with no ideal, and some options might be better in case A but worse in case B. Happy to say that one is done and dusted and not worth going into deeper. I think the trick will be to use coloured backgrounds - windows metro style. On Sat, Jun 1, 2013 at 1:59 PM, Richard Bair wrote: > > This looks bad for me though in FX, I'm wondering what it looks like for > you. > > I ran with the pulse logger and definitely there is no frame taking more > than a couple milliseconds. Things look awful because this example is > truncating (by casting to int) instead of rounding, and so on each frame > the rectangle is pixel snapped to a position that may be closer, or farther > away from the expected location and our brain sees it. To test this theory, > one thing I did was modify the sample so that instead of taking 3 seconds > to travel 400 pixels, I use 4 seconds and I removed the EASE_BOTH > interpolators. In this case the expected location on each frame is exactly > a pixel boundary, and of course it looks smooth. Note though that the > border still looks fuzzy (to me) but this is because the refresh rate on > the monitor or possibly the eye is exhibiting a motion blur. > > public void start(Stage stage) throws Exception { > final StackPane rootPane = new StackPane(); > VBox box = new VBox(); > box.setMaxSize(200, 200); > box.setStyle("-fx-border-color: black; -fx-background-color: > white; -fx-effect: dropshadow(two-pass-box , darkgray, 10, 0.0 , 4, 5);"); > rootPane.getChildren().add(box); > createTranslation(box, 4, -200, -200, 200, 200).play(); > > Scene scene = new Scene(rootPane, 1200, 800); > stage.setScene(scene); > stage.show(); > } > > protected Animation createTranslation(Node node, int seconds, int > fromX, int fromY, int toX, int toY) { > IntegerProperty xProperty = new SimpleIntegerProperty(fromX); > IntegerProperty yProperty = new SimpleIntegerProperty(fromY); > node.translateXProperty().bind(xProperty); > node.translateYProperty().bind(yProperty); > > Timeline t = new Timeline( > new KeyFrame(Duration.seconds(seconds), > new KeyValue(xProperty, toX), > new KeyValue(yProperty, toY))); > t.setCycleCount(Timeline.INDEFINITE); > t.setAutoReverse(true); > return t; > } > > > > > And here is another version which instead keeps the interpolator and the 3 > second movement (so we're back to unexpected irregular positions) and we > pixel snap by rounding instead of by truncating. > > public void start(Stage stage) throws Exception { > final StackPane rootPane = new StackPane(); > VBox box = new VBox(); > box.setMaxSize(200, 200); > box.setStyle("-fx-border-color: black; -fx-background-color: > white; -fx-effect: dropshadow(two-pass-box , darkgray, 10, 0.0 , 4, 5);"); > rootPane.getChildren().add(box); > createTranslation(box, 3, -200, -200, 200, 200).play(); > > Scene scene = new Scene(rootPane, 1200, 800); > stage.setScene(scene); > stage.show(); > } > > class RoundingValue extends SimpleDoubleProperty { > public RoundingValue(int initialValue) { > super(initialValue); > } > > @Override public void set(double newValue) { > super.set(Math.round(newValue)); > } > } > > protected Animation createTranslation(Node node, int seconds, int > fromX, int fromY, int toX, int toY) { > RoundingValue xProperty = new RoundingValue(fromX); > RoundingValue yProperty = new RoundingValue(fromY); > node.translateXProperty().bind(xProperty); > node.translateYProperty().bind(yProperty); > > Timeline t = new Timeline( > new KeyFrame(Duration.seconds(seconds), > new KeyValue(xProperty, toX, > Interpolator.EASE_BOTH), > new KeyValue(yProperty, toY, > Interpolator.EASE_BOTH))); > t.setCycleCount(Timeline.INDEFINITE); > t.setAutoReverse(true); > return t; > } > > > This looks pretty good perhaps this is what you are seeing in the browser? > > Richard From zonski at gmail.com Sat Jun 1 23:39:38 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Sun, 2 Jun 2013 16:39:38 +1000 Subject: "Wrap text" backwards compatibility issue Message-ID: Since I had to run that old app for those performance screenshots, I found this: https://javafx-jira.kenai.com/browse/RT-30868 I'm just highlighting it here because it is another pretty major backwards compatibility issue between minor release versions. I think backwards compatibility of styling is going to be pretty darn hard for you guys to preserve (read "impossible"). Here's where I throw out my usual call to have Applets and Webstart deprecated, so we don't need auto-updating, and so this kind of backwards compatibility issue isn't so debilitating. Yea, yea, no go, whatever. Hopefully I'm the only one who built an app with single letter buttons, that also has the wrap-text flag set to true for the base button style, but if you were unlucky enough to do this and your app is using web deployment, you probably want to tweak your code around this. From tbee at tbee.org Sun Jun 2 01:15:03 2013 From: tbee at tbee.org (Tom Eugelink) Date: Sun, 02 Jun 2013 10:15:03 +0200 Subject: Animation swipe stutter In-Reply-To: References: Message-ID: <51AAFF07.3010105@tbee.org> I had a similar problem where my calendar popup would flicker when moving the mouse. This was also only reproducible on my system alone. Turns out the fact that I'm using VMWare to separate all the different projects I work on was the cause; somewhere half consciously I've clicked on a VMWare setting called "accelerate 3D graphics" and that didn't quite work as expected. One of the things you can do is let other people run your app and see when the stutter occurs; maybe there is a common denominator. I'm willing to test, and creating a UI only version should not be that hard. Tom On 2013-06-02 07:36, Daniel Zwolenski wrote: > Here is another one I can't reproduce in a constrained example. > http://www.screencast.com/t/ufJsZhiLhNJH > > This is a real world app that runs on a tablet (Windows). I tried to give > this app a bit of an "iPad style", with animations to transition between > screens, etc (this was built a year or two ago). Many of the animations ' > perform poorly' and are either slow or jumpy, etc, but it's hard to capture > on video and hard to replicate in simple examples. > > In this video you can see a 'stutter' as the animation goes from left to > right and back again. The stutter is right at the end just before the > transition finishes. Sometimes it's pretty much perfect but 70% of the time > it either overshoots and re-adjusts or just suddenly jumps to the end point > before it's finished the smooth animation. At least that's the visual > effect as far as I can tell. > > This (and many of the problems) could very well be an issue with the actual > code on my end and not true JFX issues. I've tried to narrow down further > but it is very time consuming to do this and it would help to know if there > were any rough guesses at what might be causing this problem. > > Is it the fact that everything is so highly styled, or just the number of > components, is it something like I shouldn't do any actual real work in an > 'on finished' method, etc? If there are any possible leads then I can try > and put together a small sample but at the moment I'm firing randomly. > > As far as the code goes, it's a fairly standard parallel transition > containing two translate transitions. A very simple example of the sort of > logic used can be seen here: > https://code.google.com/p/zenjava-playtime/source/browse/trunk/javafx-performance/animate1/src/main/java/com/zenjava/jfx/performance/animate1/SwipeApp.java > > But this one animates consistently smooth. From zonski at gmail.com Sun Jun 2 01:32:17 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Sun, 2 Jun 2013 18:32:17 +1000 Subject: Animation swipe stutter In-Reply-To: <51AAFF07.3010105@tbee.org> References: <51AAFF07.3010105@tbee.org> Message-ID: <55144A4A-6B7E-426A-B971-DEA39EEFE692@gmail.com> Thanks for the info. No VMWare going on with this one. Regrettably the app is not mine to share, it's a clients. Taking screen shots is a liberty. It is visible on multiple different windows machines though. On 02/06/2013, at 6:15 PM, Tom Eugelink wrote: > > I had a similar problem where my calendar popup would flicker when moving the mouse. This was also only reproducible on my system alone. Turns out the fact that I'm using VMWare to separate all the different projects I work on was the cause; somewhere half consciously I've clicked on a VMWare setting called "accelerate 3D graphics" and that didn't quite work as expected. > > One of the things you can do is let other people run your app and see when the stutter occurs; maybe there is a common denominator. I'm willing to test, and creating a UI only version should not be that hard. > > Tom > > > On 2013-06-02 07:36, Daniel Zwolenski wrote: >> Here is another one I can't reproduce in a constrained example. >> http://www.screencast.com/t/ufJsZhiLhNJH >> >> This is a real world app that runs on a tablet (Windows). I tried to give >> this app a bit of an "iPad style", with animations to transition between >> screens, etc (this was built a year or two ago). Many of the animations ' >> perform poorly' and are either slow or jumpy, etc, but it's hard to capture >> on video and hard to replicate in simple examples. >> >> In this video you can see a 'stutter' as the animation goes from left to >> right and back again. The stutter is right at the end just before the >> transition finishes. Sometimes it's pretty much perfect but 70% of the time >> it either overshoots and re-adjusts or just suddenly jumps to the end point >> before it's finished the smooth animation. At least that's the visual >> effect as far as I can tell. >> >> This (and many of the problems) could very well be an issue with the actual >> code on my end and not true JFX issues. I've tried to narrow down further >> but it is very time consuming to do this and it would help to know if there >> were any rough guesses at what might be causing this problem. >> >> Is it the fact that everything is so highly styled, or just the number of >> components, is it something like I shouldn't do any actual real work in an >> 'on finished' method, etc? If there are any possible leads then I can try >> and put together a small sample but at the moment I'm firing randomly. >> >> As far as the code goes, it's a fairly standard parallel transition >> containing two translate transitions. A very simple example of the sort of >> logic used can be seen here: >> https://code.google.com/p/zenjava-playtime/source/browse/trunk/javafx-performance/animate1/src/main/java/com/zenjava/jfx/performance/animate1/SwipeApp.java >> >> But this one animates consistently smooth. > > From christian.schudt at gmx.de Sun Jun 2 03:46:13 2013 From: christian.schudt at gmx.de (Christian Schudt) Date: Sun, 2 Jun 2013 12:46:13 +0200 (CEST) Subject: Aw: "Wrap text" backwards compatibility issue In-Reply-To: References: Message-ID: From danno.ferrin at shemnon.com Sun Jun 2 17:59:04 2013 From: danno.ferrin at shemnon.com (Danno Ferrin) Date: Sun, 2 Jun 2013 18:59:04 -0600 Subject: Touch Events, Scrolling, and Windows Pen In-Reply-To: <51A4DF66.9090009@oracle.com> References: <51A46E5B.1040601@oracle.com> <51A4BDE7.8020400@oracle.com> <51A4DF66.9090009@oracle.com> Message-ID: I created a new bug for the pen support bug, with a tested patch. I spent way more time getting the build up than doing the fix, such is native work. https://javafx-jira.kenai.com/browse/RT-30869 For the pan-select, I attached a fix for list views to the existing bug. If that approach passes muster I can do the same for tree and table. https://javafx-jira.kenai.com/browse/RT-21091 On Tue, May 28, 2013 at 10:46 AM, Anthony Petrov wrote: > Sounds good to me. > > Danno, could you please prepare a patch for this bug, test it, and post it > for review here? > > -- > best regards, > Anthony > > > On 05/28/2013 07:46 PM, Danno Ferrin wrote: > >> For 8.0 that would be the best solution IMHO. >> On May 28, 2013 8:41 AM, "Pavel Safrata" >> wrote: >> >> So it seems to me that in short term (FX8) the pen should produce mouse >>> events with isSynthesized==false. We can introduce something more >>> advanced >>> in the future, but right now it should generally work and the synthesized >>> flag really seems to be misused here. >>> Pavel >>> >>> On 28.5.2013 16:09, Danno Ferrin wrote: >>> >>> On Tue, May 28, 2013 at 2:44 AM, Anthony Petrov >>>> ****wrote: >>>> >>>> Hi Danno, >>>> >>>>> >>>>> >>>>> On 05/27/2013 07:27 PM, Danno Ferrin wrote: >>>>> >>>>> My next problem is the pen device on Windows. The only events >>>>> captured >>>>> >>>>>> in >>>>>> JavaFX from a pen are mouse events. To complicate things the >>>>>> "Synthesized" >>>>>> flag is set. This is a bit disconcerting because to the view of a JFX >>>>>> app >>>>>> there is no other event for it to be synthesized to. So I would >>>>>> propose >>>>>> the isPenEvent method in /glass/glass-lib-windows/src/***** >>>>>> >>>>>> *ViewContainer.cpp >>>>>> be >>>>>> added to check that the 0x80 bit is set by changing the signature >>>>>> to 0xFF515780 and the mask to 0xFFFFFF80, making a pen event look just >>>>>> like >>>>>> a mouse event, since it only generates mouse events. (the linked MSDN >>>>>> article in the code explains the lower 8 bits, and the high bit is a >>>>>> pen/touch flag, the logic may need to be more complex). To >>>>>> distinguish >>>>>> a >>>>>> pen tap perhaps we set the direct flag but not the synthesized flag, >>>>>> since >>>>>> a pen is direct on the screen (usually). >>>>>> >>>>>> So am I way off base on these? Should I work up a patch for these? >>>>>> Or >>>>>> must the current behavior be maintained. >>>>>> >>>>>> AFAIK, we haven't tested Glass/FX with a Pen device and I doubt we >>>>>> even >>>>>> >>>>> have proper hardware to test it at the moment. So such a patch would >>>>> certainly be welcome. Please feel free to post it on this mailing list >>>>> for >>>>> a review. >>>>> >>>>> I think the QA and dev team should invest a few thousand and buy one >>>>> or >>>>> >>>> two >>>> each of a Surface Pro, a Samsung Ativ 500T, and maybe an Asus VivoTab >>>> (but >>>> only the Asus if you can get the pen with it on the same order). The >>>> "triple threat" input devices (mouse/pen/touch) will cover a lot of >>>> bases. >>>> >>>> >>>> However, we should first decide how we want to process Pen events. >>>> They >>>> >>>>> are not regular mouse events, nor are they similar to regular touch >>>>> events >>>>> (though they have a lot in common with the latter). E.g. suppose you >>>>> can >>>>> control your Surface Pro with a finger using its touch screen. These >>>>> are >>>>> touch events. Now, you could also connect a USB mouse to this device, >>>>> and >>>>> that would have to generate regular mouse events. Additionally, you >>>>> could >>>>> connect a graphic tablet such as a Wacom Bamboo for example, and this >>>>> device would have to generate some special Pen events, right? >>>>> >>>>> As far as I can tell pen evens are just the same as mouse events >>>>> unless >>>>> >>>> you >>>> use microsofts "Ink" APIs to insert "Ink" into your application. So >>>> unless >>>> JavaFX adds support for digital ink, there is vey little difference. The >>>> only one that comes to mind is pressure sensitivity, and the minority of >>>> windows pen screens or pads support pressure sensitivity. >>>> >>>> >>>> >>>> Should we introduce a new kind of events for Pen events in FX? Or >>>> does it >>>> >>>>> make sense to use touch events for this purpose? How would we >>>>> distinguish >>>>> between finger- and pen- based input events in the above scenario then? >>>>> >>>>> Behavior is a big difference in pen vs touch. Tap and drag for touch >>>>> >>>> gets interpreted as a scroll pan, while tap and drag for a pen >>>> gets interpreted as a mouse click and drag, for example selecting text. >>>> >>>> Pen events don't generate touch gestures like the touch screens do. >>>> Unless >>>> you count the "flicks" api in microsoft land which just generates events >>>> at >>>> the windows level for stuff like delete, cut, copy, paste, etc. Much >>>> like >>>> the multimedia keyboard. >>>> >>>> A new boolean field could be added isPen could be added on the >>>> mouseEvent, >>>> or a new enum property at InputEvent called Input Device, that would >>>> enumerate if it was mouse, touch, pen, keyboard, or whatever standard >>>> input >>>> devies show up in the future. These enums could then be loaded with all >>>> sorts of interesting queries in case a user wants to write their app in >>>> a >>>> future proof way, such as are drag events principally pan-scrolling, is >>>> the >>>> gesture device direct/indirect. Maybe not an enum, but a separate HCI >>>> object rather than pushing the random flags into the event system. >>>> >>>> >>>> What other options do we have? >>>> >>>>> >>>>> >>>>> Keeping pen input second class is fine I think, as long as it is >>>>> >>>> consistent >>>> with the differences between touch and mouse in non-ink areas. If we >>>> have >>>> to confuse them with one type or the other, confuse them with mouse >>>> events >>>> because they are closer to mouse events then touch events. There are >>>> more >>>> important areas for JavaFX to go to before it goes down the digital ink >>>> path. >>>> >>>> >>>> -- >>>> >>>>> best regards, >>>>> Anthony >>>>> >>>>> >>>>> >>> From hang.vo at oracle.com Sun Jun 2 22:33:40 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 03 Jun 2013 05:33:40 +0000 Subject: hg: openjfx/8/controls/rt: 2 new changesets Message-ID: <20130603053429.7007A48ECD@hg.openjdk.java.net> Changeset: 374145c4e41e Author: jgiles Date: 2013-06-03 17:18 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/374145c4e41e Unit test and partial fix for RT-29849: [TreeTableView] on edit start is fired many times ! javafx-ui-controls/src/javafx/scene/control/TableCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableCell.java ! javafx-ui-controls/test/com/sun/javafx/scene/control/infrastructure/VirtualFlowTestUtils.java ! javafx-ui-controls/test/javafx/scene/control/CellTest.java ! javafx-ui-controls/test/javafx/scene/control/ListViewKeyInputTest.java ! javafx-ui-controls/test/javafx/scene/control/TableViewKeyInputTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeTableViewKeyInputTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeViewKeyInputTest.java Changeset: b7cc945d9169 Author: jgiles Date: 2013-06-03 17:19 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/b7cc945d9169 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt From hjohn at xs4all.nl Mon Jun 3 01:26:51 2013 From: hjohn at xs4all.nl (John Hendrikx) Date: Mon, 03 Jun 2013 10:26:51 +0200 Subject: JavaFX graphics performance and suitability for advanced animations In-Reply-To: References: <003f01ce593f$d5f63fe0$81e2bfa0$@ozemail.com.au> <1FBA4B49-6CF0-43D8-BF81-8440222DD257@oracle.com> <07CE54A3-DE8B-44ED-9B3F-E78C26F444AA@oracle.com> <8499C01C-6412-443B-8EA5-BF1F06D9A7F3@oracle.com> <42C74414-F9EC-4249-A674-FDCEF699550A@gmail.com> <54775F8F-2469-464E-98D9-1F0E63F4AEAD@oracle.com> <5F28D018-590D-4AF6-B64E-3FFE6AD14436@gmail.com> <71B8B4BA-C8E6-442F-AD46-466F7E52C88D@gmail.com> <4D93C480-DE93-456D-ADEA-BE1F69ACE7A3@oracle.com> Message-ID: <51AC534B.1040707@xs4all.nl> On 1/06/2013 02:24, Daniel Zwolenski wrote: > Can anyone recommend any good screen capture software for windows? Not sure > it would capture this problem but it would be useful for some of the other > problems I'm seeing in the TD game that I can't seem to reproduce in small > snippets of code. I used http://camstudio.org/ before to record a JavaFX program (see here for the results: http://www.youtube.com/watch?v=8Mb15bOwIyE) --John From hang.vo at oracle.com Mon Jun 3 03:06:07 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 03 Jun 2013 10:06:07 +0000 Subject: hg: openjfx/8/graphics/rt: 3 new changesets Message-ID: <20130603100712.2855048ED8@hg.openjdk.java.net> Changeset: c51b01afa79b Author: Daniel Blaukopf Date: 2013-06-03 12:48 +0300 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/c51b01afa79b RT-30720 Filter out unneeded calls to glEnable(GL_SCISSOR_TEST) ! prism-es2-native/src/GLContext.c Changeset: 8af9dc9dae1c Author: Daniel Blaukopf Date: 2013-06-03 12:49 +0300 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/8af9dc9dae1c RT-30722 System property prism.glBufferSize sets color depth. Options are: 16, 24 or the default 32. ! prism-es2-native/src/eglfb/eglUtils.c ! prism-es2/src/com/sun/prism/es2/GLPixelFormat.java Changeset: fbf4a8a33a98 Author: Daniel Blaukopf Date: 2013-06-03 12:53 +0300 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/fbf4a8a33a98 Fix Lens X11 Container build ! glass/glass-lib-lens/src/wm/screen/x11ContainerScreen.c From hang.vo at oracle.com Mon Jun 3 04:49:06 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 03 Jun 2013 11:49:06 +0000 Subject: hg: openjfx/8/graphics/rt: Making variable static to avoid problems when statically linked with jdk8u mobile. Message-ID: <20130603114919.6368048EDE@hg.openjdk.java.net> Changeset: 129d59d5a79b Author: Oldrich Maticka Date: 2013-06-03 13:34 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/129d59d5a79b Making variable static to avoid problems when statically linked with jdk8u mobile. ! javafx-iio-native/src/jpegloader.c From pavel.safrata at oracle.com Mon Jun 3 04:56:00 2013 From: pavel.safrata at oracle.com (Pavel Safrata) Date: Mon, 03 Jun 2013 13:56:00 +0200 Subject: JavaFX graphics performance and suitability for advanced animations (BrickBreaker) In-Reply-To: References: <003f01ce593f$d5f63fe0$81e2bfa0$@ozemail.com.au> <004501ce5d35$10f36700$32da3500$@ozemail.com.au> <574CC6CC-7C23-4A0E-B949-21446CD2E5B0@oracle.com> <6866B12C-F505-4CA1-A4FC-CEB5950FD52C@oracle.com> <51A8BFE9.4010806@oracle.com> Message-ID: <51AC8450.8010706@oracle.com> Hello, I'm a bit behind with this thread but I want to make a few comments on AnimationTimer as there is a hidden message in the discussion that AnimationTimer is the way to go. First, AnimationTimer is called in each pulse, which doesn't have much in common with display refresh rate (if I understand the term correctly). More importantly, AnimationTimer is kind of extreme low-level animation API that should not be needed in vast majority of cases. I think a better way to code BrickBraker would be to use a single TranslateTransition for the entire straight part of the ball's trajectory; it would automatically compute the interpolation and sync the position on every pulse, which should have the same result as doing everything manually with the AnimationTimer (but expressed in simpler code). Regards, Pavel On 31.5.2013 22:45, Richard Bair wrote: > I pushed the fix to graphics. Thanks Scott for tracking that down! It looks 10x better. > > Richard > > On May 31, 2013, at 9:25 AM, Richard Bair wrote: > >> Patch attached to https://javafx-jira.kenai.com/browse/RT-29801. I'm not seeing any stutter on my Mac, interested to hear the experience on Windows. >> >> Richard >> >> On May 31, 2013, at 8:44 AM, Richard Bair wrote: >> >>> Ya I did the same, am now adjusting it so the factor by which things move is better. >>> >>> Richard >>> >>> On May 31, 2013, at 8:32 AM, Scott Palmer wrote: >>> >>>> Richard, I suspect you made a typo. I think you mean "*40*ms is a really odd number..." (it was 25 FPS, not 25ms) >>>> >>>> I quickly hacked it to use AnimationTimer and the animation is very smooth now. Though I didn't make the required changes to adjust the speeds based on the refresh rate. The quick conversion to AnimationTimer is trivial.. but going through and adjusting all the translations and increments to be relative to the time between consecutive frames is something I don't have time for. >>>> >>>> Cheers, >>>> >>>> Scott >>>> >>>> >>>> Scott >>>> >>>> >>>> On Fri, May 31, 2013 at 11:21 AM, Kevin Rushforth wrote: >>>> Btw, there is a JIRA issue filed against BrickBreaker specifically: https://javafx-jira.kenai.com/browse/RT-29801 >>>> >>>> >>>> Richard Bair wrote: >>>>> Have you tried to determine what the FPS is? My guess is that FPS is not anywhere near the limit and it is the occasional stutter that is the problem, but I'm not certain. Knowing that helps to point in which direction to go. The fact that it runs pretty well on a PI is indication that it isn't the framerate. >>>>> >>>>> Richard >>>>> >>>>> On May 31, 2013, at 4:26 AM, Scott Palmer wrote: >>>>> >>>>> >>>>>> Speaking of poor animation in Ensemble... >>>>>> >>>>>> Is anyone able to run Brick Breaker without choppy animation or poor framerate performance on the ball? >>>>>> >>>>>> Now, I suspect the issue there is in the balls animation implementation in the application rather than the JavaFX framework, as the bat moves smoothly when I move the mouse, but the overall perception of JavaFX performance for this demo app is not good. I would go so far as to say that Brick Breaker has had the opposite effect it was intended too - simply because the animation of the ball is not smooth. That's something that would run smoothly on a Commodore 64,yet the last time I tried it (5 minutes ago) with JavaFX 8.0-b91 on a quad-core 3GHz Windows 7 box with a decent NVIDIA card, it didn't run as smoothly as I would expect. Just a single ball with a shadow bouncing around the screen seemed to have a low framerate and the occasional skipped frame. It just didn't look that great. >>>>>> >>>>>> The fact that Brick Breaker ships as a sample app from Oracle and it's animation looks bad is harming JavaFX's reputation in my opinion. I think it could run much better on the existing JavaFX runtime. The simple animations in the Ensemble app run much smoother for example. >>>>>> >>>>>> >>>>>> >>>>>> Scott >>>>>> >>>>>> >>>>>> On Thu, May 30, 2013 at 11:11 AM, Richard Bair wrote: >>>>>> >>>>>> >>>>>>> Then you mention Halo 5. I have to say the subtext here troubles me >>>>>>> greatly. If I read you correctly then you are saying that JavaFX is not >>>>>>> really suitable for games (at least anything beyond the demands of something >>>>>>> like Solitaire). As someone else pointed out, what is point of developing >>>>>>> 3D support in JavaFX if it is not really suitable for games? To say it is >>>>>>> not suitable for games implies that it is not really suitable for *any* >>>>>>> application that requires performant animations and visualisations. What >>>>>>> use then is the 3D API? >>>>>>> >>>>>> That's not fair at all. There are a *lot* of enterprise use cases for 3D, and we get these requests all the time. Whether we're taking about 3D visualizations for medical or engineering applications or consumer applications (product display, etc), there is a requirement for 3D that are broader than real time first person shooters. >>>>>> >>>>>> Game engines often have very specialized scene graphs (sometimes several of them) as well as very specialized tricks for getting the most out of their graphics cards. When we expose API that allows people to hammer the card directly, then it would be possible for somebody to build some of the UI in FX and let their game engine be hand written (in Unity or JOGL or whatever). >>>>>> >>>>>> >>>>>> >>>>>>> However, I am not sure that having me preparing "reproducible" test cases >>>>>>> will actually help. In my experience, the Ensemble app already serves this >>>>>>> purpose. The choppiness I describe is *always* prevalent when I run the >>>>>>> animations and transitions in Ensemble (including Ensemble 8). The only >>>>>>> variation is in the degree of that choppiness. >>>>>>> >>>>>> Then start with that, something absolutely dead simple like a path animation or rotate transition and lets figure out how to measure the jitter and get it into our benchmark suite. >>>>>> >>>>>> Richard >>>>>> >>>>>> From hang.vo at oracle.com Mon Jun 3 05:07:16 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 03 Jun 2013 12:07:16 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130603120741.190F748EDF@hg.openjdk.java.net> Changeset: b0ab2280e3c7 Author: Martin Sladecek Date: 2013-06-03 13:51 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/b0ab2280e3c7 VBox optimizations ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java ! javafx-ui-common/test/unit/javafx/scene/layout/VBoxTest.java Changeset: 3402d5532f0a Author: Martin Sladecek Date: 2013-06-03 13:52 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/3402d5532f0a Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt From steve.x.northover at oracle.com Mon Jun 3 05:41:39 2013 From: steve.x.northover at oracle.com (steve.x.northover at oracle.com) Date: Mon, 03 Jun 2013 08:41:39 -0400 Subject: JavaFX graphics performance and suitability for advanced animations (BrickBreaker) In-Reply-To: <51AC8450.8010706@oracle.com> References: <003f01ce593f$d5f63fe0$81e2bfa0$@ozemail.com.au> <004501ce5d35$10f36700$32da3500$@ozemail.com.au> <574CC6CC-7C23-4A0E-B949-21446CD2E5B0@oracle.com> <6866B12C-F505-4CA1-A4FC-CEB5950FD52C@oracle.com> <51A8BFE9.4010806@oracle.com> <51AC8450.8010706@oracle.com> Message-ID: <51AC8F03.50605@oracle.com> Can you make the changes and verify the results? BrickBreaker and the other samples are supposed to be "how to" examples for people to emulate. Steve On 03/06/2013 7:56 AM, Pavel Safrata wrote: > Hello, > I'm a bit behind with this thread but I want to make a few comments on > AnimationTimer as there is a hidden message in the discussion that > AnimationTimer is the way to go. > > First, AnimationTimer is called in each pulse, which doesn't have much > in common with display refresh rate (if I understand the term > correctly). More importantly, AnimationTimer is kind of extreme > low-level animation API that should not be needed in vast majority of > cases. I think a better way to code BrickBraker would be to use a > single TranslateTransition for the entire straight part of the ball's > trajectory; it would automatically compute the interpolation and sync > the position on every pulse, which should have the same result as > doing everything manually with the AnimationTimer (but expressed in > simpler code). > > Regards, > Pavel > > On 31.5.2013 22:45, Richard Bair wrote: >> I pushed the fix to graphics. Thanks Scott for tracking that down! It >> looks 10x better. >> >> Richard >> >> On May 31, 2013, at 9:25 AM, Richard Bair >> wrote: >> >>> Patch attached to https://javafx-jira.kenai.com/browse/RT-29801. I'm >>> not seeing any stutter on my Mac, interested to hear the experience >>> on Windows. >>> >>> Richard >>> >>> On May 31, 2013, at 8:44 AM, Richard Bair >>> wrote: >>> >>>> Ya I did the same, am now adjusting it so the factor by which >>>> things move is better. >>>> >>>> Richard >>>> >>>> On May 31, 2013, at 8:32 AM, Scott Palmer wrote: >>>> >>>>> Richard, I suspect you made a typo. I think you mean "*40*ms is a >>>>> really odd number..." (it was 25 FPS, not 25ms) >>>>> >>>>> I quickly hacked it to use AnimationTimer and the animation is >>>>> very smooth now. Though I didn't make the required changes to >>>>> adjust the speeds based on the refresh rate. The quick conversion >>>>> to AnimationTimer is trivial.. but going through and adjusting all >>>>> the translations and increments to be relative to the time between >>>>> consecutive frames is something I don't have time for. >>>>> >>>>> Cheers, >>>>> >>>>> Scott >>>>> >>>>> >>>>> Scott >>>>> >>>>> >>>>> On Fri, May 31, 2013 at 11:21 AM, Kevin Rushforth >>>>> wrote: >>>>> Btw, there is a JIRA issue filed against BrickBreaker >>>>> specifically: https://javafx-jira.kenai.com/browse/RT-29801 >>>>> >>>>> >>>>> Richard Bair wrote: >>>>>> Have you tried to determine what the FPS is? My guess is that FPS >>>>>> is not anywhere near the limit and it is the occasional stutter >>>>>> that is the problem, but I'm not certain. Knowing that helps to >>>>>> point in which direction to go. The fact that it runs pretty well >>>>>> on a PI is indication that it isn't the framerate. >>>>>> >>>>>> Richard >>>>>> >>>>>> On May 31, 2013, at 4:26 AM, Scott Palmer >>>>>> wrote: >>>>>> >>>>>> >>>>>>> Speaking of poor animation in Ensemble... >>>>>>> >>>>>>> Is anyone able to run Brick Breaker without choppy animation or >>>>>>> poor framerate performance on the ball? >>>>>>> >>>>>>> Now, I suspect the issue there is in the balls animation >>>>>>> implementation in the application rather than the JavaFX >>>>>>> framework, as the bat moves smoothly when I move the mouse, but >>>>>>> the overall perception of JavaFX performance for this demo app >>>>>>> is not good. I would go so far as to say that Brick Breaker has >>>>>>> had the opposite effect it was intended too - simply because the >>>>>>> animation of the ball is not smooth. That's something that would >>>>>>> run smoothly on a Commodore 64,yet the last time I tried it (5 >>>>>>> minutes ago) with JavaFX 8.0-b91 on a quad-core 3GHz Windows 7 >>>>>>> box with a decent NVIDIA card, it didn't run as smoothly as I >>>>>>> would expect. Just a single ball with a shadow bouncing around >>>>>>> the screen seemed to have a low framerate and the occasional >>>>>>> skipped frame. It just didn't look that great. >>>>>>> >>>>>>> The fact that Brick Breaker ships as a sample app from Oracle >>>>>>> and it's animation looks bad is harming JavaFX's reputation in >>>>>>> my opinion. I think it could run much better on the existing >>>>>>> JavaFX runtime. The simple animations in the Ensemble app run >>>>>>> much smoother for example. >>>>>>> >>>>>>> >>>>>>> >>>>>>> Scott >>>>>>> >>>>>>> >>>>>>> On Thu, May 30, 2013 at 11:11 AM, Richard Bair >>>>>>> wrote: >>>>>>> >>>>>>> >>>>>>>> Then you mention Halo 5. I have to say the subtext here >>>>>>>> troubles me >>>>>>>> greatly. If I read you correctly then you are saying that >>>>>>>> JavaFX is not >>>>>>>> really suitable for games (at least anything beyond the demands >>>>>>>> of something >>>>>>>> like Solitaire). As someone else pointed out, what is point of >>>>>>>> developing >>>>>>>> 3D support in JavaFX if it is not really suitable for games? >>>>>>>> To say it is >>>>>>>> not suitable for games implies that it is not really suitable >>>>>>>> for *any* >>>>>>>> application that requires performant animations and >>>>>>>> visualisations. What >>>>>>>> use then is the 3D API? >>>>>>>> >>>>>>> That's not fair at all. There are a *lot* of enterprise use >>>>>>> cases for 3D, and we get these requests all the time. Whether >>>>>>> we're taking about 3D visualizations for medical or engineering >>>>>>> applications or consumer applications (product display, etc), >>>>>>> there is a requirement for 3D that are broader than real time >>>>>>> first person shooters. >>>>>>> >>>>>>> Game engines often have very specialized scene graphs (sometimes >>>>>>> several of them) as well as very specialized tricks for getting >>>>>>> the most out of their graphics cards. When we expose API that >>>>>>> allows people to hammer the card directly, then it would be >>>>>>> possible for somebody to build some of the UI in FX and let >>>>>>> their game engine be hand written (in Unity or JOGL or whatever). >>>>>>> >>>>>>> >>>>>>> >>>>>>>> However, I am not sure that having me preparing "reproducible" >>>>>>>> test cases >>>>>>>> will actually help. In my experience, the Ensemble app already >>>>>>>> serves this >>>>>>>> purpose. The choppiness I describe is *always* prevalent when >>>>>>>> I run the >>>>>>>> animations and transitions in Ensemble (including Ensemble 8). >>>>>>>> The only >>>>>>>> variation is in the degree of that choppiness. >>>>>>>> >>>>>>> Then start with that, something absolutely dead simple like a >>>>>>> path animation or rotate transition and lets figure out how to >>>>>>> measure the jitter and get it into our benchmark suite. >>>>>>> >>>>>>> Richard >>>>>>> >>>>>>> > From swpalmer at gmail.com Mon Jun 3 06:30:43 2013 From: swpalmer at gmail.com (Scott Palmer) Date: Mon, 3 Jun 2013 09:30:43 -0400 Subject: JavaFX graphics performance and suitability for advanced animations (BrickBreaker) In-Reply-To: <51AC8450.8010706@oracle.com> References: <003f01ce593f$d5f63fe0$81e2bfa0$@ozemail.com.au> <004501ce5d35$10f36700$32da3500$@ozemail.com.au> <574CC6CC-7C23-4A0E-B949-21446CD2E5B0@oracle.com> <6866B12C-F505-4CA1-A4FC-CEB5950FD52C@oracle.com> <51A8BFE9.4010806@oracle.com> <51AC8450.8010706@oracle.com> Message-ID: In this particular example you may be right. The trajectory of the ball can be pre-computed for at least the entire length of the straight line that it will travel in. You could go a couple bounces ahead even, to the point where the ball would get back to the bottom. However, that is definitely not the typical case for a video game. Per-frame or per-update computations are the norm for video games. Change the game style to a shoot'em up where every frame you need to determine collisions, the direction of the player or enemy may change etc, and it actually isn't any simpler trying to use a pre-computed timeline. The calculation of such a timeline would be more work. I think in the general case for a video game, AnimationTimer is more likely to apply than other techniques. It fits the basic pattern commonly used and therefore makes better sample code. There is a small problem with Richard's patch though... I would like to know a little more about the relation of the "pulse" to the refresh rate. I know that there are places in JavaFX where a "pulse" is requested or maybe forced. Presumably to trigger calculations related to general scene graph layout issues. (I find often that the layout of the scene is wrong actually - that is when I do actions that force a refresh I will see the layout adjust to a state where it clearly should have been in the first place.) One would think that in general one pulse per display refresh would be the minimum though. Anything less means the animation will not be smooth, anything more shouldn't cause problems. The key is that the "now" time is used to update any time-based values. I think Richard's patch to BrickBreaker is actually incorrect in this regard, as I don't see the actual time passed being used in the calculations. Scott On Mon, Jun 3, 2013 at 7:56 AM, Pavel Safrata wrote: > Hello, > I'm a bit behind with this thread but I want to make a few comments on > AnimationTimer as there is a hidden message in the discussion that > AnimationTimer is the way to go. > > First, AnimationTimer is called in each pulse, which doesn't have much in > common with display refresh rate (if I understand the term correctly). More > importantly, AnimationTimer is kind of extreme low-level animation API that > should not be needed in vast majority of cases. I think a better way to > code BrickBraker would be to use a single TranslateTransition for the > entire straight part of the ball's trajectory; it would automatically > compute the interpolation and sync the position on every pulse, which > should have the same result as doing everything manually with the > AnimationTimer (but expressed in simpler code). > > Regards, > Pavel > > On 31.5.2013 22:45, Richard Bair wrote: > >> I pushed the fix to graphics. Thanks Scott for tracking that down! It >> looks 10x better. >> >> Richard >> >> On May 31, 2013, at 9:25 AM, Richard Bair >> wrote: >> >> Patch attached to https://javafx-jira.kenai.com/**browse/RT-29801. >>> I'm not seeing any stutter on my Mac, interested to hear the experience on >>> Windows. >>> >>> Richard >>> >>> On May 31, 2013, at 8:44 AM, Richard Bair >>> wrote: >>> >>> Ya I did the same, am now adjusting it so the factor by which things >>>> move is better. >>>> >>>> Richard >>>> >>>> On May 31, 2013, at 8:32 AM, Scott Palmer wrote: >>>> >>>> Richard, I suspect you made a typo. I think you mean "*40*ms is a >>>>> really odd number..." (it was 25 FPS, not 25ms) >>>>> >>>>> I quickly hacked it to use AnimationTimer and the animation is very >>>>> smooth now. Though I didn't make the required changes to adjust the speeds >>>>> based on the refresh rate. The quick conversion to AnimationTimer is >>>>> trivial.. but going through and adjusting all the translations and >>>>> increments to be relative to the time between consecutive frames is >>>>> something I don't have time for. >>>>> >>>>> Cheers, >>>>> >>>>> Scott >>>>> >>>>> >>>>> Scott >>>>> >>>>> >>>>> On Fri, May 31, 2013 at 11:21 AM, Kevin Rushforth < >>>>> kevin.rushforth at oracle.com> wrote: >>>>> Btw, there is a JIRA issue filed against BrickBreaker specifically: >>>>> https://javafx-jira.kenai.com/**browse/RT-29801 >>>>> >>>>> >>>>> Richard Bair wrote: >>>>> >>>>>> Have you tried to determine what the FPS is? My guess is that FPS is >>>>>> not anywhere near the limit and it is the occasional stutter that is the >>>>>> problem, but I'm not certain. Knowing that helps to point in which >>>>>> direction to go. The fact that it runs pretty well on a PI is indication >>>>>> that it isn't the framerate. >>>>>> >>>>>> Richard >>>>>> >>>>>> On May 31, 2013, at 4:26 AM, Scott Palmer wrote: >>>>>> >>>>>> >>>>>> Speaking of poor animation in Ensemble... >>>>>>> >>>>>>> Is anyone able to run Brick Breaker without choppy animation or poor >>>>>>> framerate performance on the ball? >>>>>>> >>>>>>> Now, I suspect the issue there is in the balls animation >>>>>>> implementation in the application rather than the JavaFX framework, as the >>>>>>> bat moves smoothly when I move the mouse, but the overall perception of >>>>>>> JavaFX performance for this demo app is not good. I would go so far as to >>>>>>> say that Brick Breaker has had the opposite effect it was intended too - >>>>>>> simply because the animation of the ball is not smooth. That's something >>>>>>> that would run smoothly on a Commodore 64,yet the last time I tried it (5 >>>>>>> minutes ago) with JavaFX 8.0-b91 on a quad-core 3GHz Windows 7 box with a >>>>>>> decent NVIDIA card, it didn't run as smoothly as I would expect. Just a >>>>>>> single ball with a shadow bouncing around the screen seemed to have a low >>>>>>> framerate and the occasional skipped frame. It just didn't look that great. >>>>>>> >>>>>>> The fact that Brick Breaker ships as a sample app from Oracle and >>>>>>> it's animation looks bad is harming JavaFX's reputation in my opinion. I >>>>>>> think it could run much better on the existing JavaFX runtime. The simple >>>>>>> animations in the Ensemble app run much smoother for example. >>>>>>> >>>>>>> >>>>>>> >>>>>>> Scott >>>>>>> >>>>>>> >>>>>>> On Thu, May 30, 2013 at 11:11 AM, Richard Bair < >>>>>>> richard.bair at oracle.com> wrote: >>>>>>> >>>>>>> >>>>>>> Then you mention Halo 5. I have to say the subtext here troubles me >>>>>>>> greatly. If I read you correctly then you are saying that JavaFX >>>>>>>> is not >>>>>>>> really suitable for games (at least anything beyond the demands of >>>>>>>> something >>>>>>>> like Solitaire). As someone else pointed out, what is point of >>>>>>>> developing >>>>>>>> 3D support in JavaFX if it is not really suitable for games? To >>>>>>>> say it is >>>>>>>> not suitable for games implies that it is not really suitable for >>>>>>>> *any* >>>>>>>> application that requires performant animations and visualisations. >>>>>>>> What >>>>>>>> use then is the 3D API? >>>>>>>> >>>>>>>> That's not fair at all. There are a *lot* of enterprise use cases >>>>>>> for 3D, and we get these requests all the time. Whether we're taking about >>>>>>> 3D visualizations for medical or engineering applications or consumer >>>>>>> applications (product display, etc), there is a requirement for 3D that are >>>>>>> broader than real time first person shooters. >>>>>>> >>>>>>> Game engines often have very specialized scene graphs (sometimes >>>>>>> several of them) as well as very specialized tricks for getting the most >>>>>>> out of their graphics cards. When we expose API that allows people to >>>>>>> hammer the card directly, then it would be possible for somebody to build >>>>>>> some of the UI in FX and let their game engine be hand written (in Unity or >>>>>>> JOGL or whatever). >>>>>>> >>>>>>> >>>>>>> >>>>>>> However, I am not sure that having me preparing "reproducible" test >>>>>>>> cases >>>>>>>> will actually help. In my experience, the Ensemble app already >>>>>>>> serves this >>>>>>>> purpose. The choppiness I describe is *always* prevalent when I >>>>>>>> run the >>>>>>>> animations and transitions in Ensemble (including Ensemble 8). The >>>>>>>> only >>>>>>>> variation is in the degree of that choppiness. >>>>>>>> >>>>>>>> Then start with that, something absolutely dead simple like a path >>>>>>> animation or rotate transition and lets figure out how to measure the >>>>>>> jitter and get it into our benchmark suite. >>>>>>> >>>>>>> Richard >>>>>>> >>>>>>> >>>>>>> > From anthony.petrov at oracle.com Mon Jun 3 06:52:42 2013 From: anthony.petrov at oracle.com (Anthony Petrov) Date: Mon, 03 Jun 2013 17:52:42 +0400 Subject: Touch Events, Scrolling, and Windows Pen In-Reply-To: References: <51A46E5B.1040601@oracle.com> <51A4BDE7.8020400@oracle.com> <51A4DF66.9090009@oracle.com> Message-ID: <51AC9FAA.1030503@oracle.com> Hi Danno, Thank you for the patch. I've published a webrev at: http://cr.openjdk.java.net/~anthony/g-301-penEvents-RT-30869.0/ The fix looks fine to me. Could anyone else please review it? -- best regards, Anthony On 06/03/13 04:59, Danno Ferrin wrote: > I created a new bug for the pen support bug, with a tested patch. I > spent way more time getting the build up than doing the fix, such is > native work. > https://javafx-jira.kenai.com/browse/RT-30869 > For the pan-select, I attached a fix for list views to the existing > bug. If that approach passes muster I can do the same for tree and table. > https://javafx-jira.kenai.com/browse/RT-21091 > > On Tue, May 28, 2013 at 10:46 AM, Anthony Petrov > > wrote: > > Sounds good to me. > > Danno, could you please prepare a patch for this bug, test it, and > post it for review here? > > -- > best regards, > Anthony > > > On 05/28/2013 07:46 PM, Danno Ferrin wrote: > > For 8.0 that would be the best solution IMHO. > On May 28, 2013 8:41 AM, "Pavel Safrata" > > wrote: > > So it seems to me that in short term (FX8) the pen should > produce mouse > events with isSynthesized==false. We can introduce something > more advanced > in the future, but right now it should generally work and > the synthesized > flag really seems to be misused here. > Pavel > > On 28.5.2013 16:09, Danno Ferrin wrote: > > On Tue, May 28, 2013 at 2:44 AM, Anthony Petrov > >**__wrote: > > Hi Danno, > > > > On 05/27/2013 07:27 PM, Danno Ferrin wrote: > > My next problem is the pen device on Windows. > The only events captured > > in > JavaFX from a pen are mouse events. To > complicate things the > "Synthesized" > flag is set. This is a bit disconcerting > because to the view of a JFX > app > there is no other event for it to be synthesized > to. So I would propose > the isPenEvent method in > /glass/glass-lib-windows/src/*__** > > *ViewContainer.cpp > be > added to check that the 0x80 bit is set by > changing the signature > to 0xFF515780 and the mask to 0xFFFFFF80, making > a pen event look just > like > a mouse event, since it only generates mouse > events. (the linked MSDN > article in the code explains the lower 8 bits, > and the high bit is a > pen/touch flag, the logic may need to be more > complex). To distinguish > a > pen tap perhaps we set the direct flag but not > the synthesized flag, > since > a pen is direct on the screen (usually). > > So am I way off base on these? Should I work up > a patch for these? Or > must the current behavior be maintained. > > AFAIK, we haven't tested Glass/FX with a Pen > device and I doubt we even > > have proper hardware to test it at the moment. So > such a patch would > certainly be welcome. Please feel free to post it on > this mailing list > for > a review. > > I think the QA and dev team should invest a few > thousand and buy one or > > two > each of a Surface Pro, a Samsung Ativ 500T, and maybe an > Asus VivoTab (but > only the Asus if you can get the pen with it on the same > order). The > "triple threat" input devices (mouse/pen/touch) will > cover a lot of bases. > > > However, we should first decide how we want to > process Pen events. They > > are not regular mouse events, nor are they similar > to regular touch > events > (though they have a lot in common with the latter). > E.g. suppose you can > control your Surface Pro with a finger using its > touch screen. These are > touch events. Now, you could also connect a USB > mouse to this device, and > that would have to generate regular mouse events. > Additionally, you could > connect a graphic tablet such as a Wacom Bamboo for > example, and this > device would have to generate some special Pen > events, right? > > As far as I can tell pen evens are just the same > as mouse events unless > > you > use microsofts "Ink" APIs to insert "Ink" into your > application. So > unless > JavaFX adds support for digital ink, there is vey little > difference. The > only one that comes to mind is pressure sensitivity, and > the minority of > windows pen screens or pads support pressure sensitivity. > > > > Should we introduce a new kind of events for Pen > events in FX? Or does it > > make sense to use touch events for this purpose? How > would we distinguish > between finger- and pen- based input events in the > above scenario then? > > Behavior is a big difference in pen vs touch. > Tap and drag for touch > > gets interpreted as a scroll pan, while tap and drag for > a pen > gets interpreted as a mouse click and drag, for example > selecting text. > > Pen events don't generate touch gestures like the touch > screens do. > Unless > you count the "flicks" api in microsoft land which just > generates events > at > the windows level for stuff like delete, cut, copy, > paste, etc. Much like > the multimedia keyboard. > > A new boolean field could be added isPen could be added > on the mouseEvent, > or a new enum property at InputEvent called Input > Device, that would > enumerate if it was mouse, touch, pen, keyboard, or > whatever standard > input > devies show up in the future. These enums could then be > loaded with all > sorts of interesting queries in case a user wants to > write their app in a > future proof way, such as are drag events principally > pan-scrolling, is > the > gesture device direct/indirect. Maybe not an enum, but > a separate HCI > object rather than pushing the random flags into the > event system. > > > What other options do we have? > > > > Keeping pen input second class is fine I think, > as long as it is > > consistent > with the differences between touch and mouse in non-ink > areas. If we have > to confuse them with one type or the other, confuse them > with mouse events > because they are closer to mouse events then touch > events. There are more > important areas for JavaFX to go to before it goes down > the digital ink > path. > > > -- > > best regards, > Anthony > > > > From artem.ananiev at oracle.com Mon Jun 3 07:47:31 2013 From: artem.ananiev at oracle.com (Artem Ananiev) Date: Mon, 03 Jun 2013 18:47:31 +0400 Subject: Touch Events, Scrolling, and Windows Pen In-Reply-To: <51AC9FAA.1030503@oracle.com> References: <51A46E5B.1040601@oracle.com> <51A4BDE7.8020400@oracle.com> <51A4DF66.9090009@oracle.com> <51AC9FAA.1030503@oracle.com> Message-ID: <51ACAC83.8070400@oracle.com> On 6/3/2013 5:52 PM, Anthony Petrov wrote: > Hi Danno, > > Thank you for the patch. I've published a webrev at: > > http://cr.openjdk.java.net/~anthony/g-301-penEvents-RT-30869.0/ > > The fix looks fine to me. Could anyone else please review it? +1. Thanks, Artem > -- > best regards, > Anthony > > On 06/03/13 04:59, Danno Ferrin wrote: >> I created a new bug for the pen support bug, with a tested patch. I >> spent way more time getting the build up than doing the fix, such is >> native work. >> https://javafx-jira.kenai.com/browse/RT-30869 >> For the pan-select, I attached a fix for list views to the existing >> bug. If that approach passes muster I can do the same for tree and >> table. >> https://javafx-jira.kenai.com/browse/RT-21091 >> >> On Tue, May 28, 2013 at 10:46 AM, Anthony Petrov >> > wrote: >> >> Sounds good to me. >> >> Danno, could you please prepare a patch for this bug, test it, and >> post it for review here? >> >> -- >> best regards, >> Anthony >> >> >> On 05/28/2013 07:46 PM, Danno Ferrin wrote: >> >> For 8.0 that would be the best solution IMHO. >> On May 28, 2013 8:41 AM, "Pavel Safrata" >> > >> wrote: >> >> So it seems to me that in short term (FX8) the pen should >> produce mouse >> events with isSynthesized==false. We can introduce something >> more advanced >> in the future, but right now it should generally work and >> the synthesized >> flag really seems to be misused here. >> Pavel >> >> On 28.5.2013 16:09, Danno Ferrin wrote: >> >> On Tue, May 28, 2013 at 2:44 AM, Anthony Petrov >> > >**__wrote: >> >> Hi Danno, >> >> >> >> On 05/27/2013 07:27 PM, Danno Ferrin wrote: >> >> My next problem is the pen device on Windows. >> The only events captured >> >> in >> JavaFX from a pen are mouse events. To >> complicate things the >> "Synthesized" >> flag is set. This is a bit disconcerting >> because to the view of a JFX >> app >> there is no other event for it to be synthesized >> to. So I would propose >> the isPenEvent method in >> /glass/glass-lib-windows/src/*__** >> >> *ViewContainer.cpp >> be >> added to check that the 0x80 bit is set by >> changing the signature >> to 0xFF515780 and the mask to 0xFFFFFF80, making >> a pen event look just >> like >> a mouse event, since it only generates mouse >> events. (the linked MSDN >> article in the code explains the lower 8 bits, >> and the high bit is a >> pen/touch flag, the logic may need to be more >> complex). To distinguish >> a >> pen tap perhaps we set the direct flag but not >> the synthesized flag, >> since >> a pen is direct on the screen (usually). >> >> So am I way off base on these? Should I work up >> a patch for these? Or >> must the current behavior be maintained. >> >> AFAIK, we haven't tested Glass/FX with a Pen >> device and I doubt we even >> >> have proper hardware to test it at the moment. So >> such a patch would >> certainly be welcome. Please feel free to post it on >> this mailing list >> for >> a review. >> >> I think the QA and dev team should invest a few >> thousand and buy one or >> >> two >> each of a Surface Pro, a Samsung Ativ 500T, and maybe an >> Asus VivoTab (but >> only the Asus if you can get the pen with it on the same >> order). The >> "triple threat" input devices (mouse/pen/touch) will >> cover a lot of bases. >> >> >> However, we should first decide how we want to >> process Pen events. They >> >> are not regular mouse events, nor are they similar >> to regular touch >> events >> (though they have a lot in common with the latter). >> E.g. suppose you can >> control your Surface Pro with a finger using its >> touch screen. These are >> touch events. Now, you could also connect a USB >> mouse to this device, and >> that would have to generate regular mouse events. >> Additionally, you could >> connect a graphic tablet such as a Wacom Bamboo for >> example, and this >> device would have to generate some special Pen >> events, right? >> >> As far as I can tell pen evens are just the same >> as mouse events unless >> >> you >> use microsofts "Ink" APIs to insert "Ink" into your >> application. So >> unless >> JavaFX adds support for digital ink, there is vey little >> difference. The >> only one that comes to mind is pressure sensitivity, and >> the minority of >> windows pen screens or pads support pressure sensitivity. >> >> >> >> Should we introduce a new kind of events for Pen >> events in FX? Or does it >> >> make sense to use touch events for this purpose? How >> would we distinguish >> between finger- and pen- based input events in the >> above scenario then? >> >> Behavior is a big difference in pen vs touch. >> Tap and drag for touch >> >> gets interpreted as a scroll pan, while tap and drag for >> a pen >> gets interpreted as a mouse click and drag, for example >> selecting text. >> >> Pen events don't generate touch gestures like the touch >> screens do. >> Unless >> you count the "flicks" api in microsoft land which just >> generates events >> at >> the windows level for stuff like delete, cut, copy, >> paste, etc. Much like >> the multimedia keyboard. >> >> A new boolean field could be added isPen could be added >> on the mouseEvent, >> or a new enum property at InputEvent called Input >> Device, that would >> enumerate if it was mouse, touch, pen, keyboard, or >> whatever standard >> input >> devies show up in the future. These enums could then be >> loaded with all >> sorts of interesting queries in case a user wants to >> write their app in a >> future proof way, such as are drag events principally >> pan-scrolling, is >> the >> gesture device direct/indirect. Maybe not an enum, but >> a separate HCI >> object rather than pushing the random flags into the >> event system. >> >> >> What other options do we have? >> >> >> >> Keeping pen input second class is fine I think, >> as long as it is >> >> consistent >> with the differences between touch and mouse in non-ink >> areas. If we have >> to confuse them with one type or the other, confuse them >> with mouse events >> because they are closer to mouse events then touch >> events. There are more >> important areas for JavaFX to go to before it goes down >> the digital ink >> path. >> >> >> -- >> >> best regards, >> Anthony >> >> >> >> From pavel.safrata at oracle.com Mon Jun 3 08:03:18 2013 From: pavel.safrata at oracle.com (Pavel Safrata) Date: Mon, 03 Jun 2013 17:03:18 +0200 Subject: JavaFX graphics performance and suitability for advanced animations (BrickBreaker) In-Reply-To: References: <003f01ce593f$d5f63fe0$81e2bfa0$@ozemail.com.au> <004501ce5d35$10f36700$32da3500$@ozemail.com.au> <574CC6CC-7C23-4A0E-B949-21446CD2E5B0@oracle.com> <6866B12C-F505-4CA1-A4FC-CEB5950FD52C@oracle.com> <51A8BFE9.4010806@oracle.com> <51AC8450.8010706@oracle.com> Message-ID: <51ACB036.10904@oracle.com> As I see it, our animation API can be viewed as four levels: - simple transitions - custom transitions - timelines - AnimationTimer If you know how an object will move, you should be fine with the upper two. If you want to react on user actions you can still adjust the transitions in input event handlers (to change directions), you can also have property listeners that will be called every time the transition updates the property which is every frame. The benefit of the transitions is that they compute the time-based interpolation for you and you don't need to do that manually (avoiding the mentioned issue with the patch). If there is something complicated that needs to be done in each frame and the above is not enough, then yes, AnimationTimer may be the right way. I agree this may be the case for many video games, but I don't think it justifies for using the low-level API where it is not necessary. If this demo is about "how to write brick breaker", then diving right to the deepest API level is not really educative. If it is about "how to write a typical video game", then I think we should rather produce a typical ShootEmUp game where this API usage would fit more naturally. I realize it is easy to say but hard to find time for it.. With regards to the pulses - pulse is a sync from scenegraph to render tree - it tells to the render tree how the current scenegraph looks like and render tree then keeps displaying that state until the next pulse. Scenegraph also does some updates during the pulse (yes, layouts fall into this category). By default on desktop the pulses have an upper limit of 60fps (means 60 pulses per second), without any connection to actual display refresh rate. I think (and I'm not certain here) that the pulse requests are there only to make sure the next pulse is scheduled (we don't schedule pulses if nothing changes). Pavel On 3.6.2013 15:30, Scott Palmer wrote: > In this particular example you may be right. The trajectory of the > ball can be pre-computed for at least the entire length of the > straight line that it will travel in. You could go a couple bounces > ahead even, to the point where the ball would get back to the bottom. > However, that is definitely not the typical case for a video game. > Per-frame or per-update computations are the norm for video games. > Change the game style to a shoot'em up where every frame you need to > determine collisions, the direction of the player or enemy may change > etc, and it actually isn't any simpler trying to use a pre-computed > timeline. The calculation of such a timeline would be more work. I > think in the general case for a video game, AnimationTimer is more > likely to apply than other techniques. It fits the basic pattern > commonly used and therefore makes better sample code. There is a > small problem with Richard's patch though... > > I would like to know a little more about the relation of the "pulse" > to the refresh rate. I know that there are places in JavaFX where a > "pulse" is requested or maybe forced. Presumably to trigger > calculations related to general scene graph layout issues. (I find > often that the layout of the scene is wrong actually - that is when I > do actions that force a refresh I will see the layout adjust to a > state where it clearly should have been in the first place.) > One would think that in general one pulse per display refresh would be > the minimum though. Anything less means the animation will not be > smooth, anything more shouldn't cause problems. The key is that the > "now" time is used to update any time-based values. I think Richard's > patch to BrickBreaker is actually incorrect in this regard, as I don't > see the actual time passed being used in the calculations. > > > Scott > > On Mon, Jun 3, 2013 at 7:56 AM, Pavel Safrata > > wrote: > > Hello, > I'm a bit behind with this thread but I want to make a few > comments on AnimationTimer as there is a hidden message in the > discussion that AnimationTimer is the way to go. > > First, AnimationTimer is called in each pulse, which doesn't have > much in common with display refresh rate (if I understand the term > correctly). More importantly, AnimationTimer is kind of extreme > low-level animation API that should not be needed in vast majority > of cases. I think a better way to code BrickBraker would be to use > a single TranslateTransition for the entire straight part of the > ball's trajectory; it would automatically compute the > interpolation and sync the position on every pulse, which should > have the same result as doing everything manually with the > AnimationTimer (but expressed in simpler code). > > Regards, > Pavel > > On 31.5.2013 22:45, Richard Bair wrote: > > I pushed the fix to graphics. Thanks Scott for tracking that > down! It looks 10x better. > > Richard > > On May 31, 2013, at 9:25 AM, Richard Bair > > wrote: > > Patch attached to > https://javafx-jira.kenai.com/browse/RT-29801. I'm not > seeing any stutter on my Mac, interested to hear the > experience on Windows. > > Richard > > On May 31, 2013, at 8:44 AM, Richard Bair > > > wrote: > > Ya I did the same, am now adjusting it so the factor > by which things move is better. > > Richard > > On May 31, 2013, at 8:32 AM, Scott Palmer > > wrote: > > Richard, I suspect you made a typo. I think you > mean "*40*ms is a really odd number..." (it was 25 > FPS, not 25ms) > > I quickly hacked it to use AnimationTimer and the > animation is very smooth now. Though I didn't > make the required changes to adjust the speeds > based on the refresh rate. The quick conversion > to AnimationTimer is trivial.. but going through > and adjusting all the translations and increments > to be relative to the time between consecutive > frames is something I don't have time for. > > Cheers, > > Scott > > > Scott > > > On Fri, May 31, 2013 at 11:21 AM, Kevin Rushforth > > wrote: > Btw, there is a JIRA issue filed against > BrickBreaker specifically: > https://javafx-jira.kenai.com/browse/RT-29801 > > > Richard Bair wrote: > > Have you tried to determine what the FPS is? > My guess is that FPS is not anywhere near the > limit and it is the occasional stutter that is > the problem, but I'm not certain. Knowing that > helps to point in which direction to go. The > fact that it runs pretty well on a PI is > indication that it isn't the framerate. > > Richard > > On May 31, 2013, at 4:26 AM, Scott Palmer > > wrote: > > > Speaking of poor animation in Ensemble... > > Is anyone able to run Brick Breaker > without choppy animation or poor framerate > performance on the ball? > > Now, I suspect the issue there is in the > balls animation implementation in the > application rather than the JavaFX > framework, as the bat moves smoothly when > I move the mouse, but the overall > perception of JavaFX performance for this > demo app is not good. I would go so far as > to say that Brick Breaker has had the > opposite effect it was intended too - > simply because the animation of the ball > is not smooth. That's something that > would run smoothly on a Commodore 64,yet > the last time I tried it (5 minutes ago) > with JavaFX 8.0-b91 on a quad-core 3GHz > Windows 7 box with a decent NVIDIA card, > it didn't run as smoothly as I would > expect. Just a single ball with a shadow > bouncing around the screen seemed to have > a low framerate and the occasional skipped > frame. It just didn't look that great. > > The fact that Brick Breaker ships as a > sample app from Oracle and it's animation > looks bad is harming JavaFX's reputation > in my opinion. I think it could run much > better on the existing JavaFX runtime. > The simple animations in the Ensemble app > run much smoother for example. > > > > Scott > > > On Thu, May 30, 2013 at 11:11 AM, Richard > Bair > wrote: > > > Then you mention Halo 5. I have to > say the subtext here troubles me > greatly. If I read you correctly then > you are saying that JavaFX is not > really suitable for games (at least > anything beyond the demands of something > like Solitaire). As someone else > pointed out, what is point of developing > 3D support in JavaFX if it is not > really suitable for games? To say it is > not suitable for games implies that it > is not really suitable for *any* > application that requires performant > animations and visualisations. What > use then is the 3D API? > > That's not fair at all. There are a *lot* > of enterprise use cases for 3D, and we get > these requests all the time. Whether we're > taking about 3D visualizations for medical > or engineering applications or consumer > applications (product display, etc), there > is a requirement for 3D that are broader > than real time first person shooters. > > Game engines often have very specialized > scene graphs (sometimes several of them) > as well as very specialized tricks for > getting the most out of their graphics > cards. When we expose API that allows > people to hammer the card directly, then > it would be possible for somebody to build > some of the UI in FX and let their game > engine be hand written (in Unity or JOGL > or whatever). > > > > However, I am not sure that having me > preparing "reproducible" test cases > will actually help. In my experience, > the Ensemble app already serves this > purpose. The choppiness I describe is > *always* prevalent when I run the > animations and transitions in Ensemble > (including Ensemble 8). The only > variation is in the degree of that > choppiness. > > Then start with that, something absolutely > dead simple like a path animation or > rotate transition and lets figure out how > to measure the jitter and get it into our > benchmark suite. > > Richard > > > > From swpalmer at gmail.com Mon Jun 3 09:02:28 2013 From: swpalmer at gmail.com (Scott Palmer) Date: Mon, 3 Jun 2013 12:02:28 -0400 Subject: JavaFX graphics performance and suitability for advanced animations (BrickBreaker) In-Reply-To: <51ACB036.10904@oracle.com> References: <003f01ce593f$d5f63fe0$81e2bfa0$@ozemail.com.au> <004501ce5d35$10f36700$32da3500$@ozemail.com.au> <574CC6CC-7C23-4A0E-B949-21446CD2E5B0@oracle.com> <6866B12C-F505-4CA1-A4FC-CEB5950FD52C@oracle.com> <51A8BFE9.4010806@oracle.com> <51AC8450.8010706@oracle.com> <51ACB036.10904@oracle.com> Message-ID: Okay, yes, I generally agree. I would have to take a crack at coding the Brick Breaker sample with Transition and Timelines to fully appreciate it. Adjusting a transition on-the-fly might make sense, but there are limitations. E.g. the Transition's duration is fixed, is it not? Brick Breaker is too simple to really benefit from going as low as AnimationTimer, so as far as "how to write Brick Breaker" goes you're right. I guess I'm coming at it from the angle of coding a generalized game loop.. but JavaFX actually can do a lot of the work for you that you would typically put in such a game loop. So I see your point. It would be a good idea to reduce Brick Breaker to a simpler form when someone has the time, as showing how little you have to code is yet another benefit to using JavaFX. Then it would be appropriate to come up with an example more suitable for AnimationTimer. Cheers, Scott On Mon, Jun 3, 2013 at 11:03 AM, Pavel Safrata wrote: > As I see it, our animation API can be viewed as four levels: > - simple transitions > - custom transitions > - timelines > - AnimationTimer > > If you know how an object will move, you should be fine with the upper > two. If you want to react on user actions you can still adjust the > transitions in input event handlers (to change directions), you can also > have property listeners that will be called every time the transition > updates the property which is every frame. The benefit of the transitions > is that they compute the time-based interpolation for you and you don't > need to do that manually (avoiding the mentioned issue with the patch). If > there is something complicated that needs to be done in each frame and the > above is not enough, then yes, AnimationTimer may be the right way. I agree > this may be the case for many video games, but I don't think it justifies > for using the low-level API where it is not necessary. If this demo is > about "how to write brick breaker", then diving right to the deepest API > level is not really educative. If it is about "how to write a typical video > game", then I think we should rather produce a typical ShootEmUp game where > this API usage would fit more naturally. I realize it is easy to say but > hard to find time for it.. > > With regards to the pulses - pulse is a sync from scenegraph to render > tree - it tells to the render tree how the current scenegraph looks like > and render tree then keeps displaying that state until the next pulse. > Scenegraph also does some updates during the pulse (yes, layouts fall into > this category). By default on desktop the pulses have an upper limit of > 60fps (means 60 pulses per second), without any connection to actual > display refresh rate. I think (and I'm not certain here) that the pulse > requests are there only to make sure the next pulse is scheduled (we don't > schedule pulses if nothing changes). > > Pavel > > > On 3.6.2013 15:30, Scott Palmer wrote: > > In this particular example you may be right. The trajectory of the ball > can be pre-computed for at least the entire length of the straight line > that it will travel in. You could go a couple bounces ahead even, to the > point where the ball would get back to the bottom. However, that is > definitely not the typical case for a video game. Per-frame or per-update > computations are the norm for video games. Change the game style to a > shoot'em up where every frame you need to determine collisions, the > direction of the player or enemy may change etc, and it actually isn't any > simpler trying to use a pre-computed timeline. The calculation of such a > timeline would be more work. I think in the general case for a video game, > AnimationTimer is more likely to apply than other techniques. It fits the > basic pattern commonly used and therefore makes better sample code. There > is a small problem with Richard's patch though... > > I would like to know a little more about the relation of the "pulse" to > the refresh rate. I know that there are places in JavaFX where a "pulse" > is requested or maybe forced. Presumably to trigger calculations related > to general scene graph layout issues. (I find often that the layout of the > scene is wrong actually - that is when I do actions that force a refresh I > will see the layout adjust to a state where it clearly should have been in > the first place.) > One would think that in general one pulse per display refresh would be > the minimum though. Anything less means the animation will not be smooth, > anything more shouldn't cause problems. The key is that the "now" time is > used to update any time-based values. I think Richard's patch to > BrickBreaker is actually incorrect in this regard, as I don't see the > actual time passed being used in the calculations. > > > Scott > > On Mon, Jun 3, 2013 at 7:56 AM, Pavel Safrata wrote: > >> Hello, >> I'm a bit behind with this thread but I want to make a few comments on >> AnimationTimer as there is a hidden message in the discussion that >> AnimationTimer is the way to go. >> >> First, AnimationTimer is called in each pulse, which doesn't have much in >> common with display refresh rate (if I understand the term correctly). More >> importantly, AnimationTimer is kind of extreme low-level animation API that >> should not be needed in vast majority of cases. I think a better way to >> code BrickBraker would be to use a single TranslateTransition for the >> entire straight part of the ball's trajectory; it would automatically >> compute the interpolation and sync the position on every pulse, which >> should have the same result as doing everything manually with the >> AnimationTimer (but expressed in simpler code). >> >> Regards, >> Pavel >> >> On 31.5.2013 22:45, Richard Bair wrote: >> >>> I pushed the fix to graphics. Thanks Scott for tracking that down! It >>> looks 10x better. >>> >>> Richard >>> >>> On May 31, 2013, at 9:25 AM, Richard Bair >>> wrote: >>> >>> Patch attached to https://javafx-jira.kenai.com/browse/RT-29801. I'm >>>> not seeing any stutter on my Mac, interested to hear the experience on >>>> Windows. >>>> >>>> Richard >>>> >>>> On May 31, 2013, at 8:44 AM, Richard Bair >>>> wrote: >>>> >>>> Ya I did the same, am now adjusting it so the factor by which things >>>>> move is better. >>>>> >>>>> Richard >>>>> >>>>> On May 31, 2013, at 8:32 AM, Scott Palmer wrote: >>>>> >>>>> Richard, I suspect you made a typo. I think you mean "*40*ms is a >>>>>> really odd number..." (it was 25 FPS, not 25ms) >>>>>> >>>>>> I quickly hacked it to use AnimationTimer and the animation is very >>>>>> smooth now. Though I didn't make the required changes to adjust the speeds >>>>>> based on the refresh rate. The quick conversion to AnimationTimer is >>>>>> trivial.. but going through and adjusting all the translations and >>>>>> increments to be relative to the time between consecutive frames is >>>>>> something I don't have time for. >>>>>> >>>>>> Cheers, >>>>>> >>>>>> Scott >>>>>> >>>>>> >>>>>> Scott >>>>>> >>>>>> >>>>>> On Fri, May 31, 2013 at 11:21 AM, Kevin Rushforth < >>>>>> kevin.rushforth at oracle.com> wrote: >>>>>> Btw, there is a JIRA issue filed against BrickBreaker specifically: >>>>>> https://javafx-jira.kenai.com/browse/RT-29801 >>>>>> >>>>>> >>>>>> Richard Bair wrote: >>>>>> >>>>>>> Have you tried to determine what the FPS is? My guess is that FPS is >>>>>>> not anywhere near the limit and it is the occasional stutter that is the >>>>>>> problem, but I'm not certain. Knowing that helps to point in which >>>>>>> direction to go. The fact that it runs pretty well on a PI is indication >>>>>>> that it isn't the framerate. >>>>>>> >>>>>>> Richard >>>>>>> >>>>>>> On May 31, 2013, at 4:26 AM, Scott Palmer >>>>>>> wrote: >>>>>>> >>>>>>> >>>>>>> Speaking of poor animation in Ensemble... >>>>>>>> >>>>>>>> Is anyone able to run Brick Breaker without choppy animation or >>>>>>>> poor framerate performance on the ball? >>>>>>>> >>>>>>>> Now, I suspect the issue there is in the balls animation >>>>>>>> implementation in the application rather than the JavaFX framework, as the >>>>>>>> bat moves smoothly when I move the mouse, but the overall perception of >>>>>>>> JavaFX performance for this demo app is not good. I would go so far as to >>>>>>>> say that Brick Breaker has had the opposite effect it was intended too - >>>>>>>> simply because the animation of the ball is not smooth. That's something >>>>>>>> that would run smoothly on a Commodore 64,yet the last time I tried it (5 >>>>>>>> minutes ago) with JavaFX 8.0-b91 on a quad-core 3GHz Windows 7 box with a >>>>>>>> decent NVIDIA card, it didn't run as smoothly as I would expect. Just a >>>>>>>> single ball with a shadow bouncing around the screen seemed to have a low >>>>>>>> framerate and the occasional skipped frame. It just didn't look that great. >>>>>>>> >>>>>>>> The fact that Brick Breaker ships as a sample app from Oracle and >>>>>>>> it's animation looks bad is harming JavaFX's reputation in my opinion. I >>>>>>>> think it could run much better on the existing JavaFX runtime. The simple >>>>>>>> animations in the Ensemble app run much smoother for example. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> Scott >>>>>>>> >>>>>>>> >>>>>>>> On Thu, May 30, 2013 at 11:11 AM, Richard Bair < >>>>>>>> richard.bair at oracle.com> wrote: >>>>>>>> >>>>>>>> >>>>>>>> Then you mention Halo 5. I have to say the subtext here troubles >>>>>>>>> me >>>>>>>>> greatly. If I read you correctly then you are saying that JavaFX >>>>>>>>> is not >>>>>>>>> really suitable for games (at least anything beyond the demands of >>>>>>>>> something >>>>>>>>> like Solitaire). As someone else pointed out, what is point of >>>>>>>>> developing >>>>>>>>> 3D support in JavaFX if it is not really suitable for games? To >>>>>>>>> say it is >>>>>>>>> not suitable for games implies that it is not really suitable for >>>>>>>>> *any* >>>>>>>>> application that requires performant animations and >>>>>>>>> visualisations. What >>>>>>>>> use then is the 3D API? >>>>>>>>> >>>>>>>>> That's not fair at all. There are a *lot* of enterprise use cases >>>>>>>> for 3D, and we get these requests all the time. Whether we're taking about >>>>>>>> 3D visualizations for medical or engineering applications or consumer >>>>>>>> applications (product display, etc), there is a requirement for 3D that are >>>>>>>> broader than real time first person shooters. >>>>>>>> >>>>>>>> Game engines often have very specialized scene graphs (sometimes >>>>>>>> several of them) as well as very specialized tricks for getting the most >>>>>>>> out of their graphics cards. When we expose API that allows people to >>>>>>>> hammer the card directly, then it would be possible for somebody to build >>>>>>>> some of the UI in FX and let their game engine be hand written (in Unity or >>>>>>>> JOGL or whatever). >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> However, I am not sure that having me preparing "reproducible" >>>>>>>>> test cases >>>>>>>>> will actually help. In my experience, the Ensemble app already >>>>>>>>> serves this >>>>>>>>> purpose. The choppiness I describe is *always* prevalent when I >>>>>>>>> run the >>>>>>>>> animations and transitions in Ensemble (including Ensemble 8). >>>>>>>>> The only >>>>>>>>> variation is in the degree of that choppiness. >>>>>>>>> >>>>>>>>> Then start with that, something absolutely dead simple like a >>>>>>>> path animation or rotate transition and lets figure out how to measure the >>>>>>>> jitter and get it into our benchmark suite. >>>>>>>> >>>>>>>> Richard >>>>>>>> >>>>>>>> >>>>>>>> >> > > From hjohn at xs4all.nl Mon Jun 3 09:04:56 2013 From: hjohn at xs4all.nl (John Hendrikx) Date: Mon, 03 Jun 2013 18:04:56 +0200 Subject: System.err printSummary (D3D Vram Pool) lines Message-ID: <51ACBEA8.4020605@xs4all.nl> Hi List, In b90 and b92 I'm getting these kinds of prints (often continously) when I'm using my application, and I'm not sure if I'm supposed to report them: @com.sun.prism.impl.ManagedResource.printSummary(ManagedResource.java:134) D3D Vram Pool: 96,767,731 used (36.0%), 96,767,731 managed (36.0%), 268,435,456 total 54 total resources being managed 4 permanent resources (7.4%) 2 resources locked (3.7%) 18 resources contain interesting data (33.3%) 1 resources disappeared (1.9%) They are fairly easy to reproduce -- it usually involves scrolling through a list that updates a lot of images/texts being dynamically loaded. I sometimes get partial blackouts of the Scene as well (Nodes not rendering, or nodes being obscured by a big black box). This last one has been happening for ages already (since JavaFX 2.2 atleast) so that's nothing new. --John From kevin.rushforth at oracle.com Mon Jun 3 09:24:38 2013 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Mon, 03 Jun 2013 09:24:38 -0700 Subject: System.err printSummary (D3D Vram Pool) lines In-Reply-To: <51ACBEA8.4020605@xs4all.nl> References: <51ACBEA8.4020605@xs4all.nl> Message-ID: <51ACC346.2090806@oracle.com> Yes, please do report these. They are effectively assertions indicating that something has gone wrong with the texture management code. Some have been fixed recently, but probably not all of them. -- Kevin John Hendrikx wrote: > Hi List, > > In b90 and b92 I'm getting these kinds of prints (often continously) > when I'm using my application, and I'm not sure if I'm supposed to > report them: > > @com.sun.prism.impl.ManagedResource.printSummary(ManagedResource.java:134) > > > D3D Vram Pool: 96,767,731 used (36.0%), 96,767,731 managed (36.0%), > 268,435,456 total > 54 total resources being managed > 4 permanent resources (7.4%) > 2 resources locked (3.7%) > 18 resources contain interesting data (33.3%) > 1 resources disappeared (1.9%) > > They are fairly easy to reproduce -- it usually involves scrolling > through a list that updates a lot of images/texts being dynamically > loaded. I sometimes get partial blackouts of the Scene as well (Nodes > not rendering, or nodes being obscured by a big black box). This last > one has been happening for ages already (since JavaFX 2.2 atleast) so > that's nothing new. > > --John > > > From richard.bair at oracle.com Mon Jun 3 10:06:05 2013 From: richard.bair at oracle.com (Richard Bair) Date: Mon, 3 Jun 2013 10:06:05 -0700 Subject: TextField Document model In-Reply-To: <28959B7C-18E3-444E-91CF-BEF3F2ED652D@oracle.com> References: <507ef547.41c5ec0a.2e1f.7e39@mx.google.com> <71937D8F-E326-455D-9E24-669F4D223AFB@oracle.com> <0CFE919A-7CA9-4B24-8527-E42B2B6D7C1E@oracle.com> <50836C4C.6050407@oracle.com> <50854843.3000602@oracle.com> <7393107B-49B2-4E80-A94B-CB995EAADE27@oracle.com> <94AAF79B-01B5-442C-9270-D9705DB6454D@oracle.com> <28959B7C-18E3-444E-91CF-BEF3F2ED652D@oracle.com> Message-ID: <73357497-A534-485F-9C14-C7FF9090122F@oracle.com> I've filed https://javafx-jira.kenai.com/browse/RT-30881 and hoping to get this resolved for 8. Richard On Dec 4, 2012, at 8:23 AM, Richard Bair wrote: > Hi Mark, > > Sorry for being slow -- you will at least be glad to know you are in such auspicious company as Jonathan Giles, who has to regularly bribe (or threaten) me to get timely responses :-) > > On first read, this seems very nice. The Filter interface is a single-abstract-method interface, so it will play perfectly well with Lambda's. It can be reused among multiple controls and types of text input controls which seems ideal. It seems to plug into the pipeline quite naturally. > > One question is, should the filter start off as null and have an additional filter (newlines and such) always applied, or should it start out as non-null where the built in filter handles newlines (and such) and new filters also will have to either wrap the existing filter or add support for newlines (and such!) or not as necessary? The safest thing for an implementor would be to delegate in case we change the built-in behavior. > > The next step would be to create a diff and attach it to the JIRA issue (and make sure you have signed the Oracle Contributor Agreement (OCA)). I think we can then integrate the patch and start the discussion around formatted text field. Jonathan, what do you think? Have you had a chance to review? > > Thanks > Richard > > On Nov 26, 2012, at 7:44 PM, Mark Claassen wrote: > >> I sent a potential API change to Richard Bair a few weeks ago. He has not >> responded to me, which makes me think it was too complicated at this point >> and wasn't going to fly. I think for a good InputMaskField, the Content >> and the eventual caret position and selection needs to be controlled by the >> "model". This makes the solution a bit complex. >> >> However, for filtering, this is not the case. Doing both of these in one >> shot is, perhaps, a mistake. Here is another idea which takes care of the >> easy cases...easily. A more complex InputMask control I will save for >> later. >> >> So, here is the simplified idea: Add the ability to "filter". And by >> filter, I mean the ability to modify the input and only the input: >> >> Add the following sub-interface to the Content interface. No methods are >> added to the Content interface. >> interface Filter { >> String filter(int index, String text, String currentContent); >> } >> >> Add the following to TextFieldContent and TextAreaContent: >> private Content.Filter filter; >> public void setContentFilter(Content.Filter filter) { >> this.filter = filter; >> } >> >> Change the "insert" method of TextFieldContent and TextAreaContent to start >> with: >> @Override public void insert(int index, String text, boolean >> notifyListeners) { >> text = TextInputControl.filterInput(text, [boolean], [boolean]); >> if (filter != null) >> text = filter.filter(index, text, get()); >> >> Add a method in TextField: >> public void setContentFilter(Content.Filter filter) { >> ((TextFieldContent)getContent()).setContentFilter(filter); >> } >> >> Add a method in TextArea: >> public void setContentFilter(Content.Filter filter) { >> ((TextAreaContent)getContent()).setContentFilter(filter); >> } >> >> This would do a few things: >> 1) Use the current "TextInputControl.filterInput" mechanisms of TextField >> and TextArea (like to strip out special chars and newlines). >> 2) By specifying the Filter interface outside of TextField and TextArea, it >> allows the same filter to be used for TextField and TextArea >> 3) Makes it simple to do things like translate all input to upper case or >> limit the overall length >> 4) By not adding a method to Content directly, something like the >> InputMaskContent would not be forced to deal with the Filter interface at >> all. >> >> This implementation would allow someone creating a filter to "filter" the >> text to have illegal characters. I thought it was more validate this >> first, so that the implementer would only have to deal with proper input. >> However, TextInputControl.filterInput could be done both before and after >> the Filter.filter() call. >> text = TextInputControl.filterInput(text, [boolean], [boolean]); >> if (filter != null) { >> text = filter.filter(index, text, get()); >> text = TextInputControl.filterInput(text, [boolean], >> [boolean]); >> } >> >> Another possible addition to this may be to allow the filter to return >> null, signifying an error input and causing the system to "beep". >> >> Thanks for your consideration, >> Mark > From lehmann at media-interactive.de Mon Jun 3 10:44:17 2013 From: lehmann at media-interactive.de (Werner Lehmann) Date: Mon, 3 Jun 2013 19:44:17 +0200 Subject: ScrollPane.prefViewportWidth == computed size? Message-ID: <51ACD5F1.6080307@media-interactive.de> Hi, I am trying to show a ScrollPane resized so that the full width of its content is visible: no horizontal scrolling, no clipping, no content resizing. Only vertical scrolling if necessary. Seems as if prefViewportWidth should do the trick. Since I don't want to hardcode some width I am binding it to the prefWidth of the scrollpane content. Problem: this works only if the content prefWidth is set explicitly. If it is -1, prefViewportWidth is also -1 (because it is bound) and that computes a value too small to fit the (computed) prefWidth of the content, leading to a horizontal scrollbar. Is this a bug, or am I supposed to do this differently? Here is a test case. It only works if vb.prefWidth is set explicitly at the end. Which of course is not a dynamic value... public class PrefViewportTest extends Application { public static void main(String[] args) { Application.launch(args); } @Override public void start(Stage primaryStage) throws Exception { // Scene -> HBox -> ScrollPane -> VBox -> Label Label l = new Label("some boring not too short text"); VBox vb = new VBox(); vb.getChildren().add(l); ScrollPane sp = new ScrollPane(); sp.setContent(vb); sp.prefViewportWidthProperty().bind(vb.prefWidthProperty()); HBox hb = new HBox(); hb.getChildren().add(sp); primaryStage.setScene(new Scene(hb, 300, 200)); primaryStage.show(); System.out.println("before: " + vb.getPrefWidth()); // prints -1.0 vb.setPrefWidth(vb.prefWidth(-1)); System.out.println("after: " + vb.getPrefWidth()); // prints 164.0 } } Rgds Werner From felipe.heidrich at oracle.com Mon Jun 3 11:07:04 2013 From: felipe.heidrich at oracle.com (Felipe Heidrich) Date: Mon, 3 Jun 2013 11:07:04 -0700 Subject: API review "RT-30861: Add simple Font factory method for a default font of a different size" Message-ID: <47EAA6CD-127E-45D9-BEE3-2E788C2B75A2@oracle.com> Moving API discussion to the mailing: Proposal: Add: Font#font(float) - creates new font using default font family name and given font size Font#font(String) - creates new font using given font family and default font size Comments: Phil Wrote > I keep having to type this: > text.setFont(Font.font(Font.getDefault().getFamily(), 81)); >I would prefer just: > text.setFont(Font.font(81)); >which would use the default font. I think that last line was meant to be "default font family". All the font(..) factory methods are family based and we should keep it that way. So the new API Font.font(-81) as specified and implemented here is using the default family but its not necessarily getting the same style as the default font. Nor would it inherit any other (theoretical) attributes of the default font. In practice it'll all work out the same until the day that some platform has a bold default font or has something else different about the default font that can't be communicated solely through family. So some day we also need to add Font.deriveFont(..). Felipe wrote: Right, the problem you pointed out would be better solved using the derive pattern: Font.getDefault().deriveFont(newSize); That said, the two new methods don't exclude the option of adding derive in the future. They are consistent with the javadoc, other factory methods, and probably good enough to make Richard happy for now. Anyway, I will let him be the judge for that. Personally I would go with the 2 new methods for now and worried about derive in the future (at which time we can consider the implication of different style options such as stretch and advance typographic features). Felipe From david.grieve at oracle.com Mon Jun 3 11:26:32 2013 From: david.grieve at oracle.com (David Grieve) Date: Mon, 3 Jun 2013 11:26:32 -0700 (PDT) Subject: API review "RT-30861: Add simple Font factory method for a default font of a different size" In-Reply-To: <47EAA6CD-127E-45D9-BEE3-2E788C2B75A2@oracle.com> References: <47EAA6CD-127E-45D9-BEE3-2E788C2B75A2@oracle.com> Message-ID: I would rather see the deriveFont methods, but not as factory methods. public Font deriveFont(double size) public Font deriveFont(String family) The subtle difference being that these wouldn't use "default" sizes or family names but would use whatever the font is to find the closest matching font. If there isn't a close match, then the same font would be returned. e.g., text.setFont(Font.getDefault().deriveFont(18)); and Font myFont = new Font("Verdana", 18); text.setFont(myFont.deriveFont("Comic Sans MS"); On Jun 3, 2013, at 2:07 PM, Felipe Heidrich wrote: > Moving API discussion to the mailing: > > Proposal: > Add: > Font#font(float) - creates new font using default font family name and given font size > Font#font(String) - creates new font using given font family and default font size > > > Comments: > Phil Wrote >> I keep having to type this: >> text.setFont(Font.font(Font.getDefault().getFamily(), 81)); >> I would prefer just: >> text.setFont(Font.font(81)); >> which would use the default font. > > I think that last line was meant to be "default font family". > All the font(..) factory methods are family based and we should > keep it that way. > So the new API Font.font(-81) as specified and implemented here > is using the default family but its not necessarily getting the same > style as the default font. Nor would it inherit any other (theoretical) > attributes of the default font. In practice it'll all work out > the same until the day that some platform has a bold default font > or has something else different about the default font that can't > be communicated solely through family. > So some day we also need to add Font.deriveFont(..). > > Felipe wrote: > Right, the problem you pointed out would be better solved using the derive pattern: > > Font.getDefault().deriveFont(newSize); > > That said, the two new methods don't exclude the option of adding derive in the future. > They are consistent with the javadoc, other factory methods, and probably good enough to make Richard happy for now. > > Anyway, I will let him be the judge for that. > > Personally I would go with the 2 new methods for now and worried about derive in the future (at which time we can consider the implication of different style options such as stretch and advance typographic features). > > > > Felipe > From Richard.Bair at oracle.com Mon Jun 3 11:40:55 2013 From: Richard.Bair at oracle.com (Richard Bair) Date: Mon, 3 Jun 2013 11:40:55 -0700 Subject: API review "RT-30861: Add simple Font factory method for a default font of a different size" In-Reply-To: References: <47EAA6CD-127E-45D9-BEE3-2E788C2B75A2@oracle.com> Message-ID: <10804056-B8BC-4963-B6F1-1D28947EB73A@oracle.com> I agree these would be useful. The reason I filed this particular issue is that whenever I'm writing some code it seems like I'm always reaching for Font.font(size) and when I don't find it there I have to figure out what to pass as the family (it turns out I could have passed null but didn't know it, so I had the longer incantation). Having to always derive is also just an extra level of oomph that in many cases I don't really want to do. Unless Font.font(size) is one day going to be "the wrong thing" and by baking it in I'm creating a new error mode, I'd just add it as it will add no weight and would at least be there when I reach for it. As long as one day it won't be "the wrong thing"? Anyway, if it is going to take more than a few minutes to figure out, best to punt on this rather than soak up Felipe's precious time. Richard On Jun 3, 2013, at 11:26 AM, David Grieve wrote: > I would rather see the deriveFont methods, but not as factory methods. > > public Font deriveFont(double size) > public Font deriveFont(String family) > > The subtle difference being that these wouldn't use "default" sizes or family names but would use whatever the font is to find the closest matching font. If there isn't a close match, then the same font would be returned. > > e.g., > text.setFont(Font.getDefault().deriveFont(18)); > and > Font myFont = new Font("Verdana", 18); > text.setFont(myFont.deriveFont("Comic Sans MS"); > > On Jun 3, 2013, at 2:07 PM, Felipe Heidrich wrote: > >> Moving API discussion to the mailing: >> >> Proposal: >> Add: >> Font#font(float) - creates new font using default font family name and given font size >> Font#font(String) - creates new font using given font family and default font size >> >> >> Comments: >> Phil Wrote >>> I keep having to type this: >>> text.setFont(Font.font(Font.getDefault().getFamily(), 81)); >>> I would prefer just: >>> text.setFont(Font.font(81)); >>> which would use the default font. >> >> I think that last line was meant to be "default font family". >> All the font(..) factory methods are family based and we should >> keep it that way. >> So the new API Font.font(-81) as specified and implemented here >> is using the default family but its not necessarily getting the same >> style as the default font. Nor would it inherit any other (theoretical) >> attributes of the default font. In practice it'll all work out >> the same until the day that some platform has a bold default font >> or has something else different about the default font that can't >> be communicated solely through family. >> So some day we also need to add Font.deriveFont(..). >> >> Felipe wrote: >> Right, the problem you pointed out would be better solved using the derive pattern: >> >> Font.getDefault().deriveFont(newSize); >> >> That said, the two new methods don't exclude the option of adding derive in the future. >> They are consistent with the javadoc, other factory methods, and probably good enough to make Richard happy for now. >> >> Anyway, I will let him be the judge for that. >> >> Personally I would go with the 2 new methods for now and worried about derive in the future (at which time we can consider the implication of different style options such as stretch and advance typographic features). >> >> >> >> Felipe >> > From han.solo at muenster.de Mon Jun 3 11:49:00 2013 From: han.solo at muenster.de (Gerrit Grunwald) Date: Mon, 3 Jun 2013 20:49:00 +0200 Subject: API review "RT-30861: Add simple Font factory method for a default font of a different size" In-Reply-To: References: <47EAA6CD-127E-45D9-BEE3-2E788C2B75A2@oracle.com> Message-ID: <6F0734C0-D7C2-4D83-86C5-CD9A367B2574@muenster.de> +1 Gerrit Am 03.06.2013 um 20:26 schrieb David Grieve : > I would rather see the deriveFont methods, but not as factory methods. > > public Font deriveFont(double size) > public Font deriveFont(String family) > > The subtle difference being that these wouldn't use "default" sizes or family names but would use whatever the font is to find the closest matching font. If there isn't a close match, then the same font would be returned. > > e.g., > text.setFont(Font.getDefault().deriveFont(18)); > and > Font myFont = new Font("Verdana", 18); > text.setFont(myFont.deriveFont("Comic Sans MS"); > > On Jun 3, 2013, at 2:07 PM, Felipe Heidrich wrote: > >> Moving API discussion to the mailing: >> >> Proposal: >> Add: >> Font#font(float) - creates new font using default font family name and given font size >> Font#font(String) - creates new font using given font family and default font size >> >> >> Comments: >> Phil Wrote >>> I keep having to type this: >>> text.setFont(Font.font(Font.getDefault().getFamily(), 81)); >>> I would prefer just: >>> text.setFont(Font.font(81)); >>> which would use the default font. >> >> I think that last line was meant to be "default font family". >> All the font(..) factory methods are family based and we should >> keep it that way. >> So the new API Font.font(-81) as specified and implemented here >> is using the default family but its not necessarily getting the same >> style as the default font. Nor would it inherit any other (theoretical) >> attributes of the default font. In practice it'll all work out >> the same until the day that some platform has a bold default font >> or has something else different about the default font that can't >> be communicated solely through family. >> So some day we also need to add Font.deriveFont(..). >> >> Felipe wrote: >> Right, the problem you pointed out would be better solved using the derive pattern: >> >> Font.getDefault().deriveFont(newSize); >> >> That said, the two new methods don't exclude the option of adding derive in the future. >> They are consistent with the javadoc, other factory methods, and probably good enough to make Richard happy for now. >> >> Anyway, I will let him be the judge for that. >> >> Personally I would go with the 2 new methods for now and worried about derive in the future (at which time we can consider the implication of different style options such as stretch and advance typographic features). >> >> >> >> Felipe > From richard.bair at oracle.com Mon Jun 3 11:57:45 2013 From: richard.bair at oracle.com (Richard Bair) Date: Mon, 3 Jun 2013 11:57:45 -0700 Subject: ScrollPane.prefViewportWidth == computed size? In-Reply-To: <51ACD5F1.6080307@media-interactive.de> References: <51ACD5F1.6080307@media-interactive.de> Message-ID: > Problem: this works only if the content prefWidth is set explicitly. If it is -1, prefViewportWidth is also -1 (because it is bound) and that computes a value too small to fit the (computed) prefWidth of the content, leading to a horizontal scrollbar. Is this a bug I think calling it a bug would be fair, and this approach should work. > or am I supposed to do this differently? Hmmm. I guess fitToWidth doesn't work for you because you want the content to dictate the size of the scroll pane, and not the other way around? Maybe a combination of this and a subclass to work around the issue you are seeing? public class MyScrollPane extends ScrollPane { public MyScrollPane() { setFitToWidth(true); } @Override protected double prefWidth(double height) { Insets insets = getInsets(); return insets.getLeft() + content.prefWidth(height) + insets.getRight()); } } Ok I didn't try compiling that ("content" for sure will break) but this should set the pref width of the scroll pane based on the pref width of the content, and then add in the padding (for whatever kind of border you may have supplied). This might still be wrong because it doesn't take into account the scroll bar width when the vertical scrollbar is shown. Bummer. Or maybe the ScrollPane, when fitToWidth is true, automatically adjusts its pref width to match that of its content? That would seem to be the "right" thing to do in this case, but I don't know that it does (or that it makes sense in all cases?). So it seems to me that there are at least 2 different ways we could go about supporting this specific use case, one seems like a straightforward thing (let -1 have meaning for prefViewportWidth) and one is the result of a perhaps questionable interpretation (fitToWidth=true changes the way we compute the prefWidth of the ScrollPane). Both seem reasonable ways to have tried to use the control and both yield unexpected results it sounds like. Richard From david.grieve at oracle.com Mon Jun 3 12:02:02 2013 From: david.grieve at oracle.com (David Grieve) Date: Mon, 3 Jun 2013 12:02:02 -0700 (PDT) Subject: API review "RT-30861: Add simple Font factory method for a default font of a different size" In-Reply-To: <10804056-B8BC-4963-B6F1-1D28947EB73A@oracle.com> References: <47EAA6CD-127E-45D9-BEE3-2E788C2B75A2@oracle.com> <10804056-B8BC-4963-B6F1-1D28947EB73A@oracle.com> Message-ID: <7C488422-8BF9-4BA1-851C-E2C728184BAE@oracle.com> I must admit I have a hidden agenda which is that these would be very useful for CSS. Especially if there was a deriveFont(FontPosture) and deriveFont(FontWeight). On Jun 3, 2013, at 2:40 PM, Richard Bair wrote: > I agree these would be useful. The reason I filed this particular issue is that whenever I'm writing some code it seems like I'm always reaching for Font.font(size) and when I don't find it there I have to figure out what to pass as the family (it turns out I could have passed null but didn't know it, so I had the longer incantation). Having to always derive is also just an extra level of oomph that in many cases I don't really want to do. > > Unless Font.font(size) is one day going to be "the wrong thing" and by baking it in I'm creating a new error mode, I'd just add it as it will add no weight and would at least be there when I reach for it. As long as one day it won't be "the wrong thing"? > > Anyway, if it is going to take more than a few minutes to figure out, best to punt on this rather than soak up Felipe's precious time. > > Richard > > On Jun 3, 2013, at 11:26 AM, David Grieve wrote: > >> I would rather see the deriveFont methods, but not as factory methods. >> >> public Font deriveFont(double size) >> public Font deriveFont(String family) >> >> The subtle difference being that these wouldn't use "default" sizes or family names but would use whatever the font is to find the closest matching font. If there isn't a close match, then the same font would be returned. >> >> e.g., >> text.setFont(Font.getDefault().deriveFont(18)); >> and >> Font myFont = new Font("Verdana", 18); >> text.setFont(myFont.deriveFont("Comic Sans MS"); >> >> On Jun 3, 2013, at 2:07 PM, Felipe Heidrich wrote: >> >>> Moving API discussion to the mailing: >>> >>> Proposal: >>> Add: >>> Font#font(float) - creates new font using default font family name and given font size >>> Font#font(String) - creates new font using given font family and default font size >>> >>> >>> Comments: >>> Phil Wrote >>>> I keep having to type this: >>>> text.setFont(Font.font(Font.getDefault().getFamily(), 81)); >>>> I would prefer just: >>>> text.setFont(Font.font(81)); >>>> which would use the default font. >>> >>> I think that last line was meant to be "default font family". >>> All the font(..) factory methods are family based and we should >>> keep it that way. >>> So the new API Font.font(-81) as specified and implemented here >>> is using the default family but its not necessarily getting the same >>> style as the default font. Nor would it inherit any other (theoretical) >>> attributes of the default font. In practice it'll all work out >>> the same until the day that some platform has a bold default font >>> or has something else different about the default font that can't >>> be communicated solely through family. >>> So some day we also need to add Font.deriveFont(..). >>> >>> Felipe wrote: >>> Right, the problem you pointed out would be better solved using the derive pattern: >>> >>> Font.getDefault().deriveFont(newSize); >>> >>> That said, the two new methods don't exclude the option of adding derive in the future. >>> They are consistent with the javadoc, other factory methods, and probably good enough to make Richard happy for now. >>> >>> Anyway, I will let him be the judge for that. >>> >>> Personally I would go with the 2 new methods for now and worried about derive in the future (at which time we can consider the implication of different style options such as stretch and advance typographic features). >>> >>> >>> >>> Felipe >>> >> > From philip.race at oracle.com Mon Jun 3 12:11:41 2013 From: philip.race at oracle.com (Phil Race) Date: Mon, 3 Jun 2013 12:11:41 -0700 (PDT) Subject: API review "RT-30861: Add simple Font factory method for a default font of a different size" In-Reply-To: <10804056-B8BC-4963-B6F1-1D28947EB73A@oracle.com> References: <47EAA6CD-127E-45D9-BEE3-2E788C2B75A2@oracle.com> <10804056-B8BC-4963-B6F1-1D28947EB73A@oracle.com> Message-ID: <51ACEA6D.9020608@oracle.com> On 6/3/2013 11:40 AM, Richard Bair wrote: > I agree these would be useful. The reason I filed this particular issue is that whenever I'm writing some code it seems like I'm always reaching for Font.font(size) and when I don't find it there I have to figure out what to pass as the family (it turns out I could have passed null but didn't know it, so I had the longer incantation). Having to always derive is also just an extra level of oomph that in many cases I don't really want to do. deriveFont methods are useful and interesting and eventually required, but came up here only to be sure that wasn't what was being asked for. They are somewhat more work than the simple syntactic sugar of font(20.0) and font("Verdana") > > Unless Font.font(size) is one day going to be "the wrong thing" and by baking it in I'm creating a new error mode, I'd just add it as it will add no weight and would at least be there when I reach for it. As long as one day it won't be "the wrong thing"? It won't be doing the wrong thing per the proposed spec which is clear enough > > Anyway, if it is going to take more than a few minutes to figure out, best to punt on this rather than soak up Felipe's precious time. I think its fine. -phil. > > Richard > > On Jun 3, 2013, at 11:26 AM, David Grieve wrote: > >> I would rather see the deriveFont methods, but not as factory methods. >> >> public Font deriveFont(double size) >> public Font deriveFont(String family) >> >> The subtle difference being that these wouldn't use "default" sizes or family names but would use whatever the font is to find the closest matching font. If there isn't a close match, then the same font would be returned. >> >> e.g., >> text.setFont(Font.getDefault().deriveFont(18)); >> and >> Font myFont = new Font("Verdana", 18); >> text.setFont(myFont.deriveFont("Comic Sans MS"); >> >> On Jun 3, 2013, at 2:07 PM, Felipe Heidrich wrote: >> >>> Moving API discussion to the mailing: >>> >>> Proposal: >>> Add: >>> Font#font(float) - creates new font using default font family name and given font size >>> Font#font(String) - creates new font using given font family and default font size >>> >>> >>> Comments: >>> Phil Wrote >>>> I keep having to type this: >>>> text.setFont(Font.font(Font.getDefault().getFamily(), 81)); >>>> I would prefer just: >>>> text.setFont(Font.font(81)); >>>> which would use the default font. >>> I think that last line was meant to be "default font family". >>> All the font(..) factory methods are family based and we should >>> keep it that way. >>> So the new API Font.font(-81) as specified and implemented here >>> is using the default family but its not necessarily getting the same >>> style as the default font. Nor would it inherit any other (theoretical) >>> attributes of the default font. In practice it'll all work out >>> the same until the day that some platform has a bold default font >>> or has something else different about the default font that can't >>> be communicated solely through family. >>> So some day we also need to add Font.deriveFont(..). >>> >>> Felipe wrote: >>> Right, the problem you pointed out would be better solved using the derive pattern: >>> >>> Font.getDefault().deriveFont(newSize); >>> >>> That said, the two new methods don't exclude the option of adding derive in the future. >>> They are consistent with the javadoc, other factory methods, and probably good enough to make Richard happy for now. >>> >>> Anyway, I will let him be the judge for that. >>> >>> Personally I would go with the 2 new methods for now and worried about derive in the future (at which time we can consider the implication of different style options such as stretch and advance typographic features). >>> >>> >>> >>> Felipe >>> From hang.vo at oracle.com Mon Jun 3 12:19:39 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 03 Jun 2013 19:19:39 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130603192010.8F89048EF5@hg.openjdk.java.net> Changeset: e7c0afb9923f Author: Alexander Kouznetsov Date: 2013-06-03 12:05 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/e7c0afb9923f ObservableArrayTest: Fixed RT-30865 ObservableArrayTest unit test fails ! javafx-beans/test/javafx/collections/ObservableArrayTest.java Changeset: 978d51d9d208 Author: Alexander Kouznetsov Date: 2013-06-03 12:13 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/978d51d9d208 Fixed occasional formatting change in the previous change: ObservableArrayTest: Fixed RT-30865 ObservableArrayTest unit test fails ! javafx-beans/test/javafx/collections/ObservableArrayTest.java From lehmann at media-interactive.de Mon Jun 3 12:28:47 2013 From: lehmann at media-interactive.de (Werner Lehmann) Date: Mon, 3 Jun 2013 21:28:47 +0200 Subject: ScrollPane.prefViewportWidth == computed size? In-Reply-To: References: <51ACD5F1.6080307@media-interactive.de> Message-ID: <51ACEE6F.80506@media-interactive.de> Hi Richard, thanks for the quick reply. FYI, I am currently using a hardcoded value with some extra space, hopefully sufficient for all platforms. On 03.06.2013 20:57, Richard Bair wrote: > I think calling it a bug would be fair, and this approach should work. I'll create a ticket later. > Hmmm. I guess fitToWidth doesn't work for you because you want the > content to dictate the size of the scroll pane, and not the other way > around? Maybe a combination of this and a subclass to work around the > issue you are seeing? Exactly. fitToWidth removes the horizontal scrollbar but abbreviates the label text ("..."). The suggested subclass approach does not work because prefWidth() is final in Control. Is there any event I could listen for to update the prefWidth? I tried "onSceneChange" but that seems to be too early as prefWidth(-1) returns 0.0 then. > Or maybe the ScrollPane, when fitToWidth is true, automatically > adjusts its pref width to match that of its content? That would seem > to be the "right" thing to do in this case, but I don't know that it > does (or that it makes sense in all cases?). ScrollPane.fitToWidth resizes its content (if resizable) to its viewport width. Does nothing if content is not resizable, and does not seem to change ScrollPane.prefWidth. I'd say "fit-to-width" could mean both: "fit content to viewport width" and "fit viewport width to content". The former is already implemented, of course. No horizontal scrollbar in either case. > So it seems to me that there are at least 2 different ways we could > go about supporting this specific use case, one seems like a > straightforward thing (let -1 have meaning for prefViewportWidth) and > one is the result of a perhaps questionable interpretation > (fitToWidth=true changes the way we compute the prefWidth of the > ScrollPane). Both seem reasonable ways to have tried to use the > control and both yield unexpected results it sounds like. The binding was not really obvious to me but eventually I arrived here and it would be nice to have this working. Additional API would make this easier to find but it might be hard to come up with something which makes sense in the API and does not change or conflict with existing API. Werner From zonski at gmail.com Mon Jun 3 13:07:52 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Tue, 4 Jun 2013 06:07:52 +1000 Subject: ScrollPane.prefViewportWidth == computed size? In-Reply-To: <51ACEE6F.80506@media-interactive.de> References: <51ACD5F1.6080307@media-interactive.de> <51ACEE6F.80506@media-interactive.de> Message-ID: <258F51A4-2D15-42F3-9377-B3E0256331EF@gmail.com> A similar, or at least related, issue I created a while back: https://javafx-jira.kenai.com/browse/RT-17988 On 04/06/2013, at 5:28 AM, Werner Lehmann wrote: > Hi Richard, > > thanks for the quick reply. FYI, I am currently using a hardcoded value with some extra space, hopefully sufficient for all platforms. > > On 03.06.2013 20:57, Richard Bair wrote: >> I think calling it a bug would be fair, and this approach should work. > > I'll create a ticket later. > >> Hmmm. I guess fitToWidth doesn't work for you because you want the >> content to dictate the size of the scroll pane, and not the other way >> around? Maybe a combination of this and a subclass to work around the >> issue you are seeing? > > Exactly. fitToWidth removes the horizontal scrollbar but abbreviates the label text ("..."). The suggested subclass approach does not work because prefWidth() is final in Control. Is there any event I could listen for to update the prefWidth? I tried "onSceneChange" but that seems to be too early as prefWidth(-1) returns 0.0 then. > >> Or maybe the ScrollPane, when fitToWidth is true, automatically >> adjusts its pref width to match that of its content? That would seem >> to be the "right" thing to do in this case, but I don't know that it >> does (or that it makes sense in all cases?). > > ScrollPane.fitToWidth resizes its content (if resizable) to its viewport width. Does nothing if content is not resizable, and does not seem to change ScrollPane.prefWidth. I'd say "fit-to-width" could mean both: "fit content to viewport width" and "fit viewport width to content". The former is already implemented, of course. No horizontal scrollbar in either case. > >> So it seems to me that there are at least 2 different ways we could >> go about supporting this specific use case, one seems like a >> straightforward thing (let -1 have meaning for prefViewportWidth) and >> one is the result of a perhaps questionable interpretation >> (fitToWidth=true changes the way we compute the prefWidth of the >> ScrollPane). Both seem reasonable ways to have tried to use the >> control and both yield unexpected results it sounds like. > > The binding was not really obvious to me but eventually I arrived here and it would be nice to have this working. Additional API would make this easier to find but it might be hard to come up with something which makes sense in the API and does not change or conflict with existing API. > > Werner From richard.bair at oracle.com Mon Jun 3 14:11:38 2013 From: richard.bair at oracle.com (Richard Bair) Date: Mon, 3 Jun 2013 14:11:38 -0700 Subject: Performance Tips n' Tricks wiki page Message-ID: Hi, We had a brief meeting this afternoon and kicked off a performance tips n' tricks wiki page, which is presently a dumping ground of ideas that will get massaged into something useful. The content on this wiki will then be used by the docs team to produce some official documentation that goes on the oracle website. https://wiki.openjdk.java.net/display/OpenJFX/Performance+Tips+and+Tricks I pre-loaded it with a chunk of John Smith's email listing a bunch of different performance related ideas, and also stuff we had on an internal document we'd brainstormed up a while ago, plus some ideas we brainstormed up a few minutes ago. Its rough, but if you are interested in taking a look and giving more ideas that occur, I'd appreciate it. Thanks Richard From hang.vo at oracle.com Mon Jun 3 14:43:21 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 03 Jun 2013 21:43:21 +0000 Subject: hg: openjfx/8/graphics/rt: 5 new changesets Message-ID: <20130603214427.0905148EFE@hg.openjdk.java.net> Changeset: 8df94ef84244 Author: "Jasper Potts" Date: 2013-06-03 14:04 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/8df94ef84244 Added getters to SplineInterpolator internal class to be able to get data ! javafx-anim/src/com/sun/scenario/animation/SplineInterpolator.java Changeset: ebe36f2349d1 Author: "Jasper Potts" Date: 2013-06-03 14:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/ebe36f2349d1 Added Height Map to Normal Map conversion utility class and app to 3D Viewer. + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/height2normal/Height2NormalApp.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/height2normal/Height2NormalConverter.java Changeset: 2d119fc96ca6 Author: "Jasper Potts" Date: 2013-06-03 14:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/2d119fc96ca6 Added missing copyright header to DaeImporter ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/dae/DaeImporter.java Changeset: e591db661d96 Author: "Jasper Potts" Date: 2013-06-03 14:16 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/e591db661d96 Added Java source code exporter to 3D Viewer + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/javasource/JavaSourceExporter.java Changeset: a5b41e87883e Author: "Jasper Potts" Date: 2013-06-03 14:16 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/a5b41e87883e Made simple 3d viewer use a transparent window ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SimpleViewerApp.java From zonski at gmail.com Mon Jun 3 14:50:08 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Tue, 4 Jun 2013 07:50:08 +1000 Subject: Performance Tips n' Tricks wiki page In-Reply-To: References: Message-ID: This is very good. Looking forward to it growing. There's going to be a lot of work in building and maintaining that - would be great if it gets the love it needs. I do wonder if there should be a separate guide for embedded and mobile as they really are a set of unique problems that you probably only care about if doing that sort of stuff. Might help keep the desktop one more digestible. A couple of questions to add (sure I will have more over time): 1) turning cache to true and cache hint to SPEED I haven't seen explained what the drawbacks are to doing this. I assume there is some trade-off for turning this on otherwise it would be on by default? 2) AnimationTimer - how is this related to transitions (like TransitionTimer). They seem to be two very different things - not just at the usage level but the actual underlying performance and implementation - but it's not clear to me exactly the difference. I wanted to work with both AnimationTimer stuff and Transitions in a consistent way (e.g. pause one thing to pause my whole app). When trying to use the API my instinct was that the transitions used an underlying AnimationTimer, so I was looking for a way to setAnimationTimer on the transitions, so they all shared the same instance. I'm obviously seeing it wrong, but it's not clear to me why these things are so different. 3) If I have an app with multiple views (say 20 or 30) and I want to animate between them (slide in, out, etc). Should I have all the views already added to the scene and then just move them off-center (and/or make them invisible), or should I add and remove them at the start and end of each animation. I'd assumed that adding and removing was the way to go for performance, is this correct? The question really is: If a node is in the scene graph but not visible does it add much overhead to rendering, picking, etc? Doing something like Mac's Mission Control would be much easier if I didn't have to add/remove and could just zoom, but is this a bad idea from performance perspective? 4) Is there much of a hit in building a view full of nodes and then throwing them away and rebuilding on each showing of that view? In my apps (browser style) I would build all the views on startup and then reuse these by loading different data into them (e.g. the same instance was used for showing Person1 details as Person2, just loading different values into it). I thought this would be the best from performance, but there was a comment from Richard a while back that suggested it was perfectly ok/performant to throw away and build the page again on each showing? This would be much easier from an animation point of view as animating the transition 'back' or 'forward' between two pages of the same view is problematic when you are reusing the same view for both! 5) Is there much overhead to a view that it is in memory but not actually added to the scene. i.e. if I do end up building a new instance of the view for every "page load" (as per question 4), then it would be extra handy to just keep those views in memory so when the back button is hit I don't have to rebuild them. I assume the memory would build up pretty quickly if there were large tables, images, videos, etc? How does a web browser manage to cache all these pages in history and would the same approach be performant for JFX? On Tue, Jun 4, 2013 at 7:11 AM, Richard Bair wrote: > Hi, > > We had a brief meeting this afternoon and kicked off a performance tips n' > tricks wiki page, which is presently a dumping ground of ideas that will > get massaged into something useful. The content on this wiki will then be > used by the docs team to produce some official documentation that goes on > the oracle website. > > https://wiki.openjdk.java.net/display/OpenJFX/Performance+Tips+and+Tricks > > I pre-loaded it with a chunk of John Smith's email listing a bunch of > different performance related ideas, and also stuff we had on an internal > document we'd brainstormed up a while ago, plus some ideas we brainstormed > up a few minutes ago. Its rough, but if you are interested in taking a look > and giving more ideas that occur, I'd appreciate it. > > Thanks > Richard From felipe.heidrich at oracle.com Mon Jun 3 15:35:43 2013 From: felipe.heidrich at oracle.com (Felipe Heidrich) Date: Mon, 3 Jun 2013 15:35:43 -0700 (PDT) Subject: API review "RT-30861: Add simple Font factory method for a default font of a different size" In-Reply-To: <51ACEA6D.9020608@oracle.com> References: <47EAA6CD-127E-45D9-BEE3-2E788C2B75A2@oracle.com> <10804056-B8BC-4963-B6F1-1D28947EB73A@oracle.com> <51ACEA6D.9020608@oracle.com> Message-ID: After reading all the comments I think it is best to release the code we have already (RT-30861) and file a jira for deriveFont(). Agreed ? On Jun 3, 2013, at 12:11 PM, Phil Race wrote: > On 6/3/2013 11:40 AM, Richard Bair wrote: >> I agree these would be useful. The reason I filed this particular issue is that whenever I'm writing some code it seems like I'm always reaching for Font.font(size) and when I don't find it there I have to figure out what to pass as the family (it turns out I could have passed null but didn't know it, so I had the longer incantation). Having to always derive is also just an extra level of oomph that in many cases I don't really want to do. > > > deriveFont methods are useful and interesting and eventually required, but > came up here only to be sure that wasn't what was being asked for. > They are somewhat more work than the simple syntactic sugar of > font(20.0) and font("Verdana") > >> >> Unless Font.font(size) is one day going to be "the wrong thing" and by baking it in I'm creating a new error mode, I'd just add it as it will add no weight and would at least be there when I reach for it. As long as one day it won't be "the wrong thing"? > > It won't be doing the wrong thing per the proposed spec which is clear enough >> >> Anyway, if it is going to take more than a few minutes to figure out, best to punt on this rather than soak up Felipe's precious time. > > I think its fine. > > -phil. > >> >> Richard >> >> On Jun 3, 2013, at 11:26 AM, David Grieve wrote: >> >>> I would rather see the deriveFont methods, but not as factory methods. >>> >>> public Font deriveFont(double size) >>> public Font deriveFont(String family) >>> >>> The subtle difference being that these wouldn't use "default" sizes or family names but would use whatever the font is to find the closest matching font. If there isn't a close match, then the same font would be returned. >>> >>> e.g., >>> text.setFont(Font.getDefault().deriveFont(18)); >>> and >>> Font myFont = new Font("Verdana", 18); >>> text.setFont(myFont.deriveFont("Comic Sans MS"); >>> >>> On Jun 3, 2013, at 2:07 PM, Felipe Heidrich wrote: >>> >>>> Moving API discussion to the mailing: >>>> >>>> Proposal: >>>> Add: >>>> Font#font(float) - creates new font using default font family name and given font size >>>> Font#font(String) - creates new font using given font family and default font size >>>> >>>> >>>> Comments: >>>> Phil Wrote >>>>> I keep having to type this: >>>>> text.setFont(Font.font(Font.getDefault().getFamily(), 81)); >>>>> I would prefer just: >>>>> text.setFont(Font.font(81)); >>>>> which would use the default font. >>>> I think that last line was meant to be "default font family". >>>> All the font(..) factory methods are family based and we should >>>> keep it that way. >>>> So the new API Font.font(-81) as specified and implemented here >>>> is using the default family but its not necessarily getting the same >>>> style as the default font. Nor would it inherit any other (theoretical) >>>> attributes of the default font. In practice it'll all work out >>>> the same until the day that some platform has a bold default font >>>> or has something else different about the default font that can't >>>> be communicated solely through family. >>>> So some day we also need to add Font.deriveFont(..). >>>> >>>> Felipe wrote: >>>> Right, the problem you pointed out would be better solved using the derive pattern: >>>> >>>> Font.getDefault().deriveFont(newSize); >>>> >>>> That said, the two new methods don't exclude the option of adding derive in the future. >>>> They are consistent with the javadoc, other factory methods, and probably good enough to make Richard happy for now. >>>> >>>> Anyway, I will let him be the judge for that. >>>> >>>> Personally I would go with the 2 new methods for now and worried about derive in the future (at which time we can consider the implication of different style options such as stretch and advance typographic features). >>>> >>>> >>>> >>>> Felipe >>>> > From pedro.duquevieira at gmail.com Mon Jun 3 15:54:53 2013 From: pedro.duquevieira at gmail.com (Pedro Duque Vieira) Date: Mon, 3 Jun 2013 23:54:53 +0100 Subject: Performance Tips n' Tricks wiki page Message-ID: Hi, Some of my ideas (might be wrong): - use layouts whenever possible instead of binds for laying out nodes - reduce use of effects. If the effect is static use images instead of effect - In javafx 1.3 it would cost more to use stroke instead of a fill. For instance if you have a rectangle with a stroke with would be more efficient to draw 2 rectangles with a fill, so the other one would be used to produce the stroke. Don't know if this still applies. My 2 cents. Kind regards, -- Pedro Duque Vieira From hang.vo at oracle.com Mon Jun 3 16:18:56 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 03 Jun 2013 23:18:56 +0000 Subject: hg: openjfx/8/controls/rt: RT-15797 : Accordion control doesn't size to scene correctly Message-ID: <20130603231921.A10BE48EFF@hg.openjdk.java.net> Changeset: 5a874c54b898 Author: raginip Date: 2013-06-03 16:09 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/5a874c54b898 RT-15797 : Accordion control doesn't size to scene correctly ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TitledPaneSkin.java From richard.bair at oracle.com Mon Jun 3 16:26:19 2013 From: richard.bair at oracle.com (Richard Bair) Date: Mon, 3 Jun 2013 16:26:19 -0700 Subject: Performance Tips n' Tricks wiki page In-Reply-To: References: Message-ID: <79B27516-7F23-4887-9E52-7D3873B07D3B@oracle.com> Dan, Thanks for the thoughts / questions, I've added them to the tail of the wiki for processing. > 1) turning cache to true and cache hint to SPEED I haven't seen explained what the drawbacks are to doing this. I assume there is some trade-off for turning this on otherwise it would be on by default? Caching is the process of rendering a node (or a node & its children) into a texture, and then render from texture each time the node needs to be rendered. In cases where you set things up once and do a lot of subsequent rendering, this is a win. In cases where you have to reconstruct the texture (or draw to the texture) every time, this is a loss. There is some point in the curve where the cost savings is worth it. So once you have a cached image, the question is, when do you need to reconstruct it? Clearly when the node or any of its children have changed visual appearance (such as the fill of a rectangle or the visual state of a button when pressed) then you need to regenerate it (if you didn't, then instead of using the cache property you would use an ImageView and renderToImage to create a static view of some nodes). But you also have to regenerate it as the node is scaled or rotated -- at least, you have to if you care about visual quality more than animation speed. The cache hints tell us under what circumstances we can cheat on quality for the sake of performance. QUALITY says "never cheat". ROTATE says "cheat on rotations". SCALE says "cheat on scales". SCALE_AND_ROTATE can cheat on both and SPEED cheats on everything and everything it can think of to get good performance. The one thing that will never be cheated on is if the visual state (such as the fill) has changed, then an image will be redrawn. So as long as you have a scene graph which isn't changing much, you can cache it and animate it for better performance than if you just animate it. For simple things this shouldn't make any difference, but if rendering times are getting long, it is something to look at. Used incorrectly, it can make things worse -- much worse. On the JavaOne scheduler app we did last year for JavaOne we made things faster by turning off caching, because in our particular case the memory pressure and changes in the UI were making things worse by using caching rather than better. > 2) AnimationTimer - how is this related to transitions (like TransitionTimer). They seem to be two very different things - not just at the usage level but the actual underlying performance and implementation - but it's not clear to me exactly the difference. I wanted to work with both AnimationTimer stuff and Transitions in a consistent way (e.g. pause one thing to pause my whole app). When trying to use the API my instinct was that the transitions used an underlying AnimationTimer, so I was looking for a way to setAnimationTimer on the transitions, so they all shared the same instance. I'm obviously seeing it wrong, but it's not clear to me why these things are so different. I assume TransitionTimer is just Translation :-) They are quite different. Timeline and Transition are both Animations. They are defined by having some parameters that define an animation, and then the ability to play, cycle, reverse, etc. The AnimationTimer on the other hand is a timer that is called whenever the next step in an animation should occur. Games are typically written around a game loop, which is what the AnimationTimer is designed for. Whenever the AnimationTimer or an Animation is running, it causes us to process a pulse ever 16.66ms (or as close as we can get). The only other time a pulse happens is when the scene graph is made dirty. Both are driven off the same essential timing mechanism -- we get a pulse, and the first step of the pulse is to run the animations (see QuantumToolkit.java around line 594, in the pulse(boolean collect) method). After the various animations run (and this part of the code is more convoluted than is needed any longer, having its history way back in 1.0 with the differences between SE and ME), then the pulse is sent to the stages & scenes where CSS, Layout, synchronization to the render tree, etc is performed. AnimationTimer is "lighter weight" only in that there is no machinery to run -- it is just given a timestamp and that's it. The Timeline and Transition classes need to do a bunch of stuff on your behalf such as discover what KeyFrames to run, what KeyValues, pump the time into an Interpolator to get an interpolated time, etc etc. But fundamentally I have not yet seen any great overhead spent in the animation classes and would consider them perfectly safe for any usage -- iOS, embedded, or Desktop. They could probably be made evil but I have not seen such a thing yet. > 3) If I have an app with multiple views (say 20 or 30) and I want to animate between them (slide in, out, etc). Should I have all the views already added to the scene and then just move them off-center (and/or make them invisible), or should I add and remove them at the start and end of each animation. I'd assumed that adding and removing was the way to go for performance, is this correct? The question really is: If a node is in the scene graph but not visible does it add much overhead to rendering, picking, etc? Doing something like Mac's Mission Control would be much easier if I didn't have to add/remove and could just zoom, but is this a bad idea from performance perspective? For the most part adding / removing from the scene is more expensive than toggling visibility, and toggling visibility is more expensive than setting opacity to 0. At least, that's what I determined a couple weeks ago but I could be wrong. And it depends on what is happening to the memory on your system. If you're hauling around 400MB of nodes you don't need to see, then things might be worse than creating them when needed. I'm not sure but my feeling is that these cases are going to be a lot of "it depends". > 4) Is there much of a hit in building a view full of nodes and then throwing them away and rebuilding on each showing of that view? In my apps (browser style) I would build all the views on startup and then reuse these by loading different data into them (e.g. the same instance was used for showing Person1 details as Person2, just loading different values into it). I thought this would be the best from performance, but there was a comment from Richard a while back that suggested it was perfectly ok/performant to throw away and build the page again on each showing? This would be much easier from an animation point of view as animating the transition 'back' or 'forward' between two pages of the same view is problematic when you are reusing the same view for both! We know we have a problem with Node creation time, but we don't know what it is yet. So for now probably reusing the same nodes (when reasonable, see above) is probably going to be better for you. > 5) Is there much overhead to a view that it is in memory but not actually added to the scene. i.e. if I do end up building a new instance of the view for every "page load" (as per question 4), then it would be extra handy to just keep those views in memory so when the back button is hit I don't have to rebuild them. I assume the memory would build up pretty quickly if there were large tables, images, videos, etc? How does a web browser manage to cache all these pages in history and would the same approach be performant for JFX? There is no per-pulse overhead, as only Scenes and Stages get pulse notification. The nodes probably don't have peers (but they might in the future if they don't now in all scenarios -- wouldn't bet one way or the other). So from a memory perspective they're still there. But there is no layout, no CSS, no picking, etc. Richard From richard.bair at oracle.com Mon Jun 3 16:27:30 2013 From: richard.bair at oracle.com (Richard Bair) Date: Mon, 3 Jun 2013 16:27:30 -0700 Subject: API review "RT-30861: Add simple Font factory method for a default font of a different size" In-Reply-To: References: <47EAA6CD-127E-45D9-BEE3-2E788C2B75A2@oracle.com> <10804056-B8BC-4963-B6F1-1D28947EB73A@oracle.com> <51ACEA6D.9020608@oracle.com> Message-ID: <6CDF36F6-1367-427D-B488-D18EF896F5B0@oracle.com> +1 On Jun 3, 2013, at 3:35 PM, Felipe Heidrich wrote: > RT-30861 From richard.bair at oracle.com Mon Jun 3 16:28:55 2013 From: richard.bair at oracle.com (Richard Bair) Date: Mon, 3 Jun 2013 16:28:55 -0700 Subject: Performance Tips n' Tricks wiki page In-Reply-To: References: Message-ID: <207C6D1F-8350-4B74-865C-E59E1E90BEBF@oracle.com> Thanks Pedro, will put these on the wiki. The layout vs. bind is an interesting question and one that isn't entirely clear. I use some of both depending, really, on what is most natural for the case I'm facing rather than on a strict performance basis. Because Java doesn't have binding in the language, it is harder to use it so excessively that it causes a problem like it could in FX Script. Richard On Jun 3, 2013, at 3:54 PM, Pedro Duque Vieira wrote: > Hi, > > Some of my ideas (might be wrong): > - use layouts whenever possible instead of binds for laying out nodes > - reduce use of effects. If the effect is static use images instead of > effect > - In javafx 1.3 it would cost more to use stroke instead of a fill. For > instance if you have a rectangle with a stroke with would be more efficient > to draw 2 rectangles with a fill, so the other one would be used to produce > the stroke. Don't know if this still applies. > > My 2 cents. Kind regards, > > -- > Pedro Duque Vieira From hang.vo at oracle.com Mon Jun 3 16:34:36 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 03 Jun 2013 23:34:36 +0000 Subject: hg: openjfx/8/controls/rt: RT-27637: [TextField] Mouse click makes the caret disappear. Message-ID: <20130603233448.49C4D48F01@hg.openjdk.java.net> Changeset: 93863dfb5745 Author: leifs Date: 2013-06-03 16:18 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/93863dfb5745 RT-27637: [TextField] Mouse click makes the caret disappear. ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TextFieldSkin.java From david.grieve at oracle.com Mon Jun 3 16:37:41 2013 From: david.grieve at oracle.com (David Grieve) Date: Mon, 3 Jun 2013 19:37:41 -0400 Subject: API review "RT-30861: Add simple Font factory method for a default font of a different size" In-Reply-To: References: <47EAA6CD-127E-45D9-BEE3-2E788C2B75A2@oracle.com> <10804056-B8BC-4963-B6F1-1D28947EB73A@oracle.com> <51ACEA6D.9020608@oracle.com> Message-ID: Ok. One other thing about deriveFont() from the CSS perspective. If Font had a FontWeight getFontWeight() and a FontPosture getFontPosture(), then I wouldn't need deriveFont(). One of the problems is dealing with font-weight: bolder and font-weight: lighter, and getFontWeight() would go a long way to solving that. I'd appreciate knowing the dervieFont bug number, or please add me as a watcher. On Jun 3, 2013, at 6:35 PM, Felipe Heidrich wrote: > After reading all the comments I think it is best to release the code we have already (RT-30861) and file a jira for deriveFont(). > > Agreed ? > > > On Jun 3, 2013, at 12:11 PM, Phil Race wrote: > >> On 6/3/2013 11:40 AM, Richard Bair wrote: >>> I agree these would be useful. The reason I filed this particular issue is that whenever I'm writing some code it seems like I'm always reaching for Font.font(size) and when I don't find it there I have to figure out what to pass as the family (it turns out I could have passed null but didn't know it, so I had the longer incantation). Having to always derive is also just an extra level of oomph that in many cases I don't really want to do. >> >> >> deriveFont methods are useful and interesting and eventually required, but >> came up here only to be sure that wasn't what was being asked for. >> They are somewhat more work than the simple syntactic sugar of >> font(20.0) and font("Verdana") >> >>> >>> Unless Font.font(size) is one day going to be "the wrong thing" and by baking it in I'm creating a new error mode, I'd just add it as it will add no weight and would at least be there when I reach for it. As long as one day it won't be "the wrong thing"? >> >> It won't be doing the wrong thing per the proposed spec which is clear enough >>> >>> Anyway, if it is going to take more than a few minutes to figure out, best to punt on this rather than soak up Felipe's precious time. >> >> I think its fine. >> >> -phil. >> >>> >>> Richard >>> >>> On Jun 3, 2013, at 11:26 AM, David Grieve wrote: >>> >>>> I would rather see the deriveFont methods, but not as factory methods. >>>> >>>> public Font deriveFont(double size) >>>> public Font deriveFont(String family) >>>> >>>> The subtle difference being that these wouldn't use "default" sizes or family names but would use whatever the font is to find the closest matching font. If there isn't a close match, then the same font would be returned. >>>> >>>> e.g., >>>> text.setFont(Font.getDefault().deriveFont(18)); >>>> and >>>> Font myFont = new Font("Verdana", 18); >>>> text.setFont(myFont.deriveFont("Comic Sans MS"); >>>> >>>> On Jun 3, 2013, at 2:07 PM, Felipe Heidrich wrote: >>>> >>>>> Moving API discussion to the mailing: >>>>> >>>>> Proposal: >>>>> Add: >>>>> Font#font(float) - creates new font using default font family name and given font size >>>>> Font#font(String) - creates new font using given font family and default font size >>>>> >>>>> >>>>> Comments: >>>>> Phil Wrote >>>>>> I keep having to type this: >>>>>> text.setFont(Font.font(Font.getDefault().getFamily(), 81)); >>>>>> I would prefer just: >>>>>> text.setFont(Font.font(81)); >>>>>> which would use the default font. >>>>> I think that last line was meant to be "default font family". >>>>> All the font(..) factory methods are family based and we should >>>>> keep it that way. >>>>> So the new API Font.font(-81) as specified and implemented here >>>>> is using the default family but its not necessarily getting the same >>>>> style as the default font. Nor would it inherit any other (theoretical) >>>>> attributes of the default font. In practice it'll all work out >>>>> the same until the day that some platform has a bold default font >>>>> or has something else different about the default font that can't >>>>> be communicated solely through family. >>>>> So some day we also need to add Font.deriveFont(..). >>>>> >>>>> Felipe wrote: >>>>> Right, the problem you pointed out would be better solved using the derive pattern: >>>>> >>>>> Font.getDefault().deriveFont(newSize); >>>>> >>>>> That said, the two new methods don't exclude the option of adding derive in the future. >>>>> They are consistent with the javadoc, other factory methods, and probably good enough to make Richard happy for now. >>>>> >>>>> Anyway, I will let him be the judge for that. >>>>> >>>>> Personally I would go with the 2 new methods for now and worried about derive in the future (at which time we can consider the implication of different style options such as stretch and advance typographic features). >>>>> >>>>> >>>>> >>>>> Felipe >>>>> >> > From hang.vo at oracle.com Mon Jun 3 16:48:42 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 03 Jun 2013 23:48:42 +0000 Subject: hg: openjfx/8/graphics/rt: 3 new changesets Message-ID: <20130603234918.C3BE748F02@hg.openjdk.java.net> Changeset: 5be62ada9a91 Author: "Jasper Potts" Date: 2013-06-03 16:32 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/5be62ada9a91 Fixed JavaScriptBridgeTest.java so that it builds. ! webview/test/javafx/scene/web/JavaScriptBridgeTest.java Changeset: 3a038dc4f103 Author: Alexander Kouznetsov Date: 2013-06-03 16:35 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/3a038dc4f103 3DViewer: Improved Optimizer to remove repeating KeyValues. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 1886efc4172c Author: Felipe Heidrich Date: 2013-06-03 10:57 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/1886efc4172c RT-30861: Add simple Font factory method for a default font of a different size ! javafx-ui-common/src/javafx/scene/text/Font.java From hang.vo at oracle.com Mon Jun 3 18:19:13 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 01:19:13 +0000 Subject: hg: openjfx/8/graphics/rt: 3D Viewer App: Cleanup of optimizer comments, fixed intellij files Message-ID: <20130604011933.ABE8E48F0E@hg.openjdk.java.net> Changeset: 6de310cbae85 Author: "Jasper Potts" Date: 2013-06-03 18:02 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/6de310cbae85 3D Viewer App: Cleanup of optimizer comments, fixed intellij files ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java From hang.vo at oracle.com Mon Jun 3 18:35:20 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 01:35:20 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130604013543.8907B48F11@hg.openjdk.java.net> Changeset: 228a62a674e3 Author: "Jasper Potts" Date: 2013-06-03 18:03 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/228a62a674e3 3D Viewer: Work on Java Source exporter ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/javasource/JavaSourceExporter.java Changeset: 3b3ae57ddd59 Author: "Jasper Potts" Date: 2013-06-03 18:27 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/3b3ae57ddd59 3D Viewer App: Added poly mesh choice checkbox ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Importer3D.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/main.fxml From hang.vo at oracle.com Tue Jun 4 00:18:27 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 07:18:27 +0000 Subject: hg: openjfx/8/controls/rt: RT-24105 TabPane renders content of all tabs even only one is active.Optimization loads only the initially selected tabs and others get loaded on selection. To load content of other tabs lazily - -Djavafx.tabpane.loadTabsLazily property can be used. To load the content of alll tabs with out any optimization, -Djavafx.tabpane.maintainfullscenegraph property can be used. Message-ID: <20130604071901.482CD48F17@hg.openjdk.java.net> Changeset: 1ee27e0ef269 Author: psomashe Date: 2013-06-04 00:16 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/1ee27e0ef269 RT-24105 TabPane renders content of all tabs even only one is active.Optimization loads only the initially selected tabs and others get loaded on selection. To load content of other tabs lazily - -Djavafx.tabpane.loadTabsLazily property can be used. To load the content of alll tabs with out any optimization, -Djavafx.tabpane.maintainfullscenegraph property can be used. ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java From hang.vo at oracle.com Tue Jun 4 01:18:23 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 08:18:23 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130604081917.6494A48F1B@hg.openjdk.java.net> Changeset: 255a10ee1ed0 Author: Martin Sladecek Date: 2013-06-04 10:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/255a10ee1ed0 RT-30363 Region calls requestLayout too aggressively ! javafx-ui-common/src/javafx/scene/Group.java ! javafx-ui-common/src/javafx/scene/Node.java ! javafx-ui-common/src/javafx/scene/Parent.java ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-controls/test/com/sun/javafx/scene/control/skin/ScrollPaneSkinTest.java Changeset: aee1e049522e Author: Martin Sladecek Date: 2013-06-04 10:09 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/aee1e049522e Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt From hang.vo at oracle.com Tue Jun 4 02:07:11 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 09:07:11 +0000 Subject: hg: openjfx/8/graphics/rt: SW pipeline: fix for SWTexture.update(..) methods (RT-30633) Message-ID: <20130604090742.D54CD48F1C@hg.openjdk.java.net> Changeset: cb35abdbc183 Author: Martin Soch Date: 2013-06-04 10:55 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/cb35abdbc183 SW pipeline: fix for SWTexture.update(..) methods (RT-30633) ! prism-sw/src/com/sun/prism/sw/SWArgbPreTexture.java ! prism-sw/src/com/sun/prism/sw/SWMaskTexture.java ! prism-sw/src/com/sun/prism/sw/SWTexture.java From hang.vo at oracle.com Tue Jun 4 03:19:16 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 10:19:16 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30869: Win: Pen events in Windows should not be synthesized Message-ID: <20130604101948.D9FC148F21@hg.openjdk.java.net> Changeset: 1dd4bb7090a2 Author: Anthony Petrov Date: 2013-06-04 14:05 +0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/1dd4bb7090a2 RT-30869: Win: Pen events in Windows should not be synthesized Reviewed-by: anthony, art Contributed-by: Danno Ferrin ! glass/glass-lib-windows/src/ViewContainer.cpp From anthony.petrov at oracle.com Tue Jun 4 03:22:21 2013 From: anthony.petrov at oracle.com (Anthony Petrov) Date: Tue, 4 Jun 2013 03:22:21 -0700 (PDT) Subject: Touch Events, Scrolling, and Windows Pen In-Reply-To: <51ACAC83.8070400@oracle.com> References: <51A46E5B.1040601@oracle.com> <51A4BDE7.8020400@oracle.com> <51A4DF66.9090009@oracle.com> <51AC9FAA.1030503@oracle.com> <51ACAC83.8070400@oracle.com> Message-ID: <51ADBFDD.60204@oracle.com> Hi Danno, I've just pushed your fix: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/1dd4bb7090a2 Thank you for the contribution. -- best regards, Anthony On 06/03/2013 06:47 PM, Artem Ananiev wrote: > > On 6/3/2013 5:52 PM, Anthony Petrov wrote: >> Hi Danno, >> >> Thank you for the patch. I've published a webrev at: >> >> http://cr.openjdk.java.net/~anthony/g-301-penEvents-RT-30869.0/ >> >> The fix looks fine to me. Could anyone else please review it? > > +1. > > Thanks, > > Artem > >> -- >> best regards, >> Anthony >> >> On 06/03/13 04:59, Danno Ferrin wrote: >>> I created a new bug for the pen support bug, with a tested patch. I >>> spent way more time getting the build up than doing the fix, such is >>> native work. >>> https://javafx-jira.kenai.com/browse/RT-30869 >>> For the pan-select, I attached a fix for list views to the existing >>> bug. If that approach passes muster I can do the same for tree and >>> table. >>> https://javafx-jira.kenai.com/browse/RT-21091 >>> >>> On Tue, May 28, 2013 at 10:46 AM, Anthony Petrov >>> > wrote: >>> >>> Sounds good to me. >>> >>> Danno, could you please prepare a patch for this bug, test it, and >>> post it for review here? >>> >>> -- >>> best regards, >>> Anthony >>> >>> >>> On 05/28/2013 07:46 PM, Danno Ferrin wrote: >>> >>> For 8.0 that would be the best solution IMHO. >>> On May 28, 2013 8:41 AM, "Pavel Safrata" >>> > >>> wrote: >>> >>> So it seems to me that in short term (FX8) the pen should >>> produce mouse >>> events with isSynthesized==false. We can introduce something >>> more advanced >>> in the future, but right now it should generally work and >>> the synthesized >>> flag really seems to be misused here. >>> Pavel >>> >>> On 28.5.2013 16:09, Danno Ferrin wrote: >>> >>> On Tue, May 28, 2013 at 2:44 AM, Anthony Petrov >>> >> >**__wrote: >>> >>> Hi Danno, >>> >>> >>> >>> On 05/27/2013 07:27 PM, Danno Ferrin wrote: >>> >>> My next problem is the pen device on Windows. >>> The only events captured >>> >>> in >>> JavaFX from a pen are mouse events. To >>> complicate things the >>> "Synthesized" >>> flag is set. This is a bit disconcerting >>> because to the view of a JFX >>> app >>> there is no other event for it to be synthesized >>> to. So I would propose >>> the isPenEvent method in >>> /glass/glass-lib-windows/src/*__** >>> >>> *ViewContainer.cpp >>> be >>> added to check that the 0x80 bit is set by >>> changing the signature >>> to 0xFF515780 and the mask to 0xFFFFFF80, making >>> a pen event look just >>> like >>> a mouse event, since it only generates mouse >>> events. (the linked MSDN >>> article in the code explains the lower 8 bits, >>> and the high bit is a >>> pen/touch flag, the logic may need to be more >>> complex). To distinguish >>> a >>> pen tap perhaps we set the direct flag but not >>> the synthesized flag, >>> since >>> a pen is direct on the screen (usually). >>> >>> So am I way off base on these? Should I work up >>> a patch for these? Or >>> must the current behavior be maintained. >>> >>> AFAIK, we haven't tested Glass/FX with a Pen >>> device and I doubt we even >>> >>> have proper hardware to test it at the moment. So >>> such a patch would >>> certainly be welcome. Please feel free to post it on >>> this mailing list >>> for >>> a review. >>> >>> I think the QA and dev team should invest a few >>> thousand and buy one or >>> >>> two >>> each of a Surface Pro, a Samsung Ativ 500T, and maybe an >>> Asus VivoTab (but >>> only the Asus if you can get the pen with it on the same >>> order). The >>> "triple threat" input devices (mouse/pen/touch) will >>> cover a lot of bases. >>> >>> >>> However, we should first decide how we want to >>> process Pen events. They >>> >>> are not regular mouse events, nor are they similar >>> to regular touch >>> events >>> (though they have a lot in common with the latter). >>> E.g. suppose you can >>> control your Surface Pro with a finger using its >>> touch screen. These are >>> touch events. Now, you could also connect a USB >>> mouse to this device, and >>> that would have to generate regular mouse events. >>> Additionally, you could >>> connect a graphic tablet such as a Wacom Bamboo for >>> example, and this >>> device would have to generate some special Pen >>> events, right? >>> >>> As far as I can tell pen evens are just the same >>> as mouse events unless >>> >>> you >>> use microsofts "Ink" APIs to insert "Ink" into your >>> application. So >>> unless >>> JavaFX adds support for digital ink, there is vey little >>> difference. The >>> only one that comes to mind is pressure sensitivity, and >>> the minority of >>> windows pen screens or pads support pressure >>> sensitivity. >>> >>> >>> >>> Should we introduce a new kind of events for Pen >>> events in FX? Or does it >>> >>> make sense to use touch events for this purpose? How >>> would we distinguish >>> between finger- and pen- based input events in the >>> above scenario then? >>> >>> Behavior is a big difference in pen vs touch. >>> Tap and drag for touch >>> >>> gets interpreted as a scroll pan, while tap and drag for >>> a pen >>> gets interpreted as a mouse click and drag, for example >>> selecting text. >>> >>> Pen events don't generate touch gestures like the touch >>> screens do. >>> Unless >>> you count the "flicks" api in microsoft land which just >>> generates events >>> at >>> the windows level for stuff like delete, cut, copy, >>> paste, etc. Much like >>> the multimedia keyboard. >>> >>> A new boolean field could be added isPen could be added >>> on the mouseEvent, >>> or a new enum property at InputEvent called Input >>> Device, that would >>> enumerate if it was mouse, touch, pen, keyboard, or >>> whatever standard >>> input >>> devies show up in the future. These enums could then be >>> loaded with all >>> sorts of interesting queries in case a user wants to >>> write their app in a >>> future proof way, such as are drag events principally >>> pan-scrolling, is >>> the >>> gesture device direct/indirect. Maybe not an enum, but >>> a separate HCI >>> object rather than pushing the random flags into the >>> event system. >>> >>> >>> What other options do we have? >>> >>> >>> >>> Keeping pen input second class is fine I think, >>> as long as it is >>> >>> consistent >>> with the differences between touch and mouse in non-ink >>> areas. If we have >>> to confuse them with one type or the other, confuse them >>> with mouse events >>> because they are closer to mouse events then touch >>> events. There are more >>> important areas for JavaFX to go to before it goes down >>> the digital ink >>> path. >>> >>> >>> -- >>> >>> best regards, >>> Anthony >>> >>> >>> >>> From zonski at gmail.com Tue Jun 4 03:28:55 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Tue, 4 Jun 2013 20:28:55 +1000 Subject: Canvas clip problems In-Reply-To: References: <4488F98D-9BE6-476A-AEBA-721FCC6F0436@oracle.com> Message-ID: Finally got round to testing this and setting -Dprism.order=j2d as Scott makes the smear go away. On Sun, Jun 2, 2013 at 11:16 AM, Scott Palmer wrote: > Try > -Dprism.order=sw > with JavaFS 8 > > or > -Dprism.order=j2d > with JavaFX 2.2 > > to see if the clipping issue goes away. > > Also try -Dprism.dirtyopts=false to see if that fixes the smearing. > > > On Sat, Jun 1, 2013 at 9:14 PM, Scott Palmer wrote: > >> This looks like it may be related to the clipping issue that I'm having >> (the one that forces me o use the software pipeline in JavaFX 8 or the j2d >> pipeline in JavaX 2.2) >> >> https://javafx-jira.kenai.com/browse/RT-30591 >> >> I'll try to do the same screencast thingy, as the still in my report >> don't do justice to the problem. >> >> Scott >> >> >> On Sat, Jun 1, 2013 at 8:55 PM, Richard Bair wrote: >> >>> "Cheese" (the smear) should never be possible. It means that the clip >>> used on the device is wrong for some reason, and therefore some area of the >>> screen was not being repainted that needed to be. In Swing (or Android or >>> any other immediate mode API) it is possible that your app could have a bug >>> that causes this, but with the scene graph the responsibility is with JFX >>> not to mess up the dirty regions. >>> >>> My guess is this is related to the other issue you already filed about >>> the "z order" rendering issue (which is also related to the clip being >>> wrong). It might be worth putting the link to the screencast on that bug >>> report. >>> >>> Richard >>> >>> On Jun 1, 2013, at 3:21 PM, Daniel Zwolenski wrote: >>> >>> > Here is one I can't reproduce in smaller code. >>> > >>> > http://www.screencast.com/t/AJZjx1TjFT >>> > >>> > You can see that when the enemies start off the canvas they end up >>> leaving >>> > a smear behind. When they leave the canvas at the other end they also >>> > smear. >>> > >>> > I suspect it's something to do with the clipping code used in the game >>> but >>> > I haven't been able to narrow it down (and this area I was a bit flaky >>> on >>> > and I think Richard did the starting setup for). >>> > >>> > It's probably a case of clipping properly, but should this sort of >>> > behaviour be even possible to occur? >>> > >>> > p.s. thanks for the Camtasia tips - nice product. >>> >>> >> > From hang.vo at oracle.com Tue Jun 4 03:34:31 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 10:34:31 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30557 Gtk: Unable to showAndWait a Stage from within an UncaughtExceptionHandler in Linux Message-ID: <20130604103444.3908048F22@hg.openjdk.java.net> Changeset: eaf163a8953c Author: Alexander Zvegintsev Date: 2013-06-04 14:13 +0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/eaf163a8953c RT-30557 Gtk: Unable to showAndWait a Stage from within an UncaughtExceptionHandler in Linux ! glass/glass-lib-gtk/src/GlassApplication.cpp ! glass/glass-lib-gtk/src/GlassCommonDialogs.cpp ! glass/glass-lib-gtk/src/GlassCursor.cpp ! glass/glass-lib-gtk/src/GlassSystemClipboard.cpp ! glass/glass-lib-gtk/src/GlassTimer.cpp ! glass/glass-lib-gtk/src/GlassView.cpp ! glass/glass-lib-gtk/src/GlassWindow.cpp ! glass/glass-lib-gtk/src/glass_dnd.cpp ! glass/glass-lib-gtk/src/glass_general.cpp ! glass/glass-lib-gtk/src/glass_general.h ! glass/glass-lib-gtk/src/glass_window.cpp ! glass/glass-lib-gtk/src/glass_window.h ! glass/glass-lib-gtk/src/glass_window_ime.cpp From hang.vo at oracle.com Tue Jun 4 05:18:42 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 12:18:42 +0000 Subject: hg: openjfx/8/graphics/rt: 3 new changesets Message-ID: <20130604121919.4DEAD48F27@hg.openjdk.java.net> Changeset: 31cc3ec01fdc Author: Martin Sladecek Date: 2013-06-04 14:03 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/31cc3ec01fdc RT-30740 GridPane oddness with row alignment set to VPos.BASELINE ! javafx-ui-common/src/javafx/scene/layout/GridPane.java ! javafx-ui-common/test/unit/javafx/scene/layout/GridPaneTest.java Changeset: d99a88d0b0f6 Author: Martin Sladecek Date: 2013-06-04 14:03 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/d99a88d0b0f6 Automated merge with file:///home/martin/work/jfx-80-sync/rt Changeset: 61ec5d95c144 Author: Martin Sladecek Date: 2013-06-04 14:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/61ec5d95c144 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt From martin.sladecek at oracle.com Tue Jun 4 06:50:06 2013 From: martin.sladecek at oracle.com (Martin Sladecek) Date: Tue, 04 Jun 2013 15:50:06 +0200 Subject: API Review: Missing UNSORTED Comparator constant in SortedList In-Reply-To: <51A84263.1000800@oracle.com> References: <51A84263.1000800@oracle.com> Message-ID: <51ADF08E.5030607@oracle.com> After some discussion in the JIRA issue, the change will be much simpler: null comparator will mean UNSORTED, not natural order (i.e. using Comparable) as it does now. The natural order can be done by passing Comparator.naturalOrder() to the SortedList. -Martin On 05/31/2013 08:25 AM, Martin Sladecek wrote: > Hi, > while discussing the SortedList, we were talking about how to return > to the unsorted state and the proposed solution was to have special > SortedList.UNSORTED constant for comparator. > > Unfortunately, I forgot to include it in the final proposal, so I'm > proposing this now. > > Thanks David Qiao for noticing this ( > https://javafx-jira.kenai.com/browse/RT-30831). > > Thanks, > -Martin From swpalmer at gmail.com Tue Jun 4 07:06:10 2013 From: swpalmer at gmail.com (Scott Palmer) Date: Tue, 4 Jun 2013 10:06:10 -0400 Subject: Canvas clip problems In-Reply-To: References: <4488F98D-9BE6-476A-AEBA-721FCC6F0436@oracle.com> Message-ID: Good to know it isn't just my app that has this problem! A fix for 2.2.x would be great! Hopefully the Oracle guys can reproduce it. Cheers, Scott On Tue, Jun 4, 2013 at 6:28 AM, Daniel Zwolenski wrote: > Finally got round to testing this and setting -Dprism.order=j2d as Scott > makes the smear go away. > > > On Sun, Jun 2, 2013 at 11:16 AM, Scott Palmer wrote: > >> Try >> -Dprism.order=sw >> with JavaFS 8 >> >> or >> -Dprism.order=j2d >> with JavaFX 2.2 >> >> to see if the clipping issue goes away. >> >> Also try -Dprism.dirtyopts=false to see if that fixes the smearing. >> >> >> On Sat, Jun 1, 2013 at 9:14 PM, Scott Palmer wrote: >> >>> This looks like it may be related to the clipping issue that I'm having >>> (the one that forces me o use the software pipeline in JavaFX 8 or the j2d >>> pipeline in JavaX 2.2) >>> >>> https://javafx-jira.kenai.com/browse/RT-30591 >>> >>> I'll try to do the same screencast thingy, as the still in my report >>> don't do justice to the problem. >>> >>> Scott >>> >>> >>> On Sat, Jun 1, 2013 at 8:55 PM, Richard Bair wrote: >>> >>>> "Cheese" (the smear) should never be possible. It means that the clip >>>> used on the device is wrong for some reason, and therefore some area of the >>>> screen was not being repainted that needed to be. In Swing (or Android or >>>> any other immediate mode API) it is possible that your app could have a bug >>>> that causes this, but with the scene graph the responsibility is with JFX >>>> not to mess up the dirty regions. >>>> >>>> My guess is this is related to the other issue you already filed about >>>> the "z order" rendering issue (which is also related to the clip being >>>> wrong). It might be worth putting the link to the screencast on that bug >>>> report. >>>> >>>> Richard >>>> >>>> On Jun 1, 2013, at 3:21 PM, Daniel Zwolenski wrote: >>>> >>>> > Here is one I can't reproduce in smaller code. >>>> > >>>> > http://www.screencast.com/t/AJZjx1TjFT >>>> > >>>> > You can see that when the enemies start off the canvas they end up >>>> leaving >>>> > a smear behind. When they leave the canvas at the other end they also >>>> > smear. >>>> > >>>> > I suspect it's something to do with the clipping code used in the >>>> game but >>>> > I haven't been able to narrow it down (and this area I was a bit >>>> flaky on >>>> > and I think Richard did the starting setup for). >>>> > >>>> > It's probably a case of clipping properly, but should this sort of >>>> > behaviour be even possible to occur? >>>> > >>>> > p.s. thanks for the Camtasia tips - nice product. >>>> >>>> >>> >> > From hang.vo at oracle.com Tue Jun 4 08:49:03 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 15:49:03 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130604154944.E14A848F2D@hg.openjdk.java.net> Changeset: 8720c6729e2c Author: kcr Date: 2013-06-04 08:28 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/8720c6729e2c Backed out changeset 5be62ada9a91 to fix unit test failure Changeset: e096b075097d Author: kcr Date: 2013-06-04 08:32 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/e096b075097d Backed out changeset 5be62ada9a91 to fix unit test failure ! webview/test/javafx/scene/web/JavaScriptBridgeTest.java From hang.vo at oracle.com Tue Jun 4 10:06:18 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 17:06:18 +0000 Subject: hg: openjfx/8/graphics/rt: 5 new changesets Message-ID: <20130604170715.9315548F35@hg.openjdk.java.net> Changeset: 75b3b8e4530b Author: mhowe Date: 2013-05-24 16:05 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/75b3b8e4530b RT-29058: Need a macro in the config files to expand to the app bundle directory [ngthomas, ddehaven] ! deploy/packager/native/linux/launcher.c ! deploy/packager/native/macosx/main.m ! deploy/packager/native/windows/WinLauncher.cpp Changeset: 018368ab7327 Author: ngthomas Date: 2013-05-29 13:43 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/018368ab7327 Merge - javafx-annotation-processor/.settings/org.eclipse.jdt.core.prefs - javafx-annotation-processor/.settings/org.eclipse.jdt.launching.prefs - javafx-annotation-processor/build-closed.xml - javafx-annotation-processor/build-common.xml - javafx-annotation-processor/build.xml - javafx-annotation-processor/nbproject/project.xml - javafx-annotation-processor/project.properties - javafx-annotation-processor/src/META-INF/services/javax.annotation.processing.Processor - javafx-annotation-processor/src/javafx/builder/processor/AnnotationUtils.java - javafx-annotation-processor/src/javafx/builder/processor/BuilderProcessor.java - javafx-annotation-processor/src/javafx/builder/processor/BuilderProcessor.properties - javafx-annotation-processor/src/javafx/builder/processor/Scanned.java - javafx-beans/src/com/sun/javafx/beans/annotations/DuplicateInBuilderProperties.java - javafx-beans/src/com/sun/javafx/beans/annotations/NoBuilder.java - javafx-beans/src/com/sun/javafx/beans/annotations/NoInit.java - javafx-ui-common/src/com/sun/javafx/print/PrintAccess.java - javafx-ui-common/src/com/sun/javafx/scene/CameraAccess.java - javafx-ui-common/src/com/sun/javafx/scene/NodeAccess.java - javafx-ui-common/src/com/sun/javafx/scene/SubSceneAccess.java - javafx-ui-common/src/javafx/print/PrintAccessor.java - javafx-ui-common/test/unit/com/sun/javafx/test/BuilderProxy.java - javafx-ui-common/test/unit/com/sun/javafx/test/BuilderTestBase.java - javafx-ui-common/test/unit/javafx/animation/FadeTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/FillTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/ParallelTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/PathTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/PauseTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/RotateTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/ScaleTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/SequentialTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/StrokeTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/TranslateTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/geometry/BoundingBox_builder_Test.java - javafx-ui-common/test/unit/javafx/geometry/Dimension2D_builder_Test.java - javafx-ui-common/test/unit/javafx/geometry/Insets_builder_Test.java - javafx-ui-common/test/unit/javafx/geometry/Point2D_builder_Test.java - javafx-ui-common/test/unit/javafx/geometry/Point3D_builder_Test.java - javafx-ui-common/test/unit/javafx/geometry/Rectangle2D_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/Group_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/ImageCursor_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/Node_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/PerspectiveCamera_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/Scene_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/Blend_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/Bloom_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/BoxBlur_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/ColorAdjust_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/ColorInput_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/DisplacementMap_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/DistantLight_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/DropShadow_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/FloatMap_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/GaussianBlur_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/Glow_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/ImageInput_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/InnerShadow_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/Lighting_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/MotionBlur_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/PerspectiveTransform_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/PointLight_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/Reflection_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/SepiaTone_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/Shadow_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/SpotLight_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/image/ImageView_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/input/KeyCharacterCombination_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/input/KeyCodeCombination_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/input/Mnemonic_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/AnchorPane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BackgroundFill_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BackgroundImage_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BackgroundPosition_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BackgroundSize_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/Background_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BorderImage_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BorderPane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BorderStrokeStyle_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BorderStroke_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BorderWidths_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/Border_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/ColumnConstraints_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/FlowPane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/GridPane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/HBox_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/Pane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/Region_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/RowConstraints_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/StackPane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/TilePane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/VBox_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/paint/Color_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/paint/LinearGradient_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/paint/RadialGradient_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/paint/Stop_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/ArcTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Arc_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Circle_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/ClosePath_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/CubicCurveTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/CubicCurve_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Ellipse_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/HLineTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/LineTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Line_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/MoveTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Path_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Polygon_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Polyline_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/QuadCurveTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/QuadCurve_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Rectangle_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/SVGPath_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/VLineTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/text/Font_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/text/Text_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/transform/Affine_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/transform/Rotate_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/transform/Scale_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/transform/Shear_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/transform/Translate_builder_Test.java - javafx-ui-common/test/unit/javafx/stage/DirectoryChooser_builder_Test.java - javafx-ui-common/test/unit/javafx/stage/FileChooser_builder_Test.java - javafx-ui-common/test/unit/javafx/stage/Popup_builder_Test.java - javafx-ui-common/test/unit/javafx/stage/Stage_builder_Test.java - javafx-ui-controls/src/com/sun/javafx/scene/control/skin/AsciiBoard.txt - javafx-ui-controls/src/com/sun/javafx/scene/control/skin/SymbolBoard.txt - javafx-ui-quantum/test/com/sun/javafx/tk/quantum/RT17588Test.java - prism-common/src/com/sun/prism/RenderingContext.java - prism-common/src/com/sun/prism/impl/BaseRenderingContext.java - prism-es2/src/com/sun/prism/es2/ES2RenderingContext.java Changeset: 275b657cf9a7 Author: hudson Date: 2013-05-30 13:54 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/275b657cf9a7 Added tag 8.0-b92 for changeset 018368ab7327 ! .hgtags Changeset: b8fefd02229f Author: mv157916 Date: 2013-06-03 10:53 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/b8fefd02229f RT-30822: Update the JDK build number to b92 in rt/build.properties file in the JavaFX 8 Master forest. ! build.properties Changeset: ea108dc8da59 Author: jgodinez Date: 2013-06-04 09:43 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/ea108dc8da59 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt - javafx-builders/test/unit/com/sun/javafx/test/PropertiesTestBase.java - javafx-builders/test/unit/com/sun/javafx/test/PropertyReference.java - javafx-builders/test/unit/com/sun/javafx/test/binding/ReflectionHelper.java - javafx-builders/test/unit/javafx/scene/Node_properties_Test.java - javafx-builders/test/unit/javafx/scene/Scene_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Blend_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Bloom_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/BoxBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorAdjust_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DisplacementMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DistantLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DropShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/FloatMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/GaussianBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Glow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ImageInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/InnerShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Lighting_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/MotionBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PerspectiveTransform_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PointLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Reflection_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SepiaTone_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Shadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SpotLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/ArcTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Arc_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Circle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Ellipse_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/HLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/LineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Line_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/MoveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Path_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Rectangle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/SVGPath_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Shape_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/VLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/transform/Transform_properties_Test.java From mark.howe at oracle.com Tue Jun 4 10:58:50 2013 From: mark.howe at oracle.com (Mark Howe) Date: Tue, 4 Jun 2013 10:58:50 -0700 Subject: Preloaders In-Reply-To: References: <05E11FF5-5C95-465D-BDD5-2089A3EE16F2@gmail.com> Message-ID: <8BC3E092-F8A6-4969-898B-6A62A6A504D1@oracle.com> It should be the one within the bundle otherwise deploying an app bundle won't work. If you find otherwise please create an issue. Cheers Mark On May 29, 2013, at 6:51 AM, Scott Palmer wrote: > I think native bundles should use the preloader contained within. I use > the Preloader to implement a splash screen since my app takes a long time > to start up, even though all the jars are already "downloaded". > > > On Wed, May 29, 2013 at 8:40 AM, Daniel Zwolenski wrote: > >> The jfx packaging tools allow pre-loaders to be set. I don't use them but >> people using the maven plugin want them. >> >> It looks like you can set a preloader for both jars and for bundles (web, >> native). When building the bundles however they include the jar in them. So >> we end up with both the bundle, and the jar within the bundle, getting the >> preloader set. >> >> Does anyone know what will or should happen in this case? Does one >> preloader take precedence and the other is ignored, or are both used at >> different times and I should allow the user to set a different jar >> preloader to the bundle one, or is this setup invalid and I should actually >> not pass the preloader setting to one or the other in this case? >> >> Not using Preloaders myself and with the packaging tool code being a >> complete mess, it would be good to know the expectations here so I can >> properly support the users wanting this. >> >> Cheers >> Dan From hang.vo at oracle.com Tue Jun 4 12:27:53 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 19:27:53 +0000 Subject: hg: openjfx/2u/dev/rt: Added tag 2.2.40-b27 for changeset 2ed8cef9d3d0 Message-ID: <20130604192757.F33C748F46@hg.openjdk.java.net> Changeset: fac50f983ffa Author: hudson Date: 2013-05-29 14:41 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/fac50f983ffa Added tag 2.2.40-b27 for changeset 2ed8cef9d3d0 ! .hgtags From richard.bair at oracle.com Tue Jun 4 13:37:37 2013 From: richard.bair at oracle.com (Richard Bair) Date: Tue, 4 Jun 2013 13:37:37 -0700 (PDT) Subject: Handling uncaught exceptions during event dispatching Message-ID: <6178C9C0-CAAE-471D-BCFC-0488E94249FE@oracle.com> Hi, If I wanted to handle all uncaught exceptions that occurred during event dispatch (whether Mouse / Pulse / Key / Runnable / etc), how could I do it? I assume at present we can't. Is there a JIRA already for such a thing that anybody knows of? Thanks Richard From hang.vo at oracle.com Tue Jun 4 14:32:54 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 21:32:54 +0000 Subject: hg: openjfx/8/graphics/rt: RT-29890 Rendering Artifact on Cylinder and Sphere Message-ID: <20130604213314.2DB9548F4D@hg.openjdk.java.net> Changeset: eb4b66ebb62c Author: Yao Wang Date: 2013-06-04 14:21 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/eb4b66ebb62c RT-29890 Rendering Artifact on Cylinder and Sphere ! javafx-ui-common/src/javafx/scene/shape/Cylinder.java ! javafx-ui-common/src/javafx/scene/shape/Sphere.java From pedro.duquevieira at gmail.com Tue Jun 4 15:11:04 2013 From: pedro.duquevieira at gmail.com (Pedro Duque Vieira) Date: Tue, 4 Jun 2013 23:11:04 +0100 Subject: Performance Tips n' Tricks wiki page In-Reply-To: <207C6D1F-8350-4B74-865C-E59E1E90BEBF@oracle.com> References: <207C6D1F-8350-4B74-865C-E59E1E90BEBF@oracle.com> Message-ID: I remembered one more. Maybe it's already included in the "use FXCollections" bit but it's not explicitly stated. I think that using FXCollections methods toFront, toBack, etc is faster than reorganizing the collection manually, yourself, right? On another subject, I think it would be important to explain how one can debug if the cache hint is being used successfully or if it is hurting performance. Thanks, cheers, On Tue, Jun 4, 2013 at 12:28 AM, Richard Bair wrote: > Thanks Pedro, will put these on the wiki. The layout vs. bind is an > interesting question and one that isn't entirely clear. I use some of both > depending, really, on what is most natural for the case I'm facing rather > than on a strict performance basis. Because Java doesn't have binding in > the language, it is harder to use it so excessively that it causes a > problem like it could in FX Script. > > Richard > > On Jun 3, 2013, at 3:54 PM, Pedro Duque Vieira < > pedro.duquevieira at gmail.com> wrote: > > > Hi, > > > > Some of my ideas (might be wrong): > > - use layouts whenever possible instead of binds for laying out nodes > > - reduce use of effects. If the effect is static use images instead of > > effect > > - In javafx 1.3 it would cost more to use stroke instead of a fill. For > > instance if you have a rectangle with a stroke with would be more > efficient > > to draw 2 rectangles with a fill, so the other one would be used to > produce > > the stroke. Don't know if this still applies. > > > > My 2 cents. Kind regards, > > > > -- > > Pedro Duque Vieira > > -- Pedro Duque Vieira From John_Smith at symantec.com Tue Jun 4 15:13:43 2013 From: John_Smith at symantec.com (John Smith) Date: Tue, 4 Jun 2013 15:13:43 -0700 Subject: Handling uncaught exceptions during event dispatching In-Reply-To: <6178C9C0-CAAE-471D-BCFC-0488E94249FE@oracle.com> References: <6178C9C0-CAAE-471D-BCFC-0488E94249FE@oracle.com> Message-ID: <411E73D23DEC4C46BA48F2B6D8BF3D22167AC11325@TUS1XCHEVSPIN34.SYMC.SYMANTEC.COM> RT-30239 "Use Thread.UncaughtExceptionHandler instead of ExceptionDescribe() to report exceptions" https://javafx-jira.kenai.com/browse/RT-30239 It was fixed by Artem Ananiev for Java 8 It links outstanding: RT-30369 "Lens: implement RT-30239, Thread.UncaughtExceptionHandler" https://javafx-jira.kenai.com/browse/RT-30369 I don't know if the Lens Jira is relevant, as I don't know what Lens is, but I'm sure you do. -----Original Message----- From: openjfx-dev-bounces at openjdk.java.net [mailto:openjfx-dev-bounces at openjdk.java.net] On Behalf Of Richard Bair Sent: Tuesday, June 04, 2013 1:38 PM To: OpenJFX Mailing List Subject: Handling uncaught exceptions during event dispatching Hi, If I wanted to handle all uncaught exceptions that occurred during event dispatch (whether Mouse / Pulse / Key / Runnable / etc), how could I do it? I assume at present we can't. Is there a JIRA already for such a thing that anybody knows of? Thanks Richard From hang.vo at oracle.com Tue Jun 4 15:19:07 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 22:19:07 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130604221932.1419B48F4F@hg.openjdk.java.net> Changeset: 06fc41c8f8b1 Author: Alexander Kouznetsov Date: 2013-06-04 15:10 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/06fc41c8f8b1 3DViewer: Improved optimizer to remove only middle KeyValues of a repeating sequences ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 3efe9d22038b Author: Alexander Kouznetsov Date: 2013-06-04 15:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/3efe9d22038b 3DViewer: Not comparing interpolators or KeyValues before fix for RT-30891 is in. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java From richard.bair at oracle.com Tue Jun 4 15:39:47 2013 From: richard.bair at oracle.com (Richard Bair) Date: Tue, 4 Jun 2013 15:39:47 -0700 Subject: Handling uncaught exceptions during event dispatching In-Reply-To: <411E73D23DEC4C46BA48F2B6D8BF3D22167AC11325@TUS1XCHEVSPIN34.SYMC.SYMANTEC.COM> References: <6178C9C0-CAAE-471D-BCFC-0488E94249FE@oracle.com> <411E73D23DEC4C46BA48F2B6D8BF3D22167AC11325@TUS1XCHEVSPIN34.SYMC.SYMANTEC.COM> Message-ID: <718253DB-58A8-4DF1-AE7A-3F772C3B7115@oracle.com> Thanks! Lens is the Glass implementation for Embedded. Richard On Jun 4, 2013, at 3:13 PM, John Smith wrote: > RT-30239 "Use Thread.UncaughtExceptionHandler instead of ExceptionDescribe() to report exceptions" > https://javafx-jira.kenai.com/browse/RT-30239 > It was fixed by Artem Ananiev for Java 8 > > It links outstanding: > RT-30369 "Lens: implement RT-30239, Thread.UncaughtExceptionHandler" > https://javafx-jira.kenai.com/browse/RT-30369 > > I don't know if the Lens Jira is relevant, as I don't know what Lens is, but I'm sure you do. > > -----Original Message----- > From: openjfx-dev-bounces at openjdk.java.net [mailto:openjfx-dev-bounces at openjdk.java.net] On Behalf Of Richard Bair > Sent: Tuesday, June 04, 2013 1:38 PM > To: OpenJFX Mailing List > Subject: Handling uncaught exceptions during event dispatching > > Hi, > > If I wanted to handle all uncaught exceptions that occurred during event dispatch (whether Mouse / Pulse / Key / Runnable / etc), how could I do it? I assume at present we can't. Is there a JIRA already for such a thing that anybody knows of? > > Thanks > Richard From hang.vo at oracle.com Tue Jun 4 15:48:47 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 22:48:47 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30913 Add Modena and 3DViewer to automated build Message-ID: <20130604224859.4DBE348F52@hg.openjdk.java.net> Changeset: 6b3080191250 Author: dmasada Date: 2013-06-04 15:39 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/6b3080191250 RT-30913 Add Modena and 3DViewer to automated build ! apps/build.xml ! apps/experiments/3DViewer/build.xml ! apps/experiments/Modena/build.xml ! apps/experiments/Modena/nbproject/project.properties + apps/experiments/build.xml From hang.vo at oracle.com Tue Jun 4 16:05:30 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 04 Jun 2013 23:05:30 +0000 Subject: hg: openjfx/8/controls/rt: fix broken TabPaneTest Message-ID: <20130604230600.85FB848F53@hg.openjdk.java.net> Changeset: d59635859529 Author: psomashe Date: 2013-06-04 16:02 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/d59635859529 fix broken TabPaneTest ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java From hang.vo at oracle.com Tue Jun 4 17:06:17 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 00:06:17 +0000 Subject: hg: openjfx/8/graphics/rt: 3 new changesets Message-ID: <20130605000707.BC7F748F56@hg.openjdk.java.net> Changeset: 39089954dc77 Author: "Jasper Potts" Date: 2013-06-04 13:14 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/39089954dc77 3D Viewer App: Added optimize and Java Source export ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/javasource/JavaSourceExporter.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Importer3D.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/ContentModel.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/main.fxml Changeset: 597c09e7d90d Author: "Jasper Potts" Date: 2013-06-04 16:59 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/597c09e7d90d 3D Viewer App: Added timeline controls and display screen ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/ContentModel.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/TimelineController.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/TimelineDisplay.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/main.fxml ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/viewer.css + apps/experiments/3DViewer/src/test/java/com/javafx/experiments/exporters/javasource/JavaSourceExporterTestApp.java Changeset: 1b69050a634b Author: "Jasper Potts" Date: 2013-06-04 16:59 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/1b69050a634b Merge ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java From zonski at gmail.com Tue Jun 4 17:09:09 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Wed, 5 Jun 2013 10:09:09 +1000 Subject: When will JFX be fully open sourced? Message-ID: Niklas and I have been working on getting the RoboVM Maven plugin working - it is in the final stages of testing. This is *without* JavaFX however. We are waiting on the final parts of JavaFX to be open sourced before doing this. When is this due to happen? From richard.bair at oracle.com Tue Jun 4 17:33:13 2013 From: richard.bair at oracle.com (Richard Bair) Date: Tue, 4 Jun 2013 17:33:13 -0700 (PDT) Subject: When will JFX be fully open sourced? In-Reply-To: References: Message-ID: <00E70E9F-89BE-4A80-8951-3487395B0051@oracle.com> The accessibility stuff is going out this week, and the font pieces in mid June. Media we're in process of but I don't have a date. Is there anything else missing? I had heard from Danno that fonts & accessibility were the big blockers. Richard On Jun 4, 2013, at 5:09 PM, Daniel Zwolenski wrote: > Niklas and I have been working on getting the RoboVM Maven plugin working - > it is in the final stages of testing. > > This is *without* JavaFX however. We are waiting on the final parts of > JavaFX to be open sourced before doing this. When is this due to happen? From zonski at gmail.com Tue Jun 4 17:36:26 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Wed, 5 Jun 2013 10:36:26 +1000 Subject: When will JFX be fully open sourced? In-Reply-To: <00E70E9F-89BE-4A80-8951-3487395B0051@oracle.com> References: <00E70E9F-89BE-4A80-8951-3487395B0051@oracle.com> Message-ID: Danno, what do you need to wrap it up? Basically I'm intending to have the Maven plugin automatically use a build of Danno's backport for iOS (that I'm hoping Danno will provide for me). Once this exists I can do the Maven side of it. On Wed, Jun 5, 2013 at 10:33 AM, Richard Bair wrote: > The accessibility stuff is going out this week, and the font pieces in mid > June. Media we're in process of but I don't have a date. Is there anything > else missing? I had heard from Danno that fonts & accessibility were the > big blockers. > > Richard > > On Jun 4, 2013, at 5:09 PM, Daniel Zwolenski wrote: > > > Niklas and I have been working on getting the RoboVM Maven plugin > working - > > it is in the final stages of testing. > > > > This is *without* JavaFX however. We are waiting on the final parts of > > JavaFX to be open sourced before doing this. When is this due to happen? > > From danno.ferrin at shemnon.com Tue Jun 4 17:45:57 2013 From: danno.ferrin at shemnon.com (Danno Ferrin) Date: Tue, 4 Jun 2013 18:45:57 -0600 Subject: When will JFX be fully open sourced? In-Reply-To: <00E70E9F-89BE-4A80-8951-3487395B0051@oracle.com> References: <00E70E9F-89BE-4A80-8951-3487395B0051@oracle.com> Message-ID: By blockers I mean won't compile without an outside jar and won't run on Java 7, I don't want to do a blog post about Jfx78 until it runs on a Java7 vm. Removing discrete stuff like SwingNode and Media is fine, but without fonts and accessibility nothing runs. Hopefully at that point a serious pass at JFX on Dalvik can be done. --Danno On Tue, Jun 4, 2013 at 6:33 PM, Richard Bair wrote: > The accessibility stuff is going out this week, and the font pieces in mid > June. Media we're in process of but I don't have a date. Is there anything > else missing? I had heard from Danno that fonts & accessibility were the > big blockers. > > Richard > > On Jun 4, 2013, at 5:09 PM, Daniel Zwolenski wrote: > > > Niklas and I have been working on getting the RoboVM Maven plugin > working - > > it is in the final stages of testing. > > > > This is *without* JavaFX however. We are waiting on the final parts of > > JavaFX to be open sourced before doing this. When is this due to happen? > > From danno.ferrin at shemnon.com Tue Jun 4 18:43:07 2013 From: danno.ferrin at shemnon.com (Danno Ferrin) Date: Tue, 4 Jun 2013 19:43:07 -0600 Subject: When will JFX be fully open sourced? In-Reply-To: References: <00E70E9F-89BE-4A80-8951-3487395B0051@oracle.com> Message-ID: I just need to set up a Jenkins build to publish poems on the cloud bees server. I should have the free time by the end of the week. I am also going to publish the ant-javafx jars as well so our build plugins can pull those. Getting the native jars built automatically will be the tricky part, I think CloudBees only offers Linux for free. I am not sure if they have Mac or windows agents available. On Jun 4, 2013 7:00 PM, "Daniel Zwolenski" wrote: > Danno, what do you need to wrap it up? > > Basically I'm intending to have the Maven plugin automatically use a build > of Danno's backport for iOS (that I'm hoping Danno will provide for me). > Once this exists I can do the Maven side of it. > > > > On Wed, Jun 5, 2013 at 10:33 AM, Richard Bair >wrote: > > > The accessibility stuff is going out this week, and the font pieces in > mid > > June. Media we're in process of but I don't have a date. Is there > anything > > else missing? I had heard from Danno that fonts & accessibility were the > > big blockers. > > > > Richard > > > > On Jun 4, 2013, at 5:09 PM, Daniel Zwolenski wrote: > > > > > Niklas and I have been working on getting the RoboVM Maven plugin > > working - > > > it is in the final stages of testing. > > > > > > This is *without* JavaFX however. We are waiting on the final parts of > > > JavaFX to be open sourced before doing this. When is this due to > happen? > > > > > From hang.vo at oracle.com Tue Jun 4 23:18:37 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 06:18:37 +0000 Subject: hg: openjfx/8/controls/rt: revert computePrefW/H of TabPaneSkin to return W/H based on content instead of a constant. Message-ID: <20130605061917.51D0B48F5F@hg.openjdk.java.net> Changeset: a2978f7aae56 Author: psomashe Date: 2013-06-04 23:14 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/a2978f7aae56 revert computePrefW/H of TabPaneSkin to return W/H based on content instead of a constant. ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java From hang.vo at oracle.com Wed Jun 5 00:45:30 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 07:45:30 +0000 Subject: hg: openjfx/8/controls/rt: 3 new changesets Message-ID: <20130605074658.906A348F70@hg.openjdk.java.net> Changeset: 2d44c792b77d Author: psomashe Date: 2013-06-05 00:01 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/2d44c792b77d Backed out changeset a2978f7aae56 ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: a6e13c635c15 Author: psomashe Date: 2013-06-05 00:06 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/a6e13c635c15 reverting changes to TabPaneSkin ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: 1e300104bbc6 Author: psomashe Date: 2013-06-05 00:06 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/1e300104bbc6 reverting changes to TabPaneSkin ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java From hjohn at xs4all.nl Wed Jun 5 02:29:25 2013 From: hjohn at xs4all.nl (John Hendrikx) Date: Wed, 05 Jun 2013 11:29:25 +0200 Subject: Usecase for needsLayout property? Message-ID: <51AF04F5.9010202@xs4all.nl> I'm having a bit of a chicken-egg problem with regards to some dynamically sized components I'm displaying in my application. Description: I have a group with a title that wraps some content and displays a title above it -- the entire group, including the title must be hidden and unmanaged when the content it is wrapping is empty, here it is in code: protected Pane createTitledBlock(final String title, final Node content, final BooleanExpression visibleCondition) { return new VBox() {{ setFillWidth(true); getChildren().add(new Label(title) {{ getStyleClass().add("header"); }}); getChildren().add(content); if(visibleCondition != null) { managedProperty().bind(visibleCondition); visibleProperty().bind(visibleCondition); } }}; } Problem: When the content becomes available and visibleCondition gets toggled to true, the content part of the titled group is not yet laid out. This causes the title to be visible without any content briefly until a layout pass occurs. Timeline: - Group with title is hidden/unmanaged - The content gets updated and visibleCondition is set to true - Group with title becomes visible/managed - Briefly an empty group with title is displayed - Layout occurs, group with title gets resized Now, I'm thinking of playing with the needsLayout property and delaying the making visible/managed of the titled group until needsLayout is false... however, I have a feeling that won't work as an unmanaged/hidden group is probably not gonna participate in the layout, resulting in needsLayout never becoming false again as it is not visible/managed yet... Any ideas how I could resolve this, and have the group with title only visible and managed when it is properly laid out? Also, has any progress in general been made with regards to hidden/unmanaged controls and determining their expected size when they're made visible/managed? --John From martin.sladecek at oracle.com Wed Jun 5 04:04:16 2013 From: martin.sladecek at oracle.com (Martin Sladecek) Date: Wed, 05 Jun 2013 13:04:16 +0200 Subject: Usecase for needsLayout property? In-Reply-To: <51AF04F5.9010202@xs4all.nl> References: <51AF04F5.9010202@xs4all.nl> Message-ID: <51AF1B30.3020204@oracle.com> Hi John, the problem you described is most likely caused by something else as the layout pass occurs BEFORE the actual rendering. Also, you bind managed and visible of the entire VBox, not just the title. So it's strange that you see Label correctly laid-out, but not the content. Can you make some sample and attach it to a JIRA issue, so I can have a look what's actually happening there? Thanks, -Martin On 06/05/2013 11:29 AM, John Hendrikx wrote: > I'm having a bit of a chicken-egg problem with regards to some > dynamically sized components I'm displaying in my application. > > Description: > I have a group with a title that wraps some content and displays a > title above it -- the entire group, including the title must be hidden > and unmanaged when the content it is wrapping is empty, here it is in > code: > > protected Pane createTitledBlock(final String title, final Node > content, final BooleanExpression visibleCondition) { > return new VBox() {{ > setFillWidth(true); > getChildren().add(new Label(title) {{ > getStyleClass().add("header"); > }}); > getChildren().add(content); > if(visibleCondition != null) { > managedProperty().bind(visibleCondition); > visibleProperty().bind(visibleCondition); > } > }}; > } > > > Problem: > When the content becomes available and visibleCondition gets toggled > to true, the content part of the titled group is not yet laid out. > This causes the title to be visible without any content briefly until > a layout pass occurs. > > Timeline: > - Group with title is hidden/unmanaged > - The content gets updated and visibleCondition is set to true > - Group with title becomes visible/managed > - Briefly an empty group with title is displayed > - Layout occurs, group with title gets resized > > Now, I'm thinking of playing with the needsLayout property and > delaying the making visible/managed of the titled group until > needsLayout is false... however, I have a feeling that won't work as > an unmanaged/hidden group is probably not gonna participate in the > layout, resulting in needsLayout never becoming false again as it is > not visible/managed yet... > > Any ideas how I could resolve this, and have the group with title only > visible and managed when it is properly laid out? > > Also, has any progress in general been made with regards to > hidden/unmanaged controls and determining their expected size when > they're made visible/managed? > > --John From pavel.safrata at oracle.com Wed Jun 5 04:49:08 2013 From: pavel.safrata at oracle.com (Pavel Safrata) Date: Wed, 05 Jun 2013 13:49:08 +0200 Subject: [API review] RT-30668: ClipboardContent has buggy API Message-ID: <51AF25B4.6060602@oracle.com> Hello, ClipboardContent API contradicts itself and the documentation doesn't match the behavior. Issue 1: Every putSomething method documentation says: * Setting this value to null effectively clears it from the clipboard. * @throws NullPointerException if null reference is passed We need to choose one of the two described behaviors. Currently the code throws NPE. For some complicated content creation logic the clearing may be useful, so I propose to let the passed null reference clear the value. Issue 2: Every putSomething method documentation says: * @return True if the something was successfully placed on the clipboard. And in other places it refers to "this clipboard". But this is not clipboard, it is the ClipboardContent which is later set to the Clipboard - and this operation returns the "successful" boolean. So we definitely should rephrase the documentation. In the "putter", if we say * @return True if the something was successfully placed on the clipboard content. then it needs to always return true (putting a reference to a map doesn't fail) which is not the case right now (right now the behavior is senseless, it returns true if the same thing is put there for the second time). As the "always true" is not really useful, and because of backward compatibility we can hardly change the return value to map's usual "previous value", we can consider at least redefining the boolean to something like "returns true if a previously added value was replaced". What do you think? I'd probably go with the "always true", which not useful but at least quite intuitive. I would document it to return always true to spare users pointless checks. Thanks, Pavel From hang.vo at oracle.com Wed Jun 5 04:59:36 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 11:59:36 +0000 Subject: hg: openjfx/8/graphics/rt: 5 new changesets Message-ID: <20130605120138.BE9EB48F80@hg.openjdk.java.net> Changeset: 4d270a8b1c08 Author: Martin Sladecek Date: 2013-06-05 11:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/4d270a8b1c08 [JAVADOC] RT-30848 Missing documentation of Region.layoutInArea + since tag to Parent#requestParentLayout ! javafx-ui-common/src/javafx/scene/Parent.java ! javafx-ui-common/src/javafx/scene/layout/Region.java Changeset: 1960366c3157 Author: Martin Sladecek Date: 2013-06-05 11:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/1960366c3157 Automated merge with file:///home/martin/work/jfx-80-sync/rt Changeset: d8cc9c99d9f4 Author: Martin Sladecek Date: 2013-06-05 11:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/d8cc9c99d9f4 Automated merge with file:///home/martin/work/jfx-80-sync/rt Changeset: 8bebc4d79bfe Author: Martin Sladecek Date: 2013-06-05 13:43 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/8bebc4d79bfe RT-30831 Unsorted mode in the SortedList ! javafx-beans/src/javafx/collections/transformation/SortedList.java ! javafx-beans/test/javafx/collections/SortedListTest.java Changeset: 82df4606a165 Author: Martin Sladecek Date: 2013-06-05 13:43 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/82df4606a165 merge From zonski at gmail.com Wed Jun 5 05:14:37 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Wed, 5 Jun 2013 22:14:37 +1000 Subject: Preloaders In-Reply-To: <8BC3E092-F8A6-4969-898B-6A62A6A504D1@oracle.com> References: <05E11FF5-5C95-465D-BDD5-2089A3EE16F2@gmail.com> <8BC3E092-F8A6-4969-898B-6A62A6A504D1@oracle.com> Message-ID: Thanks Mark. If the user sets a preloader in the plugin I'm going to pass that same class to the jar and to the native bundle. I guess people will complain to me if that doesn't work and I'll point them your way. Are they ever going to let you do some packager stuff? I gave up waiting for the revolution and rebuilt the maven plugin to be less crap than it was but its the underlying packaging tools that need the rewrite if JFX is ever going to have a decent deployment option. On 05/06/2013, at 3:58 AM, Mark Howe wrote: > It should be the one within the bundle otherwise deploying an app bundle won't work. If you find otherwise please create an issue. > > > Cheers > Mark > > On May 29, 2013, at 6:51 AM, Scott Palmer wrote: > >> I think native bundles should use the preloader contained within. I use >> the Preloader to implement a splash screen since my app takes a long time >> to start up, even though all the jars are already "downloaded". >> >> >> On Wed, May 29, 2013 at 8:40 AM, Daniel Zwolenski wrote: >> >>> The jfx packaging tools allow pre-loaders to be set. I don't use them but >>> people using the maven plugin want them. >>> >>> It looks like you can set a preloader for both jars and for bundles (web, >>> native). When building the bundles however they include the jar in them. So >>> we end up with both the bundle, and the jar within the bundle, getting the >>> preloader set. >>> >>> Does anyone know what will or should happen in this case? Does one >>> preloader take precedence and the other is ignored, or are both used at >>> different times and I should allow the user to set a different jar >>> preloader to the bundle one, or is this setup invalid and I should actually >>> not pass the preloader setting to one or the other in this case? >>> >>> Not using Preloaders myself and with the packaging tool code being a >>> complete mess, it would be good to know the expectations here so I can >>> properly support the users wanting this. >>> >>> Cheers >>> Dan > From hang.vo at oracle.com Wed Jun 5 05:21:05 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 12:21:05 +0000 Subject: hg: openjfx/8/controls/rt: 74 new changesets Message-ID: <20130605124652.6D67B48F83@hg.openjdk.java.net> Changeset: 75b3b8e4530b Author: mhowe Date: 2013-05-24 16:05 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/75b3b8e4530b RT-29058: Need a macro in the config files to expand to the app bundle directory [ngthomas, ddehaven] ! deploy/packager/native/linux/launcher.c ! deploy/packager/native/macosx/main.m ! deploy/packager/native/windows/WinLauncher.cpp Changeset: 018368ab7327 Author: ngthomas Date: 2013-05-29 13:43 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/018368ab7327 Merge - javafx-annotation-processor/.settings/org.eclipse.jdt.core.prefs - javafx-annotation-processor/.settings/org.eclipse.jdt.launching.prefs - javafx-annotation-processor/build-closed.xml - javafx-annotation-processor/build-common.xml - javafx-annotation-processor/build.xml - javafx-annotation-processor/nbproject/project.xml - javafx-annotation-processor/project.properties - javafx-annotation-processor/src/META-INF/services/javax.annotation.processing.Processor - javafx-annotation-processor/src/javafx/builder/processor/AnnotationUtils.java - javafx-annotation-processor/src/javafx/builder/processor/BuilderProcessor.java - javafx-annotation-processor/src/javafx/builder/processor/BuilderProcessor.properties - javafx-annotation-processor/src/javafx/builder/processor/Scanned.java - javafx-beans/src/com/sun/javafx/beans/annotations/DuplicateInBuilderProperties.java - javafx-beans/src/com/sun/javafx/beans/annotations/NoBuilder.java - javafx-beans/src/com/sun/javafx/beans/annotations/NoInit.java - javafx-ui-common/src/com/sun/javafx/print/PrintAccess.java - javafx-ui-common/src/com/sun/javafx/scene/CameraAccess.java - javafx-ui-common/src/com/sun/javafx/scene/NodeAccess.java - javafx-ui-common/src/com/sun/javafx/scene/SubSceneAccess.java - javafx-ui-common/src/javafx/print/PrintAccessor.java - javafx-ui-common/test/unit/com/sun/javafx/test/BuilderProxy.java - javafx-ui-common/test/unit/com/sun/javafx/test/BuilderTestBase.java - javafx-ui-common/test/unit/javafx/animation/FadeTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/FillTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/ParallelTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/PathTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/PauseTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/RotateTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/ScaleTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/SequentialTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/StrokeTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/animation/TranslateTransition_builder_Test.java - javafx-ui-common/test/unit/javafx/geometry/BoundingBox_builder_Test.java - javafx-ui-common/test/unit/javafx/geometry/Dimension2D_builder_Test.java - javafx-ui-common/test/unit/javafx/geometry/Insets_builder_Test.java - javafx-ui-common/test/unit/javafx/geometry/Point2D_builder_Test.java - javafx-ui-common/test/unit/javafx/geometry/Point3D_builder_Test.java - javafx-ui-common/test/unit/javafx/geometry/Rectangle2D_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/Group_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/ImageCursor_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/Node_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/PerspectiveCamera_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/Scene_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/Blend_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/Bloom_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/BoxBlur_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/ColorAdjust_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/ColorInput_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/DisplacementMap_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/DistantLight_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/DropShadow_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/FloatMap_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/GaussianBlur_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/Glow_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/ImageInput_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/InnerShadow_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/Lighting_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/MotionBlur_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/PerspectiveTransform_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/PointLight_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/Reflection_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/SepiaTone_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/Shadow_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/effect/SpotLight_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/image/ImageView_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/input/KeyCharacterCombination_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/input/KeyCodeCombination_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/input/Mnemonic_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/AnchorPane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BackgroundFill_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BackgroundImage_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BackgroundPosition_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BackgroundSize_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/Background_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BorderImage_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BorderPane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BorderStrokeStyle_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BorderStroke_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/BorderWidths_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/Border_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/ColumnConstraints_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/FlowPane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/GridPane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/HBox_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/Pane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/Region_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/RowConstraints_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/StackPane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/TilePane_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/layout/VBox_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/paint/Color_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/paint/LinearGradient_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/paint/RadialGradient_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/paint/Stop_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/ArcTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Arc_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Circle_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/ClosePath_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/CubicCurveTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/CubicCurve_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Ellipse_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/HLineTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/LineTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Line_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/MoveTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Path_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Polygon_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Polyline_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/QuadCurveTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/QuadCurve_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/Rectangle_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/SVGPath_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/shape/VLineTo_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/text/Font_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/text/Text_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/transform/Affine_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/transform/Rotate_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/transform/Scale_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/transform/Shear_builder_Test.java - javafx-ui-common/test/unit/javafx/scene/transform/Translate_builder_Test.java - javafx-ui-common/test/unit/javafx/stage/DirectoryChooser_builder_Test.java - javafx-ui-common/test/unit/javafx/stage/FileChooser_builder_Test.java - javafx-ui-common/test/unit/javafx/stage/Popup_builder_Test.java - javafx-ui-common/test/unit/javafx/stage/Stage_builder_Test.java - javafx-ui-controls/src/com/sun/javafx/scene/control/skin/AsciiBoard.txt - javafx-ui-controls/src/com/sun/javafx/scene/control/skin/SymbolBoard.txt - javafx-ui-quantum/test/com/sun/javafx/tk/quantum/RT17588Test.java - prism-common/src/com/sun/prism/RenderingContext.java - prism-common/src/com/sun/prism/impl/BaseRenderingContext.java - prism-es2/src/com/sun/prism/es2/ES2RenderingContext.java Changeset: 275b657cf9a7 Author: hudson Date: 2013-05-30 13:54 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/275b657cf9a7 Added tag 8.0-b92 for changeset 018368ab7327 ! .hgtags Changeset: b8fefd02229f Author: mv157916 Date: 2013-06-03 10:53 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/b8fefd02229f RT-30822: Update the JDK build number to b92 in rt/build.properties file in the JavaFX 8 Master forest. ! build.properties Changeset: 4aa29e84eb5e Author: flar Date: 2013-05-28 14:03 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/4aa29e84eb5e Fix RT-30254: PixelReader fails for grayscale JPEG images ! prism-common/src/com/sun/prism/Image.java Changeset: 620ba7384511 Author: flar Date: 2013-05-28 19:32 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/620ba7384511 Fix RT-29929 - exceptions with cached shapes due to NaN comparisons ! javafx-geom/src/com/sun/javafx/geom/RectBounds.java Changeset: 0d994ae9c839 Author: Seeon Birger Date: 2013-05-29 12:34 +0300 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/0d994ae9c839 Dual commit (ea2) - Fix RT-30627 - Virtual Keyboard moves to the background after switching to a another window ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/FXVKSkin.java Changeset: ec7bf9d52d7b Author: Pavel Safrata Date: 2013-05-29 12:33 +0100 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/ec7bf9d52d7b RT-30731: methods marked protected by accident removed form public API. ! javafx-ui-common/src/javafx/scene/ParallelCamera.java ! javafx-ui-common/src/javafx/scene/PerspectiveCamera.java Changeset: 1d085d9d983c Author: lepopov Date: 2013-05-29 16:58 +0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/1d085d9d983c Fixed RT-29404 WebView scroll bar thumb hit testing is incorrect ! webview/src/com/sun/javafx/webkit/theme/ScrollBarThemeImpl.java Changeset: c375e7b5faf1 Author: Martin Sladecek Date: 2013-05-29 16:02 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/c375e7b5faf1 HBox optimizations + minor layout optimizations in Region and Shapes ! javafx-ui-common/src/javafx/scene/layout/FlowPane.java ! javafx-ui-common/src/javafx/scene/layout/GridPane.java ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-common/src/javafx/scene/layout/StackPane.java ! javafx-ui-common/src/javafx/scene/layout/TilePane.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java ! javafx-ui-common/src/javafx/scene/shape/Arc.java ! javafx-ui-common/src/javafx/scene/shape/Circle.java ! javafx-ui-common/src/javafx/scene/shape/Ellipse.java ! javafx-ui-common/src/javafx/scene/shape/Line.java ! javafx-ui-common/src/javafx/scene/shape/Rectangle.java ! javafx-ui-common/test/unit/javafx/scene/layout/HBoxTest.java Changeset: 6d06aa1a268b Author: Martin Sladecek Date: 2013-05-29 16:10 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/6d06aa1a268b Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt ! javafx-ui-common/src/javafx/scene/layout/GridPane.java ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/StackPane.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java Changeset: 0c4d51bfacdf Author: Martin Sladecek Date: 2013-05-29 16:14 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/0c4d51bfacdf after-merge fixes ! javafx-ui-common/src/javafx/scene/layout/HBox.java Changeset: 122d1f72e7c5 Author: snorthov Date: 2013-05-29 12:09 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/122d1f72e7c5 fix .classpath ! .classpath Changeset: 44c4d06279d4 Author: snorthov Date: 2013-05-29 12:27 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/44c4d06279d4 fix .classpath [add source for builders] ! .classpath Changeset: 609746f32d1b Author: Felipe Heidrich Date: 2013-05-29 09:53 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/609746f32d1b [eclipse only] fix .classpath ! .classpath Changeset: 7d97d6e4f096 Author: Richard Bair Date: 2013-05-29 10:43 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/7d97d6e4f096 Fixes to build with IntelliJ - SimpleViewerApp and FXVKSkin both needed a "final" keyword added in order to build on 7 (and we're trying to use as little dependence on 8 as possible to support the communities JDK 7 backport of FX 8) - Modena's SamplePage needed to have replacements for some builders and changes in how other builders were used - A bunch of duplicate test classes were in javafx-builders which made IDEA very unhappy. ! apps/experiments/3DViewer/3D Viewer.iml ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SimpleViewerApp.java ! apps/experiments/Modena/Modena.iml ! apps/experiments/Modena/src/modena/SamplePage.java ! apps/samples/Ensemble8/Ensemble8.iml ! javafx-builders/test/unit/com/sun/javafx/test/BuilderProxy.java - javafx-builders/test/unit/com/sun/javafx/test/PropertiesTestBase.java - javafx-builders/test/unit/com/sun/javafx/test/PropertyReference.java - javafx-builders/test/unit/com/sun/javafx/test/binding/ReflectionHelper.java - javafx-builders/test/unit/javafx/scene/Node_properties_Test.java - javafx-builders/test/unit/javafx/scene/Scene_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Blend_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Bloom_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/BoxBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorAdjust_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DisplacementMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DistantLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DropShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/FloatMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/GaussianBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Glow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ImageInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/InnerShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Lighting_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/MotionBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PerspectiveTransform_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PointLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Reflection_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SepiaTone_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Shadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SpotLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/ArcTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Arc_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Circle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Ellipse_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/HLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/LineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Line_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/MoveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Path_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Rectangle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/SVGPath_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Shape_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/VLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/transform/Transform_properties_Test.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/FXVKSkin.java Changeset: 167bc510ce34 Author: snorthov Date: 2013-05-29 16:05 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/167bc510ce34 RT-26702: Poor DisplacementMap effect performance on Mac [Java code only, fixes potential drawing of garbage on first frame on OS X] ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PresentingPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/ViewPainter.java Changeset: c75bd11d9865 Author: jgodinez Date: 2013-05-29 13:35 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/c75bd11d9865 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt - javafx-builders/test/unit/com/sun/javafx/test/PropertiesTestBase.java - javafx-builders/test/unit/com/sun/javafx/test/PropertyReference.java - javafx-builders/test/unit/com/sun/javafx/test/binding/ReflectionHelper.java - javafx-builders/test/unit/javafx/scene/Node_properties_Test.java - javafx-builders/test/unit/javafx/scene/Scene_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Blend_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Bloom_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/BoxBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorAdjust_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DisplacementMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DistantLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DropShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/FloatMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/GaussianBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Glow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ImageInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/InnerShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Lighting_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/MotionBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PerspectiveTransform_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PointLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Reflection_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SepiaTone_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Shadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SpotLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/ArcTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Arc_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Circle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Ellipse_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/HLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/LineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Line_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/MoveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Path_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Rectangle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/SVGPath_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Shape_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/VLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/transform/Transform_properties_Test.java Changeset: eb0ca6ba0558 Author: snorthov Date: 2013-05-29 16:57 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/eb0ca6ba0558 Comment RT-26702: Poor DisplacementMap effect performance on Mac [Java code only, fixes potential drawing of garbage on first frame on OS X] ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/UploadingPainter.java Changeset: 3e330c5301c2 Author: snorthov Date: 2013-05-29 23:46 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/3e330c5301c2 RT-30287: No rendering after scene graph update due to poor synchronization ! javafx-ui-common/src/com/sun/javafx/tk/TKScene.java ! javafx-ui-common/src/javafx/scene/Scene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/GlassScene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PaintCollector.java ! test-stub-toolkit/src/com/sun/javafx/pgstub/StubScene.java Changeset: c200cd542665 Author: Martin Sladecek Date: 2013-05-30 08:19 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/c200cd542665 Replaced lambdas in FilteredList and TransformationList with anonymous classes. ! javafx-beans/src/javafx/collections/transformation/FilteredList.java ! javafx-beans/src/javafx/collections/transformation/TransformationList.java Changeset: 8018a7293402 Author: Felipe Heidrich Date: 2013-05-29 23:42 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/8018a7293402 RT-30711: Fix padding of dirty regions so as to avoid padding unless we're dealing with lcd text ! javafx-sg-common/src/com/sun/javafx/sg/BaseNode.java ! javafx-sg-prism/src/com/sun/javafx/sg/prism/NGText.java Changeset: a99a0da62147 Author: Pavel Safrata Date: 2013-05-30 08:26 +0100 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/a99a0da62147 [DOC-ONLY]: added the second asterisk for the comments to become visible for Javadoc. ! javafx-ui-common/src/javafx/application/ConditionalFeature.java Changeset: 32f8e83c9e92 Author: Pavel Safrata Date: 2013-05-30 08:29 +0100 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/32f8e83c9e92 [DOC-ONLY]: added missing comment. ! javafx-ui-common/src/javafx/scene/input/MouseEvent.java Changeset: 55c9c3a55f58 Author: Eva Krejcirova Date: 2013-05-30 10:35 +0100 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/55c9c3a55f58 Method marked public by accident removed form public API ! javafx-ui-common/src/javafx/scene/shape/Arc.java Changeset: 0da32bf95d30 Author: Oldrich Maticka Date: 2013-05-30 11:56 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/0da32bf95d30 iOS: Native library loading fixed for iOS. Adding missing JNI_OnLoad_*() functions, etc. Reviewed by David Pulkrabek. ! glass/glass-lib-ios/src/GlassApplication.m ! glass/glass/src/com/sun/glass/utils/NativeLibLoader.java ! javafx-iio-native/src/ios/com_sun_javafx_iio_ios_IosImageLoader.m ! javafx-iio-native/src/jpegloader.c ! prism-common-native/src/Helpers.c ! prism-es2-native/src/ios/IOSGLFactory.c Changeset: b29ce522d568 Author: snorthov Date: 2013-05-30 07:39 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/b29ce522d568 RT-30802: Quantum Cleanup: Make pipeline initialization happen in run() ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedPainter.java Changeset: f2583a30a508 Author: Martin Sladecek Date: 2013-05-30 15:42 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/f2583a30a508 Fixed infinte loop in HBox. ! javafx-ui-common/src/javafx/scene/layout/HBox.java Changeset: 804a55322e91 Author: Martin Sladecek Date: 2013-05-30 15:43 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/804a55322e91 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx/rt Changeset: c48aba5f8936 Author: kcr Date: 2013-05-30 07:00 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/c48aba5f8936 Gradle: fix native font build ! gradleBuildSrc/win.gradle Changeset: b17e961ecd38 Author: Oldrich Maticka Date: 2013-05-30 16:54 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/b17e961ecd38 iOS: Checking available JNI_VERSION @ runtime to be able to run with various JDK8 mobile promotions ! glass/glass-lib-ios/src/GlassApplication.m ! javafx-iio-native/src/ios/com_sun_javafx_iio_ios_IosImageLoader.m ! javafx-iio-native/src/jpegloader.c ! prism-common-native/src/Helpers.c ! prism-es2-native/src/ios/IOSGLFactory.c Changeset: 9b21f61edda7 Author: Per Bothner Date: 2013-05-30 13:03 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/9b21f61edda7 RT-28953 - JSException should conserve the original exception ! javafx-ui-common/src/com/sun/webkit/dom/JSObject.java ! webview/native/Source/WebCore/bridge/jni/jsc/JavaInstanceJSC.cpp ! webview/native/Source/WebCore/platform/java/BridgeUtils.cpp ! webview/test/javafx/scene/web/JavaScriptBridgeTest.java Changeset: 18da8c32f363 Author: Felipe Heidrich Date: 2013-05-30 14:54 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/18da8c32f363 RT-30823: Improve subpixel support for CoreText ! prism-common/src/com/sun/prism/impl/GlyphCache.java ! prism-ps/src/com/sun/prism/impl/ps/BaseShaderGraphics.java Changeset: 6fbcdced58f6 Author: Pavel Safrata Date: 2013-05-31 10:09 +0100 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/6fbcdced58f6 RT-26765: fixed @since tags. ! javafx-anim/src/javafx/animation/Animation.java ! javafx-anim/src/javafx/animation/AnimationTimer.java ! javafx-anim/src/javafx/animation/Interpolatable.java ! javafx-anim/src/javafx/animation/Interpolator.java ! javafx-anim/src/javafx/animation/KeyFrame.java ! javafx-anim/src/javafx/animation/KeyValue.java ! javafx-anim/src/javafx/animation/Timeline.java ! javafx-beans/src/javafx/beans/DefaultProperty.java ! javafx-beans/src/javafx/beans/InvalidationListener.java ! javafx-beans/src/javafx/beans/Observable.java ! javafx-beans/src/javafx/beans/WeakInvalidationListener.java ! javafx-beans/src/javafx/beans/WeakListener.java ! javafx-beans/src/javafx/beans/binding/Binding.java ! javafx-beans/src/javafx/beans/binding/Bindings.java ! javafx-beans/src/javafx/beans/binding/BooleanBinding.java ! javafx-beans/src/javafx/beans/binding/BooleanExpression.java ! javafx-beans/src/javafx/beans/binding/DoubleBinding.java ! javafx-beans/src/javafx/beans/binding/DoubleExpression.java ! javafx-beans/src/javafx/beans/binding/FloatBinding.java ! javafx-beans/src/javafx/beans/binding/FloatExpression.java ! javafx-beans/src/javafx/beans/binding/IntegerBinding.java ! javafx-beans/src/javafx/beans/binding/IntegerExpression.java ! javafx-beans/src/javafx/beans/binding/ListBinding.java ! javafx-beans/src/javafx/beans/binding/ListExpression.java ! javafx-beans/src/javafx/beans/binding/LongBinding.java ! javafx-beans/src/javafx/beans/binding/LongExpression.java ! javafx-beans/src/javafx/beans/binding/MapBinding.java ! javafx-beans/src/javafx/beans/binding/MapExpression.java ! javafx-beans/src/javafx/beans/binding/NumberBinding.java ! javafx-beans/src/javafx/beans/binding/NumberExpression.java ! javafx-beans/src/javafx/beans/binding/NumberExpressionBase.java ! javafx-beans/src/javafx/beans/binding/ObjectBinding.java ! javafx-beans/src/javafx/beans/binding/ObjectExpression.java ! javafx-beans/src/javafx/beans/binding/SetBinding.java ! javafx-beans/src/javafx/beans/binding/SetExpression.java ! javafx-beans/src/javafx/beans/binding/StringBinding.java ! javafx-beans/src/javafx/beans/binding/StringExpression.java ! javafx-beans/src/javafx/beans/binding/When.java ! javafx-beans/src/javafx/beans/property/BooleanProperty.java ! javafx-beans/src/javafx/beans/property/BooleanPropertyBase.java ! javafx-beans/src/javafx/beans/property/DoubleProperty.java ! javafx-beans/src/javafx/beans/property/DoublePropertyBase.java ! javafx-beans/src/javafx/beans/property/FloatProperty.java ! javafx-beans/src/javafx/beans/property/FloatPropertyBase.java ! javafx-beans/src/javafx/beans/property/IntegerProperty.java ! javafx-beans/src/javafx/beans/property/IntegerPropertyBase.java ! javafx-beans/src/javafx/beans/property/ListProperty.java ! javafx-beans/src/javafx/beans/property/ListPropertyBase.java ! javafx-beans/src/javafx/beans/property/LongProperty.java ! javafx-beans/src/javafx/beans/property/LongPropertyBase.java ! javafx-beans/src/javafx/beans/property/MapProperty.java ! javafx-beans/src/javafx/beans/property/MapPropertyBase.java ! javafx-beans/src/javafx/beans/property/ObjectProperty.java ! javafx-beans/src/javafx/beans/property/ObjectPropertyBase.java ! javafx-beans/src/javafx/beans/property/Property.java ! javafx-beans/src/javafx/beans/property/ReadOnlyBooleanProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyBooleanPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyBooleanWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyDoubleProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyDoublePropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyDoubleWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyFloatProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyFloatPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyFloatWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyIntegerProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyIntegerPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyIntegerWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyListProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyListPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyListWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyLongProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyLongPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyLongWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyMapProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyMapPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyMapWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyObjectProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyObjectPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyObjectWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlySetProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlySetPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlySetWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyStringProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyStringPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyStringWrapper.java ! javafx-beans/src/javafx/beans/property/SetProperty.java ! javafx-beans/src/javafx/beans/property/SetPropertyBase.java ! javafx-beans/src/javafx/beans/property/SimpleBooleanProperty.java ! javafx-beans/src/javafx/beans/property/SimpleDoubleProperty.java ! javafx-beans/src/javafx/beans/property/SimpleFloatProperty.java ! javafx-beans/src/javafx/beans/property/SimpleIntegerProperty.java ! javafx-beans/src/javafx/beans/property/SimpleListProperty.java ! javafx-beans/src/javafx/beans/property/SimpleLongProperty.java ! javafx-beans/src/javafx/beans/property/SimpleMapProperty.java ! javafx-beans/src/javafx/beans/property/SimpleObjectProperty.java ! javafx-beans/src/javafx/beans/property/SimpleSetProperty.java ! javafx-beans/src/javafx/beans/property/SimpleStringProperty.java ! javafx-beans/src/javafx/beans/property/StringProperty.java ! javafx-beans/src/javafx/beans/property/StringPropertyBase.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanBooleanProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanBooleanPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanDoubleProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanDoublePropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanFloatProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanFloatPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanIntegerProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanIntegerPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanLongProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanLongPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanObjectProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanObjectPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanStringProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanStringPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanBooleanProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanBooleanPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanDoubleProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanDoublePropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanFloatProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanFloatPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanIntegerProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanIntegerPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanLongProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanLongPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanObjectProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanObjectPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanStringProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanStringPropertyBuilder.java ! javafx-beans/src/javafx/beans/value/ChangeListener.java ! javafx-beans/src/javafx/beans/value/ObservableBooleanValue.java ! javafx-beans/src/javafx/beans/value/ObservableDoubleValue.java ! javafx-beans/src/javafx/beans/value/ObservableFloatValue.java ! javafx-beans/src/javafx/beans/value/ObservableIntegerValue.java ! javafx-beans/src/javafx/beans/value/ObservableListValue.java ! javafx-beans/src/javafx/beans/value/ObservableLongValue.java ! javafx-beans/src/javafx/beans/value/ObservableMapValue.java ! javafx-beans/src/javafx/beans/value/ObservableNumberValue.java ! javafx-beans/src/javafx/beans/value/ObservableObjectValue.java ! javafx-beans/src/javafx/beans/value/ObservableSetValue.java ! javafx-beans/src/javafx/beans/value/ObservableStringValue.java ! javafx-beans/src/javafx/beans/value/ObservableValue.java ! javafx-beans/src/javafx/beans/value/ObservableValueBase.java ! javafx-beans/src/javafx/beans/value/WeakChangeListener.java ! javafx-beans/src/javafx/beans/value/WritableBooleanValue.java ! javafx-beans/src/javafx/beans/value/WritableDoubleValue.java ! javafx-beans/src/javafx/beans/value/WritableFloatValue.java ! javafx-beans/src/javafx/beans/value/WritableIntegerValue.java ! javafx-beans/src/javafx/beans/value/WritableListValue.java ! javafx-beans/src/javafx/beans/value/WritableLongValue.java ! javafx-beans/src/javafx/beans/value/WritableMapValue.java ! javafx-beans/src/javafx/beans/value/WritableNumberValue.java ! javafx-beans/src/javafx/beans/value/WritableObjectValue.java ! javafx-beans/src/javafx/beans/value/WritableSetValue.java ! javafx-beans/src/javafx/beans/value/WritableStringValue.java ! javafx-beans/src/javafx/beans/value/WritableValue.java ! javafx-beans/src/javafx/collections/ArrayChangeListener.java ! javafx-beans/src/javafx/collections/FXCollections.java ! javafx-beans/src/javafx/collections/ListChangeListener.java ! javafx-beans/src/javafx/collections/MapChangeListener.java ! javafx-beans/src/javafx/collections/ModifiableObservableListBase.java ! javafx-beans/src/javafx/collections/ObservableArray.java ! javafx-beans/src/javafx/collections/ObservableArrayBase.java ! javafx-beans/src/javafx/collections/ObservableFloatArray.java ! javafx-beans/src/javafx/collections/ObservableIntegerArray.java ! javafx-beans/src/javafx/collections/ObservableList.java ! javafx-beans/src/javafx/collections/ObservableListBase.java ! javafx-beans/src/javafx/collections/ObservableMap.java ! javafx-beans/src/javafx/collections/ObservableSet.java ! javafx-beans/src/javafx/collections/SetChangeListener.java ! javafx-beans/src/javafx/collections/WeakListChangeListener.java ! javafx-beans/src/javafx/collections/WeakMapChangeListener.java ! javafx-beans/src/javafx/collections/WeakSetChangeListener.java ! javafx-beans/src/javafx/collections/transformation/FilteredList.java ! javafx-beans/src/javafx/collections/transformation/SortedList.java ! javafx-beans/src/javafx/collections/transformation/TransformationList.java ! javafx-builders/src/javafx/animation/AnimationBuilder.java ! javafx-builders/src/javafx/animation/FadeTransitionBuilder.java ! javafx-builders/src/javafx/animation/FillTransitionBuilder.java ! javafx-builders/src/javafx/animation/ParallelTransitionBuilder.java ! javafx-builders/src/javafx/animation/PathTransitionBuilder.java ! javafx-builders/src/javafx/animation/PauseTransitionBuilder.java ! javafx-builders/src/javafx/animation/RotateTransitionBuilder.java ! javafx-builders/src/javafx/animation/ScaleTransitionBuilder.java ! javafx-builders/src/javafx/animation/SequentialTransitionBuilder.java ! javafx-builders/src/javafx/animation/StrokeTransitionBuilder.java ! javafx-builders/src/javafx/animation/TimelineBuilder.java ! javafx-builders/src/javafx/animation/TransitionBuilder.java ! javafx-builders/src/javafx/animation/TranslateTransitionBuilder.java ! javafx-builders/src/javafx/embed/swing/JFXPanelBuilder.java ! javafx-builders/src/javafx/embed/swt/CustomTransferBuilder.java ! javafx-builders/src/javafx/geometry/BoundingBoxBuilder.java ! javafx-builders/src/javafx/geometry/Dimension2DBuilder.java ! javafx-builders/src/javafx/geometry/InsetsBuilder.java ! javafx-builders/src/javafx/geometry/Point2DBuilder.java ! javafx-builders/src/javafx/geometry/Point3DBuilder.java ! javafx-builders/src/javafx/geometry/Rectangle2DBuilder.java ! javafx-builders/src/javafx/scene/GroupBuilder.java ! javafx-builders/src/javafx/scene/ImageCursorBuilder.java ! javafx-builders/src/javafx/scene/NodeBuilder.java ! javafx-builders/src/javafx/scene/ParentBuilder.java ! javafx-builders/src/javafx/scene/PerspectiveCameraBuilder.java ! javafx-builders/src/javafx/scene/SceneBuilder.java ! javafx-builders/src/javafx/scene/SnapshotParametersBuilder.java ! javafx-builders/src/javafx/scene/canvas/CanvasBuilder.java ! javafx-builders/src/javafx/scene/chart/AreaChartBuilder.java ! javafx-builders/src/javafx/scene/chart/AxisBuilder.java ! javafx-builders/src/javafx/scene/chart/BarChartBuilder.java ! javafx-builders/src/javafx/scene/chart/BubbleChartBuilder.java ! javafx-builders/src/javafx/scene/chart/CategoryAxisBuilder.java ! javafx-builders/src/javafx/scene/chart/ChartBuilder.java ! javafx-builders/src/javafx/scene/chart/LineChartBuilder.java ! javafx-builders/src/javafx/scene/chart/NumberAxisBuilder.java ! javafx-builders/src/javafx/scene/chart/PieChartBuilder.java ! javafx-builders/src/javafx/scene/chart/ScatterChartBuilder.java ! javafx-builders/src/javafx/scene/chart/StackedAreaChartBuilder.java ! javafx-builders/src/javafx/scene/chart/StackedBarChartBuilder.java ! javafx-builders/src/javafx/scene/chart/ValueAxisBuilder.java ! javafx-builders/src/javafx/scene/chart/XYChartBuilder.java ! javafx-builders/src/javafx/scene/control/AccordionBuilder.java ! javafx-builders/src/javafx/scene/control/ButtonBaseBuilder.java ! javafx-builders/src/javafx/scene/control/ButtonBuilder.java ! javafx-builders/src/javafx/scene/control/CellBuilder.java ! javafx-builders/src/javafx/scene/control/CheckBoxBuilder.java ! javafx-builders/src/javafx/scene/control/CheckBoxTreeItemBuilder.java ! javafx-builders/src/javafx/scene/control/CheckMenuItemBuilder.java ! javafx-builders/src/javafx/scene/control/ChoiceBoxBuilder.java ! javafx-builders/src/javafx/scene/control/ColorPickerBuilder.java ! javafx-builders/src/javafx/scene/control/ComboBoxBaseBuilder.java ! javafx-builders/src/javafx/scene/control/ComboBoxBuilder.java ! javafx-builders/src/javafx/scene/control/ContextMenuBuilder.java ! javafx-builders/src/javafx/scene/control/ControlBuilder.java ! javafx-builders/src/javafx/scene/control/CustomMenuItemBuilder.java ! javafx-builders/src/javafx/scene/control/HyperlinkBuilder.java ! javafx-builders/src/javafx/scene/control/IndexRangeBuilder.java ! javafx-builders/src/javafx/scene/control/IndexedCellBuilder.java ! javafx-builders/src/javafx/scene/control/LabelBuilder.java ! javafx-builders/src/javafx/scene/control/LabeledBuilder.java ! javafx-builders/src/javafx/scene/control/ListCellBuilder.java ! javafx-builders/src/javafx/scene/control/ListViewBuilder.java ! javafx-builders/src/javafx/scene/control/MenuBarBuilder.java ! javafx-builders/src/javafx/scene/control/MenuBuilder.java ! javafx-builders/src/javafx/scene/control/MenuButtonBuilder.java ! javafx-builders/src/javafx/scene/control/MenuItemBuilder.java ! javafx-builders/src/javafx/scene/control/MultipleSelectionModelBuilder.java ! javafx-builders/src/javafx/scene/control/PaginationBuilder.java ! javafx-builders/src/javafx/scene/control/PasswordFieldBuilder.java ! javafx-builders/src/javafx/scene/control/PopupControlBuilder.java ! javafx-builders/src/javafx/scene/control/ProgressBarBuilder.java ! javafx-builders/src/javafx/scene/control/ProgressIndicatorBuilder.java ! javafx-builders/src/javafx/scene/control/RadioButtonBuilder.java ! javafx-builders/src/javafx/scene/control/RadioMenuItemBuilder.java ! javafx-builders/src/javafx/scene/control/ScrollBarBuilder.java ! javafx-builders/src/javafx/scene/control/ScrollPaneBuilder.java ! javafx-builders/src/javafx/scene/control/SeparatorBuilder.java ! javafx-builders/src/javafx/scene/control/SeparatorMenuItemBuilder.java ! javafx-builders/src/javafx/scene/control/SliderBuilder.java ! javafx-builders/src/javafx/scene/control/SplitMenuButtonBuilder.java ! javafx-builders/src/javafx/scene/control/SplitPaneBuilder.java ! javafx-builders/src/javafx/scene/control/TabBuilder.java ! javafx-builders/src/javafx/scene/control/TabPaneBuilder.java ! javafx-builders/src/javafx/scene/control/TableCellBuilder.java ! javafx-builders/src/javafx/scene/control/TableColumnBuilder.java ! javafx-builders/src/javafx/scene/control/TablePositionBuilder.java ! javafx-builders/src/javafx/scene/control/TableRowBuilder.java ! javafx-builders/src/javafx/scene/control/TableViewBuilder.java ! javafx-builders/src/javafx/scene/control/TextAreaBuilder.java ! javafx-builders/src/javafx/scene/control/TextFieldBuilder.java ! javafx-builders/src/javafx/scene/control/TextInputControlBuilder.java ! javafx-builders/src/javafx/scene/control/TitledPaneBuilder.java ! javafx-builders/src/javafx/scene/control/ToggleButtonBuilder.java ! javafx-builders/src/javafx/scene/control/ToggleGroupBuilder.java ! javafx-builders/src/javafx/scene/control/ToolBarBuilder.java ! javafx-builders/src/javafx/scene/control/TooltipBuilder.java ! javafx-builders/src/javafx/scene/control/TreeCellBuilder.java ! javafx-builders/src/javafx/scene/control/TreeItemBuilder.java ! javafx-builders/src/javafx/scene/control/TreeViewBuilder.java ! javafx-builders/src/javafx/scene/control/cell/CheckBoxListCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/CheckBoxTableCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/CheckBoxTreeCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/ChoiceBoxListCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/ChoiceBoxTableCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/ChoiceBoxTreeCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/ComboBoxListCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/ComboBoxTableCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/ComboBoxTreeCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/PropertyValueFactoryBuilder.java ! javafx-builders/src/javafx/scene/control/cell/TextFieldListCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/TextFieldTableCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/TextFieldTreeCellBuilder.java ! javafx-builders/src/javafx/scene/effect/BlendBuilder.java ! javafx-builders/src/javafx/scene/effect/BloomBuilder.java ! javafx-builders/src/javafx/scene/effect/BoxBlurBuilder.java ! javafx-builders/src/javafx/scene/effect/ColorAdjustBuilder.java ! javafx-builders/src/javafx/scene/effect/ColorInputBuilder.java ! javafx-builders/src/javafx/scene/effect/DisplacementMapBuilder.java ! javafx-builders/src/javafx/scene/effect/DropShadowBuilder.java ! javafx-builders/src/javafx/scene/effect/FloatMapBuilder.java ! javafx-builders/src/javafx/scene/effect/GaussianBlurBuilder.java ! javafx-builders/src/javafx/scene/effect/GlowBuilder.java ! javafx-builders/src/javafx/scene/effect/ImageInputBuilder.java ! javafx-builders/src/javafx/scene/effect/InnerShadowBuilder.java ! javafx-builders/src/javafx/scene/effect/LightBuilder.java ! javafx-builders/src/javafx/scene/effect/LightingBuilder.java ! javafx-builders/src/javafx/scene/effect/MotionBlurBuilder.java ! javafx-builders/src/javafx/scene/effect/PerspectiveTransformBuilder.java ! javafx-builders/src/javafx/scene/effect/ReflectionBuilder.java ! javafx-builders/src/javafx/scene/effect/SepiaToneBuilder.java ! javafx-builders/src/javafx/scene/effect/ShadowBuilder.java ! javafx-builders/src/javafx/scene/image/ImageViewBuilder.java ! javafx-builders/src/javafx/scene/input/ClipboardContentBuilder.java ! javafx-builders/src/javafx/scene/input/KeyCharacterCombinationBuilder.java ! javafx-builders/src/javafx/scene/input/KeyCodeCombinationBuilder.java ! javafx-builders/src/javafx/scene/input/MnemonicBuilder.java ! javafx-builders/src/javafx/scene/layout/AnchorPaneBuilder.java ! javafx-builders/src/javafx/scene/layout/BorderPaneBuilder.java ! javafx-builders/src/javafx/scene/layout/ColumnConstraintsBuilder.java ! javafx-builders/src/javafx/scene/layout/FlowPaneBuilder.java ! javafx-builders/src/javafx/scene/layout/GridPaneBuilder.java ! javafx-builders/src/javafx/scene/layout/HBoxBuilder.java ! javafx-builders/src/javafx/scene/layout/PaneBuilder.java ! javafx-builders/src/javafx/scene/layout/RegionBuilder.java ! javafx-builders/src/javafx/scene/layout/RowConstraintsBuilder.java ! javafx-builders/src/javafx/scene/layout/StackPaneBuilder.java ! javafx-builders/src/javafx/scene/layout/TilePaneBuilder.java ! javafx-builders/src/javafx/scene/layout/VBoxBuilder.java ! javafx-builders/src/javafx/scene/media/AudioClipBuilder.java ! javafx-builders/src/javafx/scene/media/MediaBuilder.java ! javafx-builders/src/javafx/scene/media/MediaPlayerBuilder.java ! javafx-builders/src/javafx/scene/media/MediaViewBuilder.java ! javafx-builders/src/javafx/scene/paint/ColorBuilder.java ! javafx-builders/src/javafx/scene/paint/ImagePatternBuilder.java ! javafx-builders/src/javafx/scene/paint/LinearGradientBuilder.java ! javafx-builders/src/javafx/scene/paint/RadialGradientBuilder.java ! javafx-builders/src/javafx/scene/paint/StopBuilder.java ! javafx-builders/src/javafx/scene/shape/ArcBuilder.java ! javafx-builders/src/javafx/scene/shape/ArcToBuilder.java ! javafx-builders/src/javafx/scene/shape/CircleBuilder.java ! javafx-builders/src/javafx/scene/shape/ClosePathBuilder.java ! javafx-builders/src/javafx/scene/shape/CubicCurveBuilder.java ! javafx-builders/src/javafx/scene/shape/CubicCurveToBuilder.java ! javafx-builders/src/javafx/scene/shape/EllipseBuilder.java ! javafx-builders/src/javafx/scene/shape/HLineToBuilder.java ! javafx-builders/src/javafx/scene/shape/LineBuilder.java ! javafx-builders/src/javafx/scene/shape/LineToBuilder.java ! javafx-builders/src/javafx/scene/shape/MoveToBuilder.java ! javafx-builders/src/javafx/scene/shape/PathBuilder.java ! javafx-builders/src/javafx/scene/shape/PathElementBuilder.java ! javafx-builders/src/javafx/scene/shape/PolygonBuilder.java ! javafx-builders/src/javafx/scene/shape/PolylineBuilder.java ! javafx-builders/src/javafx/scene/shape/QuadCurveBuilder.java ! javafx-builders/src/javafx/scene/shape/QuadCurveToBuilder.java ! javafx-builders/src/javafx/scene/shape/RectangleBuilder.java ! javafx-builders/src/javafx/scene/shape/SVGPathBuilder.java ! javafx-builders/src/javafx/scene/shape/ShapeBuilder.java ! javafx-builders/src/javafx/scene/shape/VLineToBuilder.java ! javafx-builders/src/javafx/scene/text/FontBuilder.java ! javafx-builders/src/javafx/scene/text/TextBuilder.java ! javafx-builders/src/javafx/scene/transform/AffineBuilder.java ! javafx-builders/src/javafx/scene/transform/RotateBuilder.java ! javafx-builders/src/javafx/scene/transform/ScaleBuilder.java ! javafx-builders/src/javafx/scene/transform/ShearBuilder.java ! javafx-builders/src/javafx/scene/transform/TranslateBuilder.java ! javafx-builders/src/javafx/scene/web/WebEngineBuilder.java ! javafx-builders/src/javafx/scene/web/WebViewBuilder.java ! javafx-builders/src/javafx/stage/DirectoryChooserBuilder.java ! javafx-builders/src/javafx/stage/FileChooserBuilder.java ! javafx-builders/src/javafx/stage/PopupBuilder.java ! javafx-builders/src/javafx/stage/PopupWindowBuilder.java ! javafx-builders/src/javafx/stage/StageBuilder.java ! javafx-builders/src/javafx/stage/WindowBuilder.java ! javafx-common/src/javafx/event/ActionEvent.java ! javafx-common/src/javafx/event/Event.java ! javafx-common/src/javafx/event/EventDispatchChain.java ! javafx-common/src/javafx/event/EventDispatcher.java ! javafx-common/src/javafx/event/EventHandler.java ! javafx-common/src/javafx/event/EventTarget.java ! javafx-common/src/javafx/event/EventType.java ! javafx-common/src/javafx/event/WeakEventHandler.java ! javafx-common/src/javafx/util/Builder.java ! javafx-common/src/javafx/util/BuilderFactory.java ! javafx-common/src/javafx/util/Callback.java ! javafx-common/src/javafx/util/Duration.java ! javafx-common/src/javafx/util/Pair.java ! javafx-common/src/javafx/util/StringConverter.java ! javafx-concurrent/src/javafx/concurrent/ScheduledService.java ! javafx-concurrent/src/javafx/concurrent/Service.java ! javafx-concurrent/src/javafx/concurrent/Task.java ! javafx-concurrent/src/javafx/concurrent/Worker.java ! javafx-concurrent/src/javafx/concurrent/WorkerStateEvent.java ! javafx-embed-swing/src/javafx/embed/swing/JFXPanel.java ! javafx-embed-swing/src/javafx/embed/swing/SwingFXUtils.java ! javafx-embed-swing/src/javafx/embed/swing/SwingNode.java ! javafx-embed-swt/src/javafx/embed/swt/CustomTransfer.java ! javafx-embed-swt/src/javafx/embed/swt/FXCanvas.java ! javafx-embed-swt/src/javafx/embed/swt/SWTFXUtils.java ! javafx-fxml/src/javafx/fxml/FXML.java ! javafx-fxml/src/javafx/fxml/FXMLLoader.java ! javafx-fxml/src/javafx/fxml/Initializable.java ! javafx-fxml/src/javafx/fxml/JavaFXBuilderFactory.java ! javafx-fxml/src/javafx/fxml/LoadException.java ! javafx-fxml/src/javafx/fxml/ParseTraceElement.java ! javafx-geom/src/com/sun/javafx/geom/Arc2D.java ! javafx-geom/src/com/sun/javafx/geom/Area.java ! javafx-geom/src/com/sun/javafx/geom/CubicCurve2D.java ! javafx-geom/src/com/sun/javafx/geom/Ellipse2D.java ! javafx-geom/src/com/sun/javafx/geom/IllegalPathStateException.java ! javafx-geom/src/com/sun/javafx/geom/Line2D.java ! javafx-geom/src/com/sun/javafx/geom/Order3.java ! javafx-geom/src/com/sun/javafx/geom/Path2D.java ! javafx-geom/src/com/sun/javafx/geom/QuadCurve2D.java ! javafx-geom/src/com/sun/javafx/geom/Rectangle.java ! javafx-geom/src/com/sun/javafx/geom/RectangularShape.java ! javafx-geom/src/com/sun/javafx/geom/RoundRectangle2D.java ! javafx-geom/src/com/sun/javafx/geom/Shape.java ! javafx-geom/src/com/sun/javafx/geom/transform/Affine2D.java ! javafx-geom/src/com/sun/javafx/geom/transform/AffineBase.java ! javafx-geom/src/com/sun/javafx/geom/transform/BaseTransform.java ! javafx-geom/src/com/sun/javafx/geom/transform/NoninvertibleTransformException.java ! javafx-ui-charts/src/javafx/scene/chart/AreaChart.java ! javafx-ui-charts/src/javafx/scene/chart/BarChart.java ! javafx-ui-charts/src/javafx/scene/chart/BubbleChart.java ! javafx-ui-charts/src/javafx/scene/chart/Chart.java ! javafx-ui-charts/src/javafx/scene/chart/LineChart.java ! javafx-ui-charts/src/javafx/scene/chart/PieChart.java ! javafx-ui-charts/src/javafx/scene/chart/ScatterChart.java ! javafx-ui-charts/src/javafx/scene/chart/StackedAreaChart.java ! javafx-ui-charts/src/javafx/scene/chart/StackedBarChart.java ! javafx-ui-charts/src/javafx/scene/chart/XYChart.java ! javafx-ui-common/src/javafx/animation/FadeTransition.java ! javafx-ui-common/src/javafx/animation/FillTransition.java ! javafx-ui-common/src/javafx/animation/ParallelTransition.java ! javafx-ui-common/src/javafx/animation/PathTransition.java ! javafx-ui-common/src/javafx/animation/PauseTransition.java ! javafx-ui-common/src/javafx/animation/RotateTransition.java ! javafx-ui-common/src/javafx/animation/ScaleTransition.java ! javafx-ui-common/src/javafx/animation/SequentialTransition.java ! javafx-ui-common/src/javafx/animation/StrokeTransition.java ! javafx-ui-common/src/javafx/animation/Transition.java ! javafx-ui-common/src/javafx/animation/TranslateTransition.java ! javafx-ui-common/src/javafx/application/Application.java ! javafx-ui-common/src/javafx/application/ConditionalFeature.java ! javafx-ui-common/src/javafx/application/HostServices.java ! javafx-ui-common/src/javafx/application/Platform.java ! javafx-ui-common/src/javafx/application/Preloader.java ! javafx-ui-common/src/javafx/css/CssMetaData.java ! javafx-ui-common/src/javafx/css/FontCssMetaData.java ! javafx-ui-common/src/javafx/css/ParsedValue.java ! javafx-ui-common/src/javafx/css/PseudoClass.java ! javafx-ui-common/src/javafx/css/SimpleStyleableBooleanProperty.java ! javafx-ui-common/src/javafx/css/SimpleStyleableDoubleProperty.java ! javafx-ui-common/src/javafx/css/SimpleStyleableFloatProperty.java ! javafx-ui-common/src/javafx/css/SimpleStyleableIntegerProperty.java ! javafx-ui-common/src/javafx/css/SimpleStyleableLongProperty.java ! javafx-ui-common/src/javafx/css/SimpleStyleableObjectProperty.java ! javafx-ui-common/src/javafx/css/SimpleStyleableStringProperty.java ! javafx-ui-common/src/javafx/css/StyleConverter.java ! javafx-ui-common/src/javafx/css/StyleOrigin.java ! javafx-ui-common/src/javafx/css/Styleable.java ! javafx-ui-common/src/javafx/css/StyleableBooleanProperty.java ! javafx-ui-common/src/javafx/css/StyleableDoubleProperty.java ! javafx-ui-common/src/javafx/css/StyleableFloatProperty.java ! javafx-ui-common/src/javafx/css/StyleableIntegerProperty.java ! javafx-ui-common/src/javafx/css/StyleableLongProperty.java ! javafx-ui-common/src/javafx/css/StyleableObjectProperty.java ! javafx-ui-common/src/javafx/css/StyleableProperty.java ! javafx-ui-common/src/javafx/css/StyleableStringProperty.java ! javafx-ui-common/src/javafx/geometry/BoundingBox.java ! javafx-ui-common/src/javafx/geometry/Bounds.java ! javafx-ui-common/src/javafx/geometry/Dimension2D.java ! javafx-ui-common/src/javafx/geometry/HPos.java ! javafx-ui-common/src/javafx/geometry/HorizontalDirection.java ! javafx-ui-common/src/javafx/geometry/Insets.java ! javafx-ui-common/src/javafx/geometry/NodeOrientation.java ! javafx-ui-common/src/javafx/geometry/Orientation.java ! javafx-ui-common/src/javafx/geometry/Point2D.java ! javafx-ui-common/src/javafx/geometry/Point3D.java ! javafx-ui-common/src/javafx/geometry/Pos.java ! javafx-ui-common/src/javafx/geometry/Rectangle2D.java ! javafx-ui-common/src/javafx/geometry/Side.java ! javafx-ui-common/src/javafx/geometry/VPos.java ! javafx-ui-common/src/javafx/geometry/VerticalDirection.java ! javafx-ui-common/src/javafx/print/Collation.java ! javafx-ui-common/src/javafx/print/JobSettings.java ! javafx-ui-common/src/javafx/print/PageLayout.java ! javafx-ui-common/src/javafx/print/PageOrientation.java ! javafx-ui-common/src/javafx/print/PageRange.java ! javafx-ui-common/src/javafx/print/Paper.java ! javafx-ui-common/src/javafx/print/PaperSource.java ! javafx-ui-common/src/javafx/print/PrintColor.java ! javafx-ui-common/src/javafx/print/PrintQuality.java ! javafx-ui-common/src/javafx/print/PrintResolution.java ! javafx-ui-common/src/javafx/print/PrintSides.java ! javafx-ui-common/src/javafx/print/Printer.java ! javafx-ui-common/src/javafx/print/PrinterAttributes.java ! javafx-ui-common/src/javafx/print/PrinterJob.java ! javafx-ui-common/src/javafx/scene/AmbientLight.java ! javafx-ui-common/src/javafx/scene/CacheHint.java ! javafx-ui-common/src/javafx/scene/Camera.java ! javafx-ui-common/src/javafx/scene/Cursor.java ! javafx-ui-common/src/javafx/scene/DepthTest.java ! javafx-ui-common/src/javafx/scene/Group.java ! javafx-ui-common/src/javafx/scene/ImageCursor.java ! javafx-ui-common/src/javafx/scene/LightBase.java ! javafx-ui-common/src/javafx/scene/Node.java ! javafx-ui-common/src/javafx/scene/ParallelCamera.java ! javafx-ui-common/src/javafx/scene/Parent.java ! javafx-ui-common/src/javafx/scene/PerspectiveCamera.java ! javafx-ui-common/src/javafx/scene/PointLight.java ! javafx-ui-common/src/javafx/scene/Scene.java ! javafx-ui-common/src/javafx/scene/SnapshotParameters.java ! javafx-ui-common/src/javafx/scene/SnapshotResult.java ! javafx-ui-common/src/javafx/scene/SubScene.java ! javafx-ui-common/src/javafx/scene/canvas/Canvas.java ! javafx-ui-common/src/javafx/scene/canvas/GraphicsContext.java ! javafx-ui-common/src/javafx/scene/effect/Blend.java ! javafx-ui-common/src/javafx/scene/effect/BlendMode.java ! javafx-ui-common/src/javafx/scene/effect/Bloom.java ! javafx-ui-common/src/javafx/scene/effect/BlurType.java ! javafx-ui-common/src/javafx/scene/effect/BoxBlur.java ! javafx-ui-common/src/javafx/scene/effect/ColorAdjust.java ! javafx-ui-common/src/javafx/scene/effect/ColorInput.java ! javafx-ui-common/src/javafx/scene/effect/DisplacementMap.java ! javafx-ui-common/src/javafx/scene/effect/DropShadow.java ! javafx-ui-common/src/javafx/scene/effect/Effect.java ! javafx-ui-common/src/javafx/scene/effect/FloatMap.java ! javafx-ui-common/src/javafx/scene/effect/GaussianBlur.java ! javafx-ui-common/src/javafx/scene/effect/Glow.java ! javafx-ui-common/src/javafx/scene/effect/ImageInput.java ! javafx-ui-common/src/javafx/scene/effect/InnerShadow.java ! javafx-ui-common/src/javafx/scene/effect/Light.java ! javafx-ui-common/src/javafx/scene/effect/Lighting.java ! javafx-ui-common/src/javafx/scene/effect/MotionBlur.java ! javafx-ui-common/src/javafx/scene/effect/PerspectiveTransform.java ! javafx-ui-common/src/javafx/scene/effect/Reflection.java ! javafx-ui-common/src/javafx/scene/effect/SepiaTone.java ! javafx-ui-common/src/javafx/scene/effect/Shadow.java ! javafx-ui-common/src/javafx/scene/image/Image.java ! javafx-ui-common/src/javafx/scene/image/ImageView.java ! javafx-ui-common/src/javafx/scene/image/PixelFormat.java ! javafx-ui-common/src/javafx/scene/image/PixelReader.java ! javafx-ui-common/src/javafx/scene/image/PixelWriter.java ! javafx-ui-common/src/javafx/scene/image/WritableImage.java ! javafx-ui-common/src/javafx/scene/image/WritablePixelFormat.java ! javafx-ui-common/src/javafx/scene/input/Clipboard.java ! javafx-ui-common/src/javafx/scene/input/ClipboardContent.java ! javafx-ui-common/src/javafx/scene/input/ContextMenuEvent.java ! javafx-ui-common/src/javafx/scene/input/DataFormat.java ! javafx-ui-common/src/javafx/scene/input/DragEvent.java ! javafx-ui-common/src/javafx/scene/input/Dragboard.java ! javafx-ui-common/src/javafx/scene/input/GestureEvent.java ! javafx-ui-common/src/javafx/scene/input/InputEvent.java ! javafx-ui-common/src/javafx/scene/input/InputMethodEvent.java ! javafx-ui-common/src/javafx/scene/input/InputMethodHighlight.java ! javafx-ui-common/src/javafx/scene/input/InputMethodTextRun.java ! javafx-ui-common/src/javafx/scene/input/KeyCharacterCombination.java ! javafx-ui-common/src/javafx/scene/input/KeyCode.java ! javafx-ui-common/src/javafx/scene/input/KeyCodeCombination.java ! javafx-ui-common/src/javafx/scene/input/KeyCombination.java ! javafx-ui-common/src/javafx/scene/input/KeyEvent.java ! javafx-ui-common/src/javafx/scene/input/Mnemonic.java ! javafx-ui-common/src/javafx/scene/input/MouseButton.java ! javafx-ui-common/src/javafx/scene/input/MouseDragEvent.java ! javafx-ui-common/src/javafx/scene/input/MouseEvent.java ! javafx-ui-common/src/javafx/scene/input/PickResult.java ! javafx-ui-common/src/javafx/scene/input/RotateEvent.java ! javafx-ui-common/src/javafx/scene/input/ScrollEvent.java ! javafx-ui-common/src/javafx/scene/input/SwipeEvent.java ! javafx-ui-common/src/javafx/scene/input/TouchEvent.java ! javafx-ui-common/src/javafx/scene/input/TouchPoint.java ! javafx-ui-common/src/javafx/scene/input/TransferMode.java ! javafx-ui-common/src/javafx/scene/input/ZoomEvent.java ! javafx-ui-common/src/javafx/scene/layout/AnchorPane.java ! javafx-ui-common/src/javafx/scene/layout/Background.java ! javafx-ui-common/src/javafx/scene/layout/BackgroundFill.java ! javafx-ui-common/src/javafx/scene/layout/BackgroundImage.java ! javafx-ui-common/src/javafx/scene/layout/BackgroundPosition.java ! javafx-ui-common/src/javafx/scene/layout/BackgroundRepeat.java ! javafx-ui-common/src/javafx/scene/layout/BackgroundSize.java ! javafx-ui-common/src/javafx/scene/layout/Border.java ! javafx-ui-common/src/javafx/scene/layout/BorderImage.java ! javafx-ui-common/src/javafx/scene/layout/BorderPane.java ! javafx-ui-common/src/javafx/scene/layout/BorderRepeat.java ! javafx-ui-common/src/javafx/scene/layout/BorderStroke.java ! javafx-ui-common/src/javafx/scene/layout/BorderStrokeStyle.java ! javafx-ui-common/src/javafx/scene/layout/BorderWidths.java ! javafx-ui-common/src/javafx/scene/layout/ColumnConstraints.java ! javafx-ui-common/src/javafx/scene/layout/ConstraintsBase.java ! javafx-ui-common/src/javafx/scene/layout/CornerRadii.java ! javafx-ui-common/src/javafx/scene/layout/FlowPane.java ! javafx-ui-common/src/javafx/scene/layout/GridPane.java ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/Pane.java ! javafx-ui-common/src/javafx/scene/layout/Priority.java ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-common/src/javafx/scene/layout/RowConstraints.java ! javafx-ui-common/src/javafx/scene/layout/StackPane.java ! javafx-ui-common/src/javafx/scene/layout/TilePane.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java ! javafx-ui-common/src/javafx/scene/paint/Color.java ! javafx-ui-common/src/javafx/scene/paint/CycleMethod.java ! javafx-ui-common/src/javafx/scene/paint/ImagePattern.java ! javafx-ui-common/src/javafx/scene/paint/LinearGradient.java ! javafx-ui-common/src/javafx/scene/paint/Material.java ! javafx-ui-common/src/javafx/scene/paint/Paint.java ! javafx-ui-common/src/javafx/scene/paint/PhongMaterial.java ! javafx-ui-common/src/javafx/scene/paint/RadialGradient.java ! javafx-ui-common/src/javafx/scene/paint/Stop.java ! javafx-ui-common/src/javafx/scene/shape/Arc.java ! javafx-ui-common/src/javafx/scene/shape/ArcTo.java ! javafx-ui-common/src/javafx/scene/shape/ArcType.java ! javafx-ui-common/src/javafx/scene/shape/Box.java ! javafx-ui-common/src/javafx/scene/shape/Circle.java ! javafx-ui-common/src/javafx/scene/shape/ClosePath.java ! javafx-ui-common/src/javafx/scene/shape/CubicCurve.java ! javafx-ui-common/src/javafx/scene/shape/CubicCurveTo.java ! javafx-ui-common/src/javafx/scene/shape/CullFace.java ! javafx-ui-common/src/javafx/scene/shape/Cylinder.java ! javafx-ui-common/src/javafx/scene/shape/DrawMode.java ! javafx-ui-common/src/javafx/scene/shape/Ellipse.java ! javafx-ui-common/src/javafx/scene/shape/FillRule.java ! javafx-ui-common/src/javafx/scene/shape/HLineTo.java ! javafx-ui-common/src/javafx/scene/shape/Line.java ! javafx-ui-common/src/javafx/scene/shape/LineTo.java ! javafx-ui-common/src/javafx/scene/shape/Mesh.java ! javafx-ui-common/src/javafx/scene/shape/MeshView.java ! javafx-ui-common/src/javafx/scene/shape/MoveTo.java ! javafx-ui-common/src/javafx/scene/shape/Path.java ! javafx-ui-common/src/javafx/scene/shape/PathElement.java ! javafx-ui-common/src/javafx/scene/shape/Polygon.java ! javafx-ui-common/src/javafx/scene/shape/Polyline.java ! javafx-ui-common/src/javafx/scene/shape/QuadCurve.java ! javafx-ui-common/src/javafx/scene/shape/QuadCurveTo.java ! javafx-ui-common/src/javafx/scene/shape/Rectangle.java ! javafx-ui-common/src/javafx/scene/shape/SVGPath.java ! javafx-ui-common/src/javafx/scene/shape/Shape.java ! javafx-ui-common/src/javafx/scene/shape/Shape3D.java ! javafx-ui-common/src/javafx/scene/shape/Sphere.java ! javafx-ui-common/src/javafx/scene/shape/StrokeLineCap.java ! javafx-ui-common/src/javafx/scene/shape/StrokeLineJoin.java ! javafx-ui-common/src/javafx/scene/shape/StrokeType.java ! javafx-ui-common/src/javafx/scene/shape/TriangleMesh.java ! javafx-ui-common/src/javafx/scene/shape/VLineTo.java ! javafx-ui-common/src/javafx/scene/text/Font.java ! javafx-ui-common/src/javafx/scene/text/FontPosture.java ! javafx-ui-common/src/javafx/scene/text/FontSmoothingType.java ! javafx-ui-common/src/javafx/scene/text/FontWeight.java ! javafx-ui-common/src/javafx/scene/text/Text.java ! javafx-ui-common/src/javafx/scene/text/TextAlignment.java ! javafx-ui-common/src/javafx/scene/text/TextBoundsType.java ! javafx-ui-common/src/javafx/scene/text/TextFlow.java ! javafx-ui-common/src/javafx/scene/transform/Affine.java ! javafx-ui-common/src/javafx/scene/transform/MatrixType.java ! javafx-ui-common/src/javafx/scene/transform/NonInvertibleTransformException.java ! javafx-ui-common/src/javafx/scene/transform/Rotate.java ! javafx-ui-common/src/javafx/scene/transform/Scale.java ! javafx-ui-common/src/javafx/scene/transform/Shear.java ! javafx-ui-common/src/javafx/scene/transform/Transform.java ! javafx-ui-common/src/javafx/scene/transform/TransformChangedEvent.java ! javafx-ui-common/src/javafx/scene/transform/Translate.java ! javafx-ui-common/src/javafx/stage/FileChooser.java ! javafx-ui-common/src/javafx/stage/Modality.java ! javafx-ui-common/src/javafx/stage/Popup.java ! javafx-ui-common/src/javafx/stage/PopupWindow.java ! javafx-ui-common/src/javafx/stage/Screen.java ! javafx-ui-common/src/javafx/stage/Stage.java ! javafx-ui-common/src/javafx/stage/StageStyle.java ! javafx-ui-common/src/javafx/stage/Window.java ! javafx-ui-common/src/javafx/stage/WindowEvent.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/VirtualContainerBase.java ! javafx-ui-controls/src/javafx/scene/chart/Axis.java ! javafx-ui-controls/src/javafx/scene/chart/CategoryAxis.java ! javafx-ui-controls/src/javafx/scene/chart/NumberAxis.java ! javafx-ui-controls/src/javafx/scene/chart/ValueAxis.java ! javafx-ui-controls/src/javafx/scene/control/Accordion.java ! javafx-ui-controls/src/javafx/scene/control/Button.java ! javafx-ui-controls/src/javafx/scene/control/ButtonBase.java ! javafx-ui-controls/src/javafx/scene/control/Cell.java ! javafx-ui-controls/src/javafx/scene/control/CheckBox.java ! javafx-ui-controls/src/javafx/scene/control/CheckBoxTreeItem.java ! javafx-ui-controls/src/javafx/scene/control/CheckMenuItem.java ! javafx-ui-controls/src/javafx/scene/control/ChoiceBox.java ! javafx-ui-controls/src/javafx/scene/control/ColorPicker.java ! javafx-ui-controls/src/javafx/scene/control/ComboBox.java ! javafx-ui-controls/src/javafx/scene/control/ComboBoxBase.java ! javafx-ui-controls/src/javafx/scene/control/ContentDisplay.java ! javafx-ui-controls/src/javafx/scene/control/ContextMenu.java ! javafx-ui-controls/src/javafx/scene/control/Control.java ! javafx-ui-controls/src/javafx/scene/control/CustomMenuItem.java ! javafx-ui-controls/src/javafx/scene/control/DateCell.java ! javafx-ui-controls/src/javafx/scene/control/DatePicker.java ! javafx-ui-controls/src/javafx/scene/control/FocusModel.java ! javafx-ui-controls/src/javafx/scene/control/Hyperlink.java ! javafx-ui-controls/src/javafx/scene/control/IndexRange.java ! javafx-ui-controls/src/javafx/scene/control/IndexedCell.java ! javafx-ui-controls/src/javafx/scene/control/Label.java ! javafx-ui-controls/src/javafx/scene/control/Labeled.java ! javafx-ui-controls/src/javafx/scene/control/ListCell.java ! javafx-ui-controls/src/javafx/scene/control/ListView.java ! javafx-ui-controls/src/javafx/scene/control/Menu.java ! javafx-ui-controls/src/javafx/scene/control/MenuBar.java ! javafx-ui-controls/src/javafx/scene/control/MenuButton.java ! javafx-ui-controls/src/javafx/scene/control/MenuItem.java ! javafx-ui-controls/src/javafx/scene/control/MultipleSelectionModel.java ! javafx-ui-controls/src/javafx/scene/control/OverrunStyle.java ! javafx-ui-controls/src/javafx/scene/control/Pagination.java ! javafx-ui-controls/src/javafx/scene/control/PasswordField.java ! javafx-ui-controls/src/javafx/scene/control/PopupControl.java ! javafx-ui-controls/src/javafx/scene/control/ProgressBar.java ! javafx-ui-controls/src/javafx/scene/control/ProgressIndicator.java ! javafx-ui-controls/src/javafx/scene/control/RadioButton.java ! javafx-ui-controls/src/javafx/scene/control/RadioMenuItem.java ! javafx-ui-controls/src/javafx/scene/control/ResizeFeaturesBase.java ! javafx-ui-controls/src/javafx/scene/control/ScrollBar.java ! javafx-ui-controls/src/javafx/scene/control/ScrollPane.java ! javafx-ui-controls/src/javafx/scene/control/ScrollToEvent.java ! javafx-ui-controls/src/javafx/scene/control/SelectionMode.java ! javafx-ui-controls/src/javafx/scene/control/SelectionModel.java ! javafx-ui-controls/src/javafx/scene/control/Separator.java ! javafx-ui-controls/src/javafx/scene/control/SeparatorMenuItem.java ! javafx-ui-controls/src/javafx/scene/control/SingleSelectionModel.java ! javafx-ui-controls/src/javafx/scene/control/Skin.java ! javafx-ui-controls/src/javafx/scene/control/SkinBase.java ! javafx-ui-controls/src/javafx/scene/control/Skinnable.java ! javafx-ui-controls/src/javafx/scene/control/Slider.java ! javafx-ui-controls/src/javafx/scene/control/SortEvent.java ! javafx-ui-controls/src/javafx/scene/control/SplitMenuButton.java ! javafx-ui-controls/src/javafx/scene/control/SplitPane.java ! javafx-ui-controls/src/javafx/scene/control/Tab.java ! javafx-ui-controls/src/javafx/scene/control/TabPane.java ! javafx-ui-controls/src/javafx/scene/control/TableCell.java ! javafx-ui-controls/src/javafx/scene/control/TableColumn.java ! javafx-ui-controls/src/javafx/scene/control/TableColumnBase.java ! javafx-ui-controls/src/javafx/scene/control/TableFocusModel.java ! javafx-ui-controls/src/javafx/scene/control/TablePosition.java ! javafx-ui-controls/src/javafx/scene/control/TablePositionBase.java ! javafx-ui-controls/src/javafx/scene/control/TableRow.java ! javafx-ui-controls/src/javafx/scene/control/TableSelectionModel.java ! javafx-ui-controls/src/javafx/scene/control/TableView.java ! javafx-ui-controls/src/javafx/scene/control/TextArea.java ! javafx-ui-controls/src/javafx/scene/control/TextField.java ! javafx-ui-controls/src/javafx/scene/control/TextInputControl.java ! javafx-ui-controls/src/javafx/scene/control/TitledPane.java ! javafx-ui-controls/src/javafx/scene/control/Toggle.java ! javafx-ui-controls/src/javafx/scene/control/ToggleButton.java ! javafx-ui-controls/src/javafx/scene/control/ToggleGroup.java ! javafx-ui-controls/src/javafx/scene/control/ToolBar.java ! javafx-ui-controls/src/javafx/scene/control/Tooltip.java ! javafx-ui-controls/src/javafx/scene/control/TreeCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeItem.java ! javafx-ui-controls/src/javafx/scene/control/TreeSortMode.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableColumn.java ! javafx-ui-controls/src/javafx/scene/control/TreeTablePosition.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableRow.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableView.java ! javafx-ui-controls/src/javafx/scene/control/TreeView.java ! javafx-ui-controls/src/javafx/scene/control/cell/CheckBoxListCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/CheckBoxTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/CheckBoxTreeCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/CheckBoxTreeTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ChoiceBoxListCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ChoiceBoxTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ChoiceBoxTreeCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ChoiceBoxTreeTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ComboBoxListCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ComboBoxTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ComboBoxTreeCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ComboBoxTreeTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/MapValueFactory.java ! javafx-ui-controls/src/javafx/scene/control/cell/ProgressBarTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ProgressBarTreeTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/PropertyValueFactory.java ! javafx-ui-controls/src/javafx/scene/control/cell/TextFieldListCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/TextFieldTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/TextFieldTreeCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/TextFieldTreeTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/TreeItemPropertyValueFactory.java ! javafx-util-converter/src/javafx/util/converter/BigDecimalStringConverter.java ! javafx-util-converter/src/javafx/util/converter/BigIntegerStringConverter.java ! javafx-util-converter/src/javafx/util/converter/BooleanStringConverter.java ! javafx-util-converter/src/javafx/util/converter/ByteStringConverter.java ! javafx-util-converter/src/javafx/util/converter/CharacterStringConverter.java ! javafx-util-converter/src/javafx/util/converter/CurrencyStringConverter.java ! javafx-util-converter/src/javafx/util/converter/DateStringConverter.java ! javafx-util-converter/src/javafx/util/converter/DateTimeStringConverter.java ! javafx-util-converter/src/javafx/util/converter/DefaultStringConverter.java ! javafx-util-converter/src/javafx/util/converter/DoubleStringConverter.java ! javafx-util-converter/src/javafx/util/converter/FloatStringConverter.java ! javafx-util-converter/src/javafx/util/converter/FormatStringConverter.java ! javafx-util-converter/src/javafx/util/converter/IntegerStringConverter.java ! javafx-util-converter/src/javafx/util/converter/LongStringConverter.java ! javafx-util-converter/src/javafx/util/converter/NumberStringConverter.java ! javafx-util-converter/src/javafx/util/converter/PercentageStringConverter.java ! javafx-util-converter/src/javafx/util/converter/ShortStringConverter.java ! javafx-util-converter/src/javafx/util/converter/TimeStringConverter.java ! pisces/src/com/sun/openpisces/Helpers.java ! prism-j2d/src/com/sun/prism/j2d/paint/MultipleGradientPaint.java ! prism-j2d/src/com/sun/prism/j2d/paint/RadialGradientPaint.java ! webview/src/javafx/scene/web/HTMLEditor.java ! webview/src/javafx/scene/web/PopupFeatures.java ! webview/src/javafx/scene/web/PromptData.java ! webview/src/javafx/scene/web/WebEngine.java ! webview/src/javafx/scene/web/WebEvent.java ! webview/src/javafx/scene/web/WebHistory.java ! webview/src/javafx/scene/web/WebView.java Changeset: 6d1ecfa5fe7f Author: lepopov Date: 2013-05-31 15:04 +0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/6d1ecfa5fe7f Fixed RT-29371 Small scrollbars in HTML controls are unusable ! webview/src/com/sun/javafx/webkit/theme/ScrollBarThemeImpl.java Changeset: 59839bab2fba Author: kcr Date: 2013-05-31 05:33 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/59839bab2fba [TEST-ONLY] Disable intermittently failing test until RT-30173 is resolved ! javafx-concurrent/test/javafx/concurrent/ServiceLifecycleTest.java Changeset: f66302f166fa Author: David Hill Date: 2013-05-31 11:31 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/f66302f166fa RT-30628 raise owned windows when parent is raised ! glass/glass/src/com/sun/glass/ui/Window.java Changeset: e15e5f07eef3 Author: Richard Bair Date: 2013-05-31 14:31 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/e15e5f07eef3 [Apps] Added TranslatedRectangle sample which just translates a rectangle so we can start the hunt for jitter. + apps/performance/Animations/src/animations/TranslatedRectangle.java Changeset: 4b1badcc613c Author: Alexander Kouznetsov Date: 2013-05-31 15:21 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/4b1badcc613c Fix for RT-30418 Fix ObservableArray, ObservableIntegerArray and ObservableFloatArray javadocs. Added some tests to enforce statements from javadocs. ! javafx-beans/src/javafx/collections/ObservableArray.java ! javafx-beans/src/javafx/collections/ObservableFloatArray.java ! javafx-beans/src/javafx/collections/ObservableIntegerArray.java ! javafx-beans/test/javafx/collections/ObservableArrayTest.java Changeset: beec262373cc Author: Alexander Kouznetsov Date: 2013-05-31 17:21 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/beec262373cc 3DViewer: added 3D Optimizer + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 3d88225dbe0d Author: Yao Wang Date: 2013-05-31 19:11 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/3d88225dbe0d RT-30715 NPE when MeshView is added to scene with empty TriangleMesh created ! javafx-ui-common/src/javafx/scene/shape/TriangleMesh.java Changeset: cc621195ec3c Author: kcr Date: 2013-06-01 08:00 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/cc621195ec3c [TEST-ONLY] Disable failing unit tests until RT-30865 is fixed ! javafx-beans/test/javafx/collections/ObservableArrayTest.java Changeset: 582edfecdb04 Author: kcr Date: 2013-06-01 08:00 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/582edfecdb04 imported patch gradle-builders ! build.gradle ! generator.gradle ! settings.gradle Changeset: c51b01afa79b Author: Daniel Blaukopf Date: 2013-06-03 12:48 +0300 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/c51b01afa79b RT-30720 Filter out unneeded calls to glEnable(GL_SCISSOR_TEST) ! prism-es2-native/src/GLContext.c Changeset: 8af9dc9dae1c Author: Daniel Blaukopf Date: 2013-06-03 12:49 +0300 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/8af9dc9dae1c RT-30722 System property prism.glBufferSize sets color depth. Options are: 16, 24 or the default 32. ! prism-es2-native/src/eglfb/eglUtils.c ! prism-es2/src/com/sun/prism/es2/GLPixelFormat.java Changeset: fbf4a8a33a98 Author: Daniel Blaukopf Date: 2013-06-03 12:53 +0300 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/fbf4a8a33a98 Fix Lens X11 Container build ! glass/glass-lib-lens/src/wm/screen/x11ContainerScreen.c Changeset: 129d59d5a79b Author: Oldrich Maticka Date: 2013-06-03 13:34 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/129d59d5a79b Making variable static to avoid problems when statically linked with jdk8u mobile. ! javafx-iio-native/src/jpegloader.c Changeset: b0ab2280e3c7 Author: Martin Sladecek Date: 2013-06-03 13:51 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/b0ab2280e3c7 VBox optimizations ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java ! javafx-ui-common/test/unit/javafx/scene/layout/VBoxTest.java Changeset: 3402d5532f0a Author: Martin Sladecek Date: 2013-06-03 13:52 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/3402d5532f0a Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt Changeset: e7c0afb9923f Author: Alexander Kouznetsov Date: 2013-06-03 12:05 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/e7c0afb9923f ObservableArrayTest: Fixed RT-30865 ObservableArrayTest unit test fails ! javafx-beans/test/javafx/collections/ObservableArrayTest.java Changeset: 978d51d9d208 Author: Alexander Kouznetsov Date: 2013-06-03 12:13 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/978d51d9d208 Fixed occasional formatting change in the previous change: ObservableArrayTest: Fixed RT-30865 ObservableArrayTest unit test fails ! javafx-beans/test/javafx/collections/ObservableArrayTest.java Changeset: 8df94ef84244 Author: "Jasper Potts" Date: 2013-06-03 14:04 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/8df94ef84244 Added getters to SplineInterpolator internal class to be able to get data ! javafx-anim/src/com/sun/scenario/animation/SplineInterpolator.java Changeset: ebe36f2349d1 Author: "Jasper Potts" Date: 2013-06-03 14:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/ebe36f2349d1 Added Height Map to Normal Map conversion utility class and app to 3D Viewer. + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/height2normal/Height2NormalApp.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/height2normal/Height2NormalConverter.java Changeset: 2d119fc96ca6 Author: "Jasper Potts" Date: 2013-06-03 14:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/2d119fc96ca6 Added missing copyright header to DaeImporter ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/dae/DaeImporter.java Changeset: e591db661d96 Author: "Jasper Potts" Date: 2013-06-03 14:16 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/e591db661d96 Added Java source code exporter to 3D Viewer + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/javasource/JavaSourceExporter.java Changeset: a5b41e87883e Author: "Jasper Potts" Date: 2013-06-03 14:16 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/a5b41e87883e Made simple 3d viewer use a transparent window ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SimpleViewerApp.java Changeset: 5be62ada9a91 Author: "Jasper Potts" Date: 2013-06-03 16:32 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/5be62ada9a91 Fixed JavaScriptBridgeTest.java so that it builds. ! webview/test/javafx/scene/web/JavaScriptBridgeTest.java Changeset: 3a038dc4f103 Author: Alexander Kouznetsov Date: 2013-06-03 16:35 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/3a038dc4f103 3DViewer: Improved Optimizer to remove repeating KeyValues. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 1886efc4172c Author: Felipe Heidrich Date: 2013-06-03 10:57 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/1886efc4172c RT-30861: Add simple Font factory method for a default font of a different size ! javafx-ui-common/src/javafx/scene/text/Font.java Changeset: 6de310cbae85 Author: "Jasper Potts" Date: 2013-06-03 18:02 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/6de310cbae85 3D Viewer App: Cleanup of optimizer comments, fixed intellij files ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 228a62a674e3 Author: "Jasper Potts" Date: 2013-06-03 18:03 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/228a62a674e3 3D Viewer: Work on Java Source exporter ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/javasource/JavaSourceExporter.java Changeset: 3b3ae57ddd59 Author: "Jasper Potts" Date: 2013-06-03 18:27 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/3b3ae57ddd59 3D Viewer App: Added poly mesh choice checkbox ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Importer3D.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/main.fxml Changeset: 255a10ee1ed0 Author: Martin Sladecek Date: 2013-06-04 10:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/255a10ee1ed0 RT-30363 Region calls requestLayout too aggressively ! javafx-ui-common/src/javafx/scene/Group.java ! javafx-ui-common/src/javafx/scene/Node.java ! javafx-ui-common/src/javafx/scene/Parent.java ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-controls/test/com/sun/javafx/scene/control/skin/ScrollPaneSkinTest.java Changeset: aee1e049522e Author: Martin Sladecek Date: 2013-06-04 10:09 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/aee1e049522e Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt Changeset: cb35abdbc183 Author: Martin Soch Date: 2013-06-04 10:55 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/cb35abdbc183 SW pipeline: fix for SWTexture.update(..) methods (RT-30633) ! prism-sw/src/com/sun/prism/sw/SWArgbPreTexture.java ! prism-sw/src/com/sun/prism/sw/SWMaskTexture.java ! prism-sw/src/com/sun/prism/sw/SWTexture.java Changeset: 1dd4bb7090a2 Author: Anthony Petrov Date: 2013-06-04 14:05 +0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/1dd4bb7090a2 RT-30869: Win: Pen events in Windows should not be synthesized Reviewed-by: anthony, art Contributed-by: Danno Ferrin ! glass/glass-lib-windows/src/ViewContainer.cpp Changeset: eaf163a8953c Author: Alexander Zvegintsev Date: 2013-06-04 14:13 +0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/eaf163a8953c RT-30557 Gtk: Unable to showAndWait a Stage from within an UncaughtExceptionHandler in Linux ! glass/glass-lib-gtk/src/GlassApplication.cpp ! glass/glass-lib-gtk/src/GlassCommonDialogs.cpp ! glass/glass-lib-gtk/src/GlassCursor.cpp ! glass/glass-lib-gtk/src/GlassSystemClipboard.cpp ! glass/glass-lib-gtk/src/GlassTimer.cpp ! glass/glass-lib-gtk/src/GlassView.cpp ! glass/glass-lib-gtk/src/GlassWindow.cpp ! glass/glass-lib-gtk/src/glass_dnd.cpp ! glass/glass-lib-gtk/src/glass_general.cpp ! glass/glass-lib-gtk/src/glass_general.h ! glass/glass-lib-gtk/src/glass_window.cpp ! glass/glass-lib-gtk/src/glass_window.h ! glass/glass-lib-gtk/src/glass_window_ime.cpp Changeset: 31cc3ec01fdc Author: Martin Sladecek Date: 2013-06-04 14:03 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/31cc3ec01fdc RT-30740 GridPane oddness with row alignment set to VPos.BASELINE ! javafx-ui-common/src/javafx/scene/layout/GridPane.java ! javafx-ui-common/test/unit/javafx/scene/layout/GridPaneTest.java Changeset: d99a88d0b0f6 Author: Martin Sladecek Date: 2013-06-04 14:03 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/d99a88d0b0f6 Automated merge with file:///home/martin/work/jfx-80-sync/rt Changeset: 61ec5d95c144 Author: Martin Sladecek Date: 2013-06-04 14:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/61ec5d95c144 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt Changeset: 8720c6729e2c Author: kcr Date: 2013-06-04 08:28 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/8720c6729e2c Backed out changeset 5be62ada9a91 to fix unit test failure Changeset: e096b075097d Author: kcr Date: 2013-06-04 08:32 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/e096b075097d Backed out changeset 5be62ada9a91 to fix unit test failure ! webview/test/javafx/scene/web/JavaScriptBridgeTest.java Changeset: ea108dc8da59 Author: jgodinez Date: 2013-06-04 09:43 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/ea108dc8da59 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt - javafx-builders/test/unit/com/sun/javafx/test/PropertiesTestBase.java - javafx-builders/test/unit/com/sun/javafx/test/PropertyReference.java - javafx-builders/test/unit/com/sun/javafx/test/binding/ReflectionHelper.java - javafx-builders/test/unit/javafx/scene/Node_properties_Test.java - javafx-builders/test/unit/javafx/scene/Scene_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Blend_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Bloom_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/BoxBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorAdjust_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DisplacementMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DistantLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DropShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/FloatMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/GaussianBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Glow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ImageInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/InnerShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Lighting_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/MotionBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PerspectiveTransform_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PointLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Reflection_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SepiaTone_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Shadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SpotLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/ArcTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Arc_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Circle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Ellipse_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/HLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/LineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Line_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/MoveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Path_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Rectangle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/SVGPath_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Shape_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/VLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/transform/Transform_properties_Test.java Changeset: 40836a4b4d85 Author: David Grieve Date: 2013-06-05 08:08 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/40836a4b4d85 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt ! build.properties ! javafx-ui-controls/src/javafx/scene/control/DatePicker.java ! javafx-ui-controls/src/javafx/scene/control/ListCell.java ! javafx-ui-controls/src/javafx/scene/control/TableCell.java ! javafx-ui-controls/src/javafx/scene/control/TableColumnBase.java ! javafx-ui-controls/src/javafx/scene/control/TreeCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableCell.java From hang.vo at oracle.com Wed Jun 5 06:34:08 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 13:34:08 +0000 Subject: hg: openjfx/8/graphics/rt: 3 new changesets Message-ID: <20130605133523.18C6B48F8F@hg.openjdk.java.net> Changeset: 411a75a54143 Author: Martin Soch Date: 2013-06-05 15:10 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/411a75a54143 SW pipeline: fix for performance regression in image rendering (RT-30710) ! prism-sw-native/src/JPiscesRenderer.c ! prism-sw-native/src/PiscesBlit.c Changeset: bb8e96b8b2b3 Author: Martin Soch Date: 2013-06-05 15:14 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/bb8e96b8b2b3 SW pipeline: removing default comments from SWArgbPreTexture class ! prism-sw/src/com/sun/prism/sw/SWArgbPreTexture.java Changeset: 54446b832921 Author: Martin Soch Date: 2013-06-05 15:16 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/54446b832921 merge From hang.vo at oracle.com Wed Jun 5 06:49:00 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 13:49:00 +0000 Subject: hg: openjfx/8/graphics/rt: Layouts - getChildren() optimization Message-ID: <20130605134929.D3D0D48F93@hg.openjdk.java.net> Changeset: cfc2addd8247 Author: Radko Najman Date: 2013-06-05 15:39 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/cfc2addd8247 Layouts - getChildren() optimization ! javafx-ui-common/src/javafx/scene/layout/AnchorPane.java ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/StackPane.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java From jgodino at yahoo.com Wed Jun 5 08:01:46 2013 From: jgodino at yahoo.com (Francisco Javier Godino) Date: Wed, 5 Jun 2013 08:01:46 -0700 (PDT) Subject: JAVAFX & Android Message-ID: <1370444506.38466.YahooMailNeo@web121703.mail.ne1.yahoo.com> Hello: I would like to create applications on Android. Someone know when will be possible? How I can begin with android? Thanks a lot!!! Javier From mark.howe at oracle.com Wed Jun 5 08:21:55 2013 From: mark.howe at oracle.com (Mark Howe) Date: Wed, 5 Jun 2013 08:21:55 -0700 Subject: Preloaders In-Reply-To: References: <05E11FF5-5C95-465D-BDD5-2089A3EE16F2@gmail.com> <8BC3E092-F8A6-4969-898B-6A62A6A504D1@oracle.com> Message-ID: <367559C1-BE67-487D-8BA2-B4439FDF46E3@oracle.com> I actually spent at least half my time on the packager the last two weeks - woo hoo :). Still have other priorities but am finding time for the packager. Working on a few critical packager bugs right now. Then later this week going to finally get Danno's patches in. There are a lot of packager bugs in the backlog. Once some of that backlog is cleared up I am going to do some refactoring, really want to make the code simpler, cleaner and more obvious - and subsequently easier to contribute to. Cheers On Jun 5, 2013, at 5:14 AM, Daniel Zwolenski wrote: > Thanks Mark. If the user sets a preloader in the plugin I'm going to pass that same class to the jar and to the native bundle. I guess people will complain to me if that doesn't work and I'll point them your way. > > Are they ever going to let you do some packager stuff? I gave up waiting for the revolution and rebuilt the maven plugin to be less crap than it was but its the underlying packaging tools that need the rewrite if JFX is ever going to have a decent deployment option. > > On 05/06/2013, at 3:58 AM, Mark Howe wrote: > >> It should be the one within the bundle otherwise deploying an app bundle won't work. If you find otherwise please create an issue. >> >> >> Cheers >> Mark >> >> On May 29, 2013, at 6:51 AM, Scott Palmer wrote: >> >>> I think native bundles should use the preloader contained within. I use >>> the Preloader to implement a splash screen since my app takes a long time >>> to start up, even though all the jars are already "downloaded". >>> >>> >>> On Wed, May 29, 2013 at 8:40 AM, Daniel Zwolenski wrote: >>> >>>> The jfx packaging tools allow pre-loaders to be set. I don't use them but >>>> people using the maven plugin want them. >>>> >>>> It looks like you can set a preloader for both jars and for bundles (web, >>>> native). When building the bundles however they include the jar in them. So >>>> we end up with both the bundle, and the jar within the bundle, getting the >>>> preloader set. >>>> >>>> Does anyone know what will or should happen in this case? Does one >>>> preloader take precedence and the other is ignored, or are both used at >>>> different times and I should allow the user to set a different jar >>>> preloader to the bundle one, or is this setup invalid and I should actually >>>> not pass the preloader setting to one or the other in this case? >>>> >>>> Not using Preloaders myself and with the packaging tool code being a >>>> complete mess, it would be good to know the expectations here so I can >>>> properly support the users wanting this. >>>> >>>> Cheers >>>> Dan >> From hang.vo at oracle.com Wed Jun 5 10:05:50 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 17:05:50 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30916 Winlauncher.cpp failing to compile with Gradle Message-ID: <20130605170615.EF2D448FB2@hg.openjdk.java.net> Changeset: 18e84f5dbf41 Author: kcr Date: 2013-06-05 09:53 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/18e84f5dbf41 RT-30916 Winlauncher.cpp failing to compile with Gradle Contributed-by: Mark Howe Reviewed-by: ngthomas, kcr ! deploy/packager/native/windows/WinLauncher.cpp From hang.vo at oracle.com Wed Jun 5 10:33:47 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 17:33:47 +0000 Subject: hg: openjfx/8/graphics/rt: [COSMETIC CHANGE ONLY] workaround for Eclipse compiler Message-ID: <20130605173406.3038548FB3@hg.openjdk.java.net> Changeset: 786c1575aac2 Author: snorthov Date: 2013-06-05 13:19 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/786c1575aac2 [COSMETIC CHANGE ONLY] workaround for Eclipse compiler ! javafx-beans/src/javafx/collections/transformation/SortedList.java From hang.vo at oracle.com Wed Jun 5 11:49:12 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 18:49:12 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30862: Animated text leaves cheese on the scene Message-ID: <20130605184931.BBD9548FC0@hg.openjdk.java.net> Changeset: c549e432383d Author: Felipe Heidrich Date: 2013-06-05 11:39 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/c549e432383d RT-30862: Animated text leaves cheese on the scene ! prism-common/src/com/sun/prism/impl/GlyphCache.java From hjohn at xs4all.nl Wed Jun 5 12:25:40 2013 From: hjohn at xs4all.nl (John Hendrikx) Date: Wed, 05 Jun 2013 21:25:40 +0200 Subject: Usecase for needsLayout property? In-Reply-To: <51AF1B30.3020204@oracle.com> References: <51AF04F5.9010202@xs4all.nl> <51AF1B30.3020204@oracle.com> Message-ID: <51AF90B4.4020001@xs4all.nl> Thanks Martin, I've done my best to quickly "extract" the code from my application... however, I cannot reproduce the issue there in a direct fashion -- however, I did discover an issue which may be the reason I see a partial group, I filed that as RT-30952 (TilePane doesn't appear until after Stage resized a bit). Basically, my main application is much more "active", and will do a lot of background stuff, which may trigger more layouts -- that's why there I may only see the partial group for a moment (flickering when I scroll through the big list) before it gets displayed completely. In this test application, I see it much more directly where the group that I want to see is simply not complete until more action is taken. I also filed another issue, RT-30951 because the resizing of a Stage is very jittery (the controls keep moving a bit from their correct positions when in the process of resizing a Stage)... seems like some font-metrics or other calculation is not producing repeatable results resulting in a slightly different layout every time... --John On 5/06/2013 13:04, Martin Sladecek wrote: > Hi John, > the problem you described is most likely caused by something else as > the layout pass occurs BEFORE the actual rendering. > Also, you bind managed and visible of the entire VBox, not just the > title. So it's strange that you see Label correctly laid-out, but not > the content. > > Can you make some sample and attach it to a JIRA issue, so I can have > a look what's actually happening there? > > Thanks, > -Martin > > On 06/05/2013 11:29 AM, John Hendrikx wrote: >> I'm having a bit of a chicken-egg problem with regards to some >> dynamically sized components I'm displaying in my application. >> >> Description: >> I have a group with a title that wraps some content and displays a >> title above it -- the entire group, including the title must be >> hidden and unmanaged when the content it is wrapping is empty, here >> it is in code: >> >> protected Pane createTitledBlock(final String title, final Node >> content, final BooleanExpression visibleCondition) { >> return new VBox() {{ >> setFillWidth(true); >> getChildren().add(new Label(title) {{ >> getStyleClass().add("header"); >> }}); >> getChildren().add(content); >> if(visibleCondition != null) { >> managedProperty().bind(visibleCondition); >> visibleProperty().bind(visibleCondition); >> } >> }}; >> } >> >> >> Problem: >> When the content becomes available and visibleCondition gets toggled >> to true, the content part of the titled group is not yet laid out. >> This causes the title to be visible without any content briefly until >> a layout pass occurs. >> >> Timeline: >> - Group with title is hidden/unmanaged >> - The content gets updated and visibleCondition is set to true >> - Group with title becomes visible/managed >> - Briefly an empty group with title is displayed >> - Layout occurs, group with title gets resized >> >> Now, I'm thinking of playing with the needsLayout property and >> delaying the making visible/managed of the titled group until >> needsLayout is false... however, I have a feeling that won't work as >> an unmanaged/hidden group is probably not gonna participate in the >> layout, resulting in needsLayout never becoming false again as it is >> not visible/managed yet... >> >> Any ideas how I could resolve this, and have the group with title >> only visible and managed when it is properly laid out? >> >> Also, has any progress in general been made with regards to >> hidden/unmanaged controls and determining their expected size when >> they're made visible/managed? >> >> --John > From hang.vo at oracle.com Wed Jun 5 12:33:26 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 19:33:26 +0000 Subject: hg: openjfx/8/graphics/rt: 3 new changesets Message-ID: <20130605193413.401CB48FC3@hg.openjdk.java.net> Changeset: dc90699e1820 Author: snorthov Date: 2013-06-05 14:55 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/dc90699e1820 [COSMETIC CHANGE ONLY] workaround for Eclipse compiler ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/TimelineController.java Changeset: a8528aa93120 Author: Alexander Kouznetsov Date: 2013-06-05 11:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/a8528aa93120 Fix for RT-30891 Interpolators don't implement equals. Reviewed-by: Martin ! javafx-anim/src/com/sun/scenario/animation/NumberTangentInterpolator.java ! javafx-anim/src/com/sun/scenario/animation/SplineInterpolator.java ! javafx-anim/src/javafx/animation/Interpolator.java ! javafx-anim/test/unit/com/sun/scenario/animation/NumberTangentInterpolatorTest.java + javafx-anim/test/unit/com/sun/scenario/animation/SplineInterpolatorTest.java Changeset: 63bf3c13723a Author: Alexander Kouznetsov Date: 2013-06-05 12:19 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/63bf3c13723a Automated merge with ssh://jfxsrc.sfbay.sun.com//javafx/8.0/scrum/graphics/jfx/rt/ From hjohn at xs4all.nl Wed Jun 5 12:38:54 2013 From: hjohn at xs4all.nl (John Hendrikx) Date: Wed, 05 Jun 2013 21:38:54 +0200 Subject: ObservableValue Stacktrace Message-ID: <51AF93CE.1000400@xs4all.nl> Hi List, I'm getting some log messages sometimes (see at the end) about properties being null (whereas I didn't get them before in JavaFX 2.2). Is this intended as an informative message to the developer, something I should report, or just debug code for the JavaFX team? In this case, the binding is null, and that's fine -- it will be populated later, but the binding is already in place -- I thought JavaFX was designed to allow nulls in a chain of bindings and fall back to reasonable defaults for things like Strings, numbers etc? Am I doing something wrong? Code: { private final ObjectProperty data = new SimpleObjectProperty<>(); public ObjectProperty dataProperty() { return data; } protected final ObjectBinding> castings = Bindings.select(dataProperty(), "castings"); } Log: Jun 05, 2013 9:15:55 PM com.sun.javafx.binding.SelectBinding$SelectBindingHelper getObservableValue WARNING: Exception while evaluating select-binding [castings] Jun 05, 2013 9:15:55 PM com.sun.javafx.binding.SelectBinding$SelectBindingHelper getObservableValue WARNING: Property 'castings' in ObjectProperty [bound, value: null] is null java.lang.NullPointerException at com.sun.javafx.binding.SelectBinding$SelectBindingHelper.getObservableValue(SelectBinding.java:481) at com.sun.javafx.binding.SelectBinding$AsObject.computeValue(SelectBinding.java:92) at javafx.beans.binding.ObjectBinding.get(ObjectBinding.java:152) at javafx.beans.binding.ObjectExpression.getValue(ObjectExpression.java:49) at com.sun.javafx.binding.ExpressionHelper.addListener(ExpressionHelper.java:53) at javafx.beans.binding.ObjectBinding.addListener(ObjectBinding.java:71) at javafx.beans.property.ObjectPropertyBase.bind(ObjectPropertyBase.java:170) at hs.mediasystem.TitledBlockSample.createCastingsRow(TitledBlockSample.java:114) at hs.mediasystem.TitledBlockSample.start(TitledBlockSample.java:78) at com.sun.javafx.application.LauncherImpl$5.run(LauncherImpl.java:810) at com.sun.javafx.application.PlatformImpl$6.run(PlatformImpl.java:260) at com.sun.javafx.application.PlatformImpl$5$1.run(PlatformImpl.java:226) at com.sun.javafx.application.PlatformImpl$5$1.run(PlatformImpl.java:223) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl$5.run(PlatformImpl.java:223) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) at com.sun.glass.ui.win.WinApplication.access$300(WinApplication.java:39) at com.sun.glass.ui.win.WinApplication$3$1.run(WinApplication.java:101) at java.lang.Thread.run(Thread.java:724) Regards, --John From hang.vo at oracle.com Wed Jun 5 13:34:12 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 20:34:12 +0000 Subject: hg: openjfx/8/graphics/rt: RT-13813: Full screen overlay warning needs to be MT safe Message-ID: <20130605203433.BDDC248FC6@hg.openjdk.java.net> Changeset: 4f4bc0128afe Author: snorthov Date: 2013-06-05 16:28 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/4f4bc0128afe RT-13813: Full screen overlay warning needs to be MT safe ! javafx-ui-common/src/com/sun/javafx/tk/Toolkit.java ! javafx-ui-common/src/javafx/scene/Scene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/AbstractPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/GlassStage.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/OverlayWarning.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumToolkit.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/WindowStage.java From richard.bair at oracle.com Wed Jun 5 14:49:51 2013 From: richard.bair at oracle.com (Richard Bair) Date: Wed, 5 Jun 2013 14:49:51 -0700 Subject: JDK 8 dependency Message-ID: <405128F4-BF1D-4C2E-99B3-B82DC1AADC3E@oracle.com> Hi guys, To help the JDK 7 back port effort, I wanted to bring up a JIRA issue which will have some impact on that back port to both let you know the issue and see what you think about it. Basically, until we fix this issue, the JDK cannot remove some code that they are planning to remove in 8. I think this is a place where the back port will need to have some patch to basically undo what I'm about to do :-) https://javafx-jira.kenai.com/browse/RT-29523 We can carry on the discussion in this bug. Richard From hang.vo at oracle.com Wed Jun 5 14:48:48 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 21:48:48 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30954: Open Source javafx-accessible Message-ID: <20130605214925.A3A9F48FC7@hg.openjdk.java.net> Changeset: 1725cd8784b0 Author: rbair Date: 2013-06-05 14:35 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/1725cd8784b0 RT-30954: Open Source javafx-accessible ! generator.gradle ! glass/build-closed.xml + javafx-accessible/build-closed.xml + javafx-accessible/build.xml + javafx-accessible/nbproject/project.xml + javafx-accessible/project.properties + javafx-accessible/src/com/sun/javafx/accessible/providers/Accessible.java + javafx-accessible/src/com/sun/javafx/accessible/providers/AccessibleProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/AccessibleStageProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/ExpandCollapseProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/GridItemProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/GridProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/InvokeProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/RangeValueProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/SelectionItemProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/SelectionProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/ToggleProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/ValueProvider.java + javafx-accessible/src/com/sun/javafx/accessible/utils/ControlTypeIds.java + javafx-accessible/src/com/sun/javafx/accessible/utils/EventIds.java + javafx-accessible/src/com/sun/javafx/accessible/utils/ExpandCollapseState.java + javafx-accessible/src/com/sun/javafx/accessible/utils/NavigateDirection.java + javafx-accessible/src/com/sun/javafx/accessible/utils/OrientationType.java + javafx-accessible/src/com/sun/javafx/accessible/utils/PatternIds.java + javafx-accessible/src/com/sun/javafx/accessible/utils/PropertyIds.java + javafx-accessible/src/com/sun/javafx/accessible/utils/ProviderOptions.java + javafx-accessible/src/com/sun/javafx/accessible/utils/Rect.java + javafx-accessible/src/com/sun/javafx/accessible/utils/ToggleState.java ! javafx-ui-common/build-closed.xml ! javafx-ui-common/project.properties ! javafx-ui-controls/build-closed.xml ! javafx-ui-quantum/build-closed.xml ! javafx-ui-quantum/project.properties ! test-stub-toolkit/build-closed.xml ! test-stub-toolkit/project.properties From hang.vo at oracle.com Wed Jun 5 15:58:55 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 22:58:55 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130605225956.D500948FD1@hg.openjdk.java.net> Changeset: fc584651b922 Author: snorthov Date: 2013-06-05 18:29 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/fc584651b922 Backed out of changeset 3837:4f4bc0128afe ! javafx-ui-common/src/com/sun/javafx/tk/Toolkit.java ! javafx-ui-common/src/javafx/scene/Scene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/AbstractPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/GlassStage.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/OverlayWarning.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumToolkit.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/WindowStage.java Changeset: 9d3e54202b29 Author: snorthov Date: 2013-06-05 18:30 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/9d3e54202b29 Merge with fc584651b922c9a366c874dba602382c5b78daef From hang.vo at oracle.com Wed Jun 5 16:07:21 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 23:07:21 +0000 Subject: hg: openjfx/8/graphics/rt: fix .classpath Message-ID: <20130605230742.DF77E48FD2@hg.openjdk.java.net> Changeset: d9e00fa40ee1 Author: snorthov Date: 2013-06-05 18:58 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/d9e00fa40ee1 fix .classpath ! .classpath From richard.bair at oracle.com Wed Jun 5 16:32:07 2013 From: richard.bair at oracle.com (Richard Bair) Date: Wed, 5 Jun 2013 16:32:07 -0700 Subject: [API review] RT-30668: ClipboardContent has buggy API In-Reply-To: <51AF25B4.6060602@oracle.com> References: <51AF25B4.6060602@oracle.com> Message-ID: <51D596C4-5FE7-4FF1-99E8-CC0B16211849@oracle.com> > Issue 1: > Every putSomething method documentation says: > * Setting this value to null effectively clears it from the clipboard. > * @throws NullPointerException if null reference is passed > > We need to choose one of the two described behaviors. Currently the code throws NPE. > For some complicated content creation logic the clearing may be useful, so I propose to let the passed null reference clear the value. Sounds fine (I prefer not having the exception for sure). > Issue 2: > Every putSomething method documentation says: > * @return True if the something was successfully placed on the clipboard. > And in other places it refers to "this clipboard". But this is not clipboard, it is the ClipboardContent which is later set to the Clipboard - and this operation returns the "successful" boolean. > > So we definitely should rephrase the documentation. In the "putter", if we say > * @return True if the something was successfully placed on the clipboard content. > then it needs to always return true (putting a reference to a map doesn't fail) which is not the case right now (right now the behavior is senseless, it returns true if the same thing is put there for the second time). As the "always true" is not really useful, and because of backward compatibility we can hardly change the return value to map's usual "previous value", we can consider at least redefining the boolean to something like "returns true if a previously added value was replaced". > > What do you think? I'd probably go with the "always true", which not useful but at least quite intuitive. I would document it to return always true to spare users pointless checks. I agree. Thanks Richard From hang.vo at oracle.com Wed Jun 5 16:33:44 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 05 Jun 2013 23:33:44 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30955 JDK-8015656 causes gradle build breakage Message-ID: <20130605233411.971BE48FD3@hg.openjdk.java.net> Changeset: f44e9ccc9d15 Author: Richard Bair Date: 2013-06-05 16:25 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/f44e9ccc9d15 RT-30955 JDK-8015656 causes gradle build breakage ! gradleBuildSrc/build.gradle From hang.vo at oracle.com Wed Jun 5 18:50:17 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 01:50:17 +0000 Subject: hg: openjfx/8/graphics/rt: Fix to RT-30340: Functional regression in Charts.Scatter benchmark on embedded since h995 of graphics scrum Message-ID: <20130606015034.4B83948FDD@hg.openjdk.java.net> Changeset: e7050b44101a Author: Chien Yang Date: 2013-06-06 09:32 +0800 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/e7050b44101a Fix to RT-30340: Functional regression in Charts.Scatter benchmark on embedded since h995 of graphics scrum Reviewed by Kevin ! prism-common/src/com/sun/prism/impl/BaseGraphics.java From hang.vo at oracle.com Wed Jun 5 19:17:17 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 02:17:17 +0000 Subject: hg: openjfx/2u/master/rt: Added tag 2.2.40-b28 for changeset fac50f983ffa Message-ID: <20130606021722.632B748FE5@hg.openjdk.java.net> Changeset: 6b5ccbc93d06 Author: hudson Date: 2013-06-05 13:23 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/master/rt/rev/6b5ccbc93d06 Added tag 2.2.40-b28 for changeset fac50f983ffa ! .hgtags From hang.vo at oracle.com Wed Jun 5 19:18:43 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 02:18:43 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130606021936.0C06048FE6@hg.openjdk.java.net> Changeset: 7ac411e54de3 Author: Richard Bair Date: 2013-06-05 19:08 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/7ac411e54de3 RT-30499: Rename groovy/com/sun/javafx/build package to something without "build" in the name Summary: renamed package to "gradle". - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CCTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CompileHLSLTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CompileResourceTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/JavaHeaderTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/LinkTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/NativeCompileTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/CCTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/CompileHLSLTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/CompileResourceTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/JavaHeaderTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/LinkTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/NativeCompileTask.groovy Changeset: 0049b4190d1b Author: Chien Yang Date: 2013-06-06 10:13 +0800 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/0049b4190d1b Fix to RT-30594: Evaluate the restriction set on Mesh's indexBuffer (see RT-30448) Reviewed by Kevin ! javafx-ui-common/src/javafx/scene/shape/TriangleMesh.java ! prism-common/src/com/sun/prism/impl/BaseMesh.java ! prism-d3d-native/src/D3DContext.cc ! prism-d3d-native/src/D3DMesh.cc ! prism-d3d-native/src/D3DMesh.h ! prism-d3d/src/com/sun/prism/d3d/D3DContext.java ! prism-d3d/src/com/sun/prism/d3d/D3DMesh.java ! prism-es2-native/src/GLContext.c ! prism-es2-native/src/PrismES2Defs.h ! prism-es2/src/com/sun/prism/es2/ES2Context.java ! prism-es2/src/com/sun/prism/es2/ES2Mesh.java ! prism-es2/src/com/sun/prism/es2/GLContext.java From zonski at gmail.com Wed Jun 5 19:33:41 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Thu, 6 Jun 2013 12:33:41 +1000 Subject: Preloaders In-Reply-To: <367559C1-BE67-487D-8BA2-B4439FDF46E3@oracle.com> References: <05E11FF5-5C95-465D-BDD5-2089A3EE16F2@gmail.com> <8BC3E092-F8A6-4969-898B-6A62A6A504D1@oracle.com> <367559C1-BE67-487D-8BA2-B4439FDF46E3@oracle.com> Message-ID: Great news - happy to provide more input and feedback into the new tools/APIs when you get to that. I'd guess that Danno's probably got some good input for that side of it too - would be great to keep the conversations open and on this mailing list. For my money, I'd vote for only show stopper bugs getting fixed on the existing packager code base, and you focus on getting it all cleaned up and working nice and a better pattern for contributions in place. That could allow us to contribute more and stop you churning endlessly on a backlog of bugs. Cheers, Dan On Thu, Jun 6, 2013 at 1:21 AM, Mark Howe wrote: > I actually spent at least half my time on the packager the last two weeks > - woo hoo :). Still have other priorities but am finding time for the > packager. Working on a few critical packager bugs right now. Then later > this week going to finally get Danno's patches in. There are a lot of > packager bugs in the backlog. Once some of that backlog is cleared up I am > going to do some refactoring, really want to make the code simpler, > cleaner and more obvious - and subsequently easier to contribute to. > > Cheers > > > On Jun 5, 2013, at 5:14 AM, Daniel Zwolenski wrote: > > > Thanks Mark. If the user sets a preloader in the plugin I'm going to > pass that same class to the jar and to the native bundle. I guess people > will complain to me if that doesn't work and I'll point them your way. > > > > Are they ever going to let you do some packager stuff? I gave up waiting > for the revolution and rebuilt the maven plugin to be less crap than it was > but its the underlying packaging tools that need the rewrite if JFX is ever > going to have a decent deployment option. > > > > On 05/06/2013, at 3:58 AM, Mark Howe wrote: > > > >> It should be the one within the bundle otherwise deploying an app > bundle won't work. If you find otherwise please create an issue. > >> > >> > >> Cheers > >> Mark > >> > >> On May 29, 2013, at 6:51 AM, Scott Palmer wrote: > >> > >>> I think native bundles should use the preloader contained within. I > use > >>> the Preloader to implement a splash screen since my app takes a long > time > >>> to start up, even though all the jars are already "downloaded". > >>> > >>> > >>> On Wed, May 29, 2013 at 8:40 AM, Daniel Zwolenski > wrote: > >>> > >>>> The jfx packaging tools allow pre-loaders to be set. I don't use them > but > >>>> people using the maven plugin want them. > >>>> > >>>> It looks like you can set a preloader for both jars and for bundles > (web, > >>>> native). When building the bundles however they include the jar in > them. So > >>>> we end up with both the bundle, and the jar within the bundle, > getting the > >>>> preloader set. > >>>> > >>>> Does anyone know what will or should happen in this case? Does one > >>>> preloader take precedence and the other is ignored, or are both used > at > >>>> different times and I should allow the user to set a different jar > >>>> preloader to the bundle one, or is this setup invalid and I should > actually > >>>> not pass the preloader setting to one or the other in this case? > >>>> > >>>> Not using Preloaders myself and with the packaging tool code being a > >>>> complete mess, it would be good to know the expectations here so I can > >>>> properly support the users wanting this. > >>>> > >>>> Cheers > >>>> Dan > >> > > From danno.ferrin at shemnon.com Wed Jun 5 20:15:35 2013 From: danno.ferrin at shemnon.com (Danno Ferrin) Date: Wed, 5 Jun 2013 21:15:35 -0600 Subject: Preloaders In-Reply-To: References: <05E11FF5-5C95-465D-BDD5-2089A3EE16F2@gmail.com> <8BC3E092-F8A6-4969-898B-6A62A6A504D1@oracle.com> <367559C1-BE67-487D-8BA2-B4439FDF46E3@oracle.com> Message-ID: For me the biggest add would be for some form of runtime configuration of the packager, as well as the bundler params. this would allow outside contributors to cerate an APK bundler or an iOS bundler of many forms without having to adjust the core code, and allowing them to be brought in at "runtime" (the runtime of the build). This also extends to the bundle params having an open-ended property set of some sort, so things that matter to random packaging formats don't leak into other bundle params. My dream would be to be able to create an APK or other such bundle just by flipping a param in the packager call form an otherwise desktop app. On Wed, Jun 5, 2013 at 8:33 PM, Daniel Zwolenski wrote: > Great news - happy to provide more input and feedback into the new > tools/APIs when you get to that. I'd guess that Danno's probably got some > good input for that side of it too - would be great to keep the > conversations open and on this mailing list. > > For my money, I'd vote for only show stopper bugs getting fixed on the > existing packager code base, and you focus on getting it all cleaned up and > working nice and a better pattern for contributions in place. That could > allow us to contribute more and stop you churning endlessly on a backlog of > bugs. > > Cheers, > Dan > > > On Thu, Jun 6, 2013 at 1:21 AM, Mark Howe wrote: > > > I actually spent at least half my time on the packager the last two weeks > > - woo hoo :). Still have other priorities but am finding time for the > > packager. Working on a few critical packager bugs right now. Then later > > this week going to finally get Danno's patches in. There are a lot of > > packager bugs in the backlog. Once some of that backlog is cleared up I > am > > going to do some refactoring, really want to make the code simpler, > > cleaner and more obvious - and subsequently easier to contribute to. > > > > Cheers > > > > > > On Jun 5, 2013, at 5:14 AM, Daniel Zwolenski wrote: > > > > > Thanks Mark. If the user sets a preloader in the plugin I'm going to > > pass that same class to the jar and to the native bundle. I guess people > > will complain to me if that doesn't work and I'll point them your way. > > > > > > Are they ever going to let you do some packager stuff? I gave up > waiting > > for the revolution and rebuilt the maven plugin to be less crap than it > was > > but its the underlying packaging tools that need the rewrite if JFX is > ever > > going to have a decent deployment option. > > > > > > On 05/06/2013, at 3:58 AM, Mark Howe wrote: > > > > > >> It should be the one within the bundle otherwise deploying an app > > bundle won't work. If you find otherwise please create an issue. > > >> > > >> > > >> Cheers > > >> Mark > > >> > > >> On May 29, 2013, at 6:51 AM, Scott Palmer wrote: > > >> > > >>> I think native bundles should use the preloader contained within. I > > use > > >>> the Preloader to implement a splash screen since my app takes a long > > time > > >>> to start up, even though all the jars are already "downloaded". > > >>> > > >>> > > >>> On Wed, May 29, 2013 at 8:40 AM, Daniel Zwolenski > > wrote: > > >>> > > >>>> The jfx packaging tools allow pre-loaders to be set. I don't use > them > > but > > >>>> people using the maven plugin want them. > > >>>> > > >>>> It looks like you can set a preloader for both jars and for bundles > > (web, > > >>>> native). When building the bundles however they include the jar in > > them. So > > >>>> we end up with both the bundle, and the jar within the bundle, > > getting the > > >>>> preloader set. > > >>>> > > >>>> Does anyone know what will or should happen in this case? Does one > > >>>> preloader take precedence and the other is ignored, or are both used > > at > > >>>> different times and I should allow the user to set a different jar > > >>>> preloader to the bundle one, or is this setup invalid and I should > > actually > > >>>> not pass the preloader setting to one or the other in this case? > > >>>> > > >>>> Not using Preloaders myself and with the packaging tool code being a > > >>>> complete mess, it would be good to know the expectations here so I > can > > >>>> properly support the users wanting this. > > >>>> > > >>>> Cheers > > >>>> Dan > > >> > > > > > From zonski at gmail.com Wed Jun 5 20:47:16 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Thu, 6 Jun 2013 13:47:16 +1000 Subject: Preloaders In-Reply-To: References: <05E11FF5-5C95-465D-BDD5-2089A3EE16F2@gmail.com> <8BC3E092-F8A6-4969-898B-6A62A6A504D1@oracle.com> <367559C1-BE67-487D-8BA2-B4439FDF46E3@oracle.com> Message-ID: <2CB20C8C-B6BA-4DF3-BC3D-16D70C9EB963@gmail.com> To sum up my previous major suggestions for a better world: - everything should be easily configurable via runtime params passed to packager code: input paths, output paths, paths to native tools, resources, includes, file names, etc. Everything! - web deploy code should be separate module from native, and jar separate again. Each native module (win, Linux, Mac) should be separate and I should be able to invoke any and all of them how and when I want, not just one generateDeployment method as the only entry point. - java code of packager should be one library for all platforms so we have one jar for all, not a separate one for each OS. Native bits are referenced from this one jar as needed. - native should not have dumb stuff from web as a requirement if not used. Signing, special jfx meta-inf in jars, checking registry for jdk, etc, etc. Native is actually very simple and really should be able to work with a stock standard jar and not need a special jfx built one. Web should be quarrantined so that native isn't sullied by it. - no magic config in the core libraries (higher wrappers can try and add it on top). Eg It shouldn't look for wix and use it just because it's installed. I should be able to specify I want wix or inno and tools should fail if they are not there. That's just looking at improvements to what's already there. As far as my picks for new features, these would be my top: - app store support (desktop at this stage) - auto updating support for native bundles - cross platform builds on the one machine (ie build for Mac from a windows machine, etc). Also build a 32bit distro on a 64bit jdk, etc. - compact jre's for smaller distro sizes. Just a little wish list :) Cheers, Dan On 06/06/2013, at 1:15 PM, Danno Ferrin wrote: > For me the biggest add would be for some form of runtime configuration of the packager, as well as the bundler params. this would allow outside contributors to cerate an APK bundler or an iOS bundler of many forms without having to adjust the core code, and allowing them to be brought in at "runtime" (the runtime of the build). This also extends to the bundle params having an open-ended property set of some sort, so things that matter to random packaging formats don't leak into other bundle params. My dream would be to be able to create an APK or other such bundle just by flipping a param in the packager call form an otherwise desktop app. > > On Wed, Jun 5, 2013 at 8:33 PM, Daniel Zwolenski wrote: > Great news - happy to provide more input and feedback into the new > tools/APIs when you get to that. I'd guess that Danno's probably got some > good input for that side of it too - would be great to keep the > conversations open and on this mailing list. > > For my money, I'd vote for only show stopper bugs getting fixed on the > existing packager code base, and you focus on getting it all cleaned up and > working nice and a better pattern for contributions in place. That could > allow us to contribute more and stop you churning endlessly on a backlog of > bugs. > > Cheers, > Dan > > > On Thu, Jun 6, 2013 at 1:21 AM, Mark Howe wrote: > > > I actually spent at least half my time on the packager the last two weeks > > - woo hoo :). Still have other priorities but am finding time for the > > packager. Working on a few critical packager bugs right now. Then later > > this week going to finally get Danno's patches in. There are a lot of > > packager bugs in the backlog. Once some of that backlog is cleared up I am > > going to do some refactoring, really want to make the code simpler, > > cleaner and more obvious - and subsequently easier to contribute to. > > > > Cheers > > > > > > On Jun 5, 2013, at 5:14 AM, Daniel Zwolenski wrote: > > > > > Thanks Mark. If the user sets a preloader in the plugin I'm going to > > pass that same class to the jar and to the native bundle. I guess people > > will complain to me if that doesn't work and I'll point them your way. > > > > > > Are they ever going to let you do some packager stuff? I gave up waiting > > for the revolution and rebuilt the maven plugin to be less crap than it was > > but its the underlying packaging tools that need the rewrite if JFX is ever > > going to have a decent deployment option. > > > > > > On 05/06/2013, at 3:58 AM, Mark Howe wrote: > > > > > >> It should be the one within the bundle otherwise deploying an app > > bundle won't work. If you find otherwise please create an issue. > > >> > > >> > > >> Cheers > > >> Mark > > >> > > >> On May 29, 2013, at 6:51 AM, Scott Palmer wrote: > > >> > > >>> I think native bundles should use the preloader contained within. I > > use > > >>> the Preloader to implement a splash screen since my app takes a long > > time > > >>> to start up, even though all the jars are already "downloaded". > > >>> > > >>> > > >>> On Wed, May 29, 2013 at 8:40 AM, Daniel Zwolenski > > wrote: > > >>> > > >>>> The jfx packaging tools allow pre-loaders to be set. I don't use them > > but > > >>>> people using the maven plugin want them. > > >>>> > > >>>> It looks like you can set a preloader for both jars and for bundles > > (web, > > >>>> native). When building the bundles however they include the jar in > > them. So > > >>>> we end up with both the bundle, and the jar within the bundle, > > getting the > > >>>> preloader set. > > >>>> > > >>>> Does anyone know what will or should happen in this case? Does one > > >>>> preloader take precedence and the other is ignored, or are both used > > at > > >>>> different times and I should allow the user to set a different jar > > >>>> preloader to the bundle one, or is this setup invalid and I should > > actually > > >>>> not pass the preloader setting to one or the other in this case? > > >>>> > > >>>> Not using Preloaders myself and with the packaging tool code being a > > >>>> complete mess, it would be good to know the expectations here so I can > > >>>> properly support the users wanting this. > > >>>> > > >>>> Cheers > > >>>> Dan > > >> > > > > > From martin.sladecek at oracle.com Thu Jun 6 00:34:38 2013 From: martin.sladecek at oracle.com (Martin Sladecek) Date: Thu, 06 Jun 2013 09:34:38 +0200 Subject: ObservableValue Stacktrace In-Reply-To: <51AF93CE.1000400@xs4all.nl> References: <51AF93CE.1000400@xs4all.nl> Message-ID: <51B03B8E.2030208@oracle.com> JavaFX should not fail in these cases, but doesn't consider that a valid state, so it always prints a warning on the stderr, for the developer to see something went wrong. Regards, -Martin On 5.6.2013 21:38, John Hendrikx wrote: > Hi List, > > I'm getting some log messages sometimes (see at the end) about > properties being null (whereas I didn't get them before in JavaFX 2.2). > > Is this intended as an informative message to the developer, something > I should report, or just debug code for the JavaFX team? > > In this case, the binding is null, and that's fine -- it will be > populated later, but the binding is already in place -- I thought > JavaFX was designed to allow nulls in a chain of bindings and > fall back to reasonable defaults for things like Strings, numbers > etc? Am I doing something wrong? > > Code: > { > private final ObjectProperty data = new > SimpleObjectProperty<>(); > public ObjectProperty dataProperty() { return data; } > > protected final ObjectBinding> castings = > Bindings.select(dataProperty(), "castings"); > } > > Log: > > Jun 05, 2013 9:15:55 PM > com.sun.javafx.binding.SelectBinding$SelectBindingHelper > getObservableValue > WARNING: Exception while evaluating select-binding [castings] > Jun 05, 2013 9:15:55 PM > com.sun.javafx.binding.SelectBinding$SelectBindingHelper > getObservableValue > WARNING: Property 'castings' in ObjectProperty [bound, value: null] is > null > java.lang.NullPointerException > at > com.sun.javafx.binding.SelectBinding$SelectBindingHelper.getObservableValue(SelectBinding.java:481) > at > com.sun.javafx.binding.SelectBinding$AsObject.computeValue(SelectBinding.java:92) > at javafx.beans.binding.ObjectBinding.get(ObjectBinding.java:152) > at > javafx.beans.binding.ObjectExpression.getValue(ObjectExpression.java:49) > at > com.sun.javafx.binding.ExpressionHelper.addListener(ExpressionHelper.java:53) > at > javafx.beans.binding.ObjectBinding.addListener(ObjectBinding.java:71) > at > javafx.beans.property.ObjectPropertyBase.bind(ObjectPropertyBase.java:170) > at > hs.mediasystem.TitledBlockSample.createCastingsRow(TitledBlockSample.java:114) > at hs.mediasystem.TitledBlockSample.start(TitledBlockSample.java:78) > at > com.sun.javafx.application.LauncherImpl$5.run(LauncherImpl.java:810) > at > com.sun.javafx.application.PlatformImpl$6.run(PlatformImpl.java:260) > at > com.sun.javafx.application.PlatformImpl$5$1.run(PlatformImpl.java:226) > at > com.sun.javafx.application.PlatformImpl$5$1.run(PlatformImpl.java:223) > at java.security.AccessController.doPrivileged(Native Method) > at > com.sun.javafx.application.PlatformImpl$5.run(PlatformImpl.java:223) > at > com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) > at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) > at > com.sun.glass.ui.win.WinApplication.access$300(WinApplication.java:39) > at > com.sun.glass.ui.win.WinApplication$3$1.run(WinApplication.java:101) > at java.lang.Thread.run(Thread.java:724) > > Regards, > --John > From hang.vo at oracle.com Thu Jun 6 00:49:19 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 07:49:19 +0000 Subject: hg: openjfx/8/graphics/rt: RT-28963: Mac: DragEvent.getScreenY() returns incorrect value on drag drop Message-ID: <20130606074932.766E148FEB@hg.openjdk.java.net> Changeset: 7fc4181950e2 Author: Petr Pchelko Date: 2013-06-06 11:34 +0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/7fc4181950e2 RT-28963: Mac: DragEvent.getScreenY() returns incorrect value on drag drop Reviewed-by: anthony ! glass/glass-lib-macosx/src/GlassViewDelegate.m From danno.ferrin at shemnon.com Thu Jun 6 00:52:10 2013 From: danno.ferrin at shemnon.com (Danno Ferrin) Date: Thu, 6 Jun 2013 01:52:10 -0600 Subject: Preloaders In-Reply-To: <2CB20C8C-B6BA-4DF3-BC3D-16D70C9EB963@gmail.com> References: <05E11FF5-5C95-465D-BDD5-2089A3EE16F2@gmail.com> <8BC3E092-F8A6-4969-898B-6A62A6A504D1@oracle.com> <367559C1-BE67-487D-8BA2-B4439FDF46E3@oracle.com> <2CB20C8C-B6BA-4DF3-BC3D-16D70C9EB963@gmail.com> Message-ID: On Wed, Jun 5, 2013 at 9:47 PM, Daniel Zwolenski wrote: > To sum up my previous major suggestions for a better world: > > - web deploy code should be separate module from native, and jar separate > again. Each native module (win, Linux, Mac) should be separate and I should > be able to invoke any and all of them how and when I want, not just one > generateDeployment method as the only entry point. > > I think JNLP and web generation should be a bundler on the same level as win/mac/lin. No special treatment, it is just hte same as the rest > - java code of packager should be one library for all platforms so we have > one jar for all, not a separate one for each OS. Native bits are referenced > from this one jar as needed. > I actually disagree with this. Perhaps the default bundlers come in one jar for hte JDK, but I would like the ability to add bundlers external to the tool that evolve at different speeds than the core JDK. Tha was the point of my service loader patch. Making the bundlers separate for the JDK is a good exercise in proving severability. > - native should not have dumb stuff from web as a requirement if not used. > Signing, special jfx meta-inf in jars, checking registry for jdk, etc, etc. > Native is actually very simple and really should be able to work with a > stock standard jar and not need a special jfx built one. Web should be > quarrantined so that native isn't sullied by it. > Sullied is a bit of a harsh word. Deployment modes are different For example, a Mac App, iOS app, and Android APK all still need to be signed, their deployment models for signing are different. > - no magic config in the core libraries (higher wrappers can try and add > it on top). Eg It shouldn't look for wix and use it just because it's > installed. I should be able to specify I want wix or inno and tools should > fail if they are not there. > I still think there is a role for the "all" packaging type that would do all the ones it has access to and work. However I wouldn't want to see it fail unless specifically called out. i.e. the WIX bundler would fail if 'wix' was in the packaging types, but not if 'all' was the packaging type that called it. This is really a per-bundler decision. > > That's just looking at improvements to what's already there. As far as my > picks for new features, these would be my top: > > - app store support (desktop at this stage) > > - auto updating support for native bundles > > - cross platform builds on the one machine (ie build for Mac from a > windows machine, etc). Also build a 32bit distro on a 64bit jdk, etc. > Or build RasPi debs on a linux vm. > - compact jre's for smaller distro sizes. > ^^^^ THIS ^^^^ --Danno From hang.vo at oracle.com Thu Jun 6 01:06:04 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 08:06:04 +0000 Subject: hg: openjfx/8/graphics/rt: 4 new changesets Message-ID: <20130606080650.8AC1448FEC@hg.openjdk.java.net> Changeset: c228567fe494 Author: Alexander Kouznetsov Date: 2013-06-06 00:59 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/c228567fe494 FXMLExport: Updated to the latest version of TriangleMesh API. Fixed children doubling. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/fxml/FXMLExporter.java Changeset: 443a9ce81b2c Author: Alexander Kouznetsov Date: 2013-06-06 01:00 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/443a9ce81b2c MayaImporter: Removed unnecessary handler from Timeline KeyFrames. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/MayaImporter.java Changeset: 83751683c863 Author: Alexander Kouznetsov Date: 2013-06-06 01:02 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/83751683c863 3DViewer optimizer: clean up repeating points and texCoords. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: e91e20387c16 Author: Alexander Kouznetsov Date: 2013-06-06 01:03 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/e91e20387c16 3DViewer: Fixed NPE in Timeline Controller ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/TimelineController.java From zonski at gmail.com Thu Jun 6 01:29:42 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Thu, 6 Jun 2013 18:29:42 +1000 Subject: JFX Packager (was Re: Preloaders) Message-ID: On Thu, Jun 6, 2013 at 5:52 PM, Danno Ferrin wrote: > > > On Wed, Jun 5, 2013 at 9:47 PM, Daniel Zwolenski wrote: > >> To sum up my previous major suggestions for a better world: >> >> - web deploy code should be separate module from native, and jar separate >> again. Each native module (win, Linux, Mac) should be separate and I should >> be able to invoke any and all of them how and when I want, not just one >> generateDeployment method as the only entry point. >> >> > I think JNLP and web generation should be a bundler on the same level as > win/mac/lin. No special treatment, it is just hte same as the rest > Agreed, they are all the same level, but modularised at a code level so we can call generateJnlpBundle or generateWinExeBundle, generateWinMsiBundle. Currently there's this uber bundle going on that you can sort-of-if-you're-lucky turn some bits off. It's this uber bundling I'd like to see change in the future. Give me finer hook in points for the Maven plugin anyway. > - java code of packager should be one library for all platforms so we have >> one jar for all, not a separate one for each OS. Native bits are referenced >> from this one jar as needed. >> > > I actually disagree with this. Perhaps the default bundlers come in one > jar for hte JDK, but I would like the ability to add bundlers external to > the tool that evolve at different speeds than the core JDK. Tha was the > point of my service loader patch. Making the bundlers separate for the JDK > is a good exercise in proving severability. > Agree to being to add your own customisations by the core tools having plugin points. Also would love to see the packager tools not tied into the JDK and be on their own release cycle - this would be a massive win (wasn't a popular suggestion when I made it a while back). My point about "one jar" was more to do with the fact that currently the "ant-javafx.jar" at the moment is different in the Mac distro of the JDK to the Window version of the JDK, which is different again to a 32bit version of the "ant-javafx.jar" on a 32 bit windows JDK. 95% of the code is the same in all of these however there are slight differences to the Java code (or so I was told - by Ivan I think) and the native bits (winlauncher.exe for example) are included in the JAR (from memory). So effectively the "ant-javafx.jar" is platform specific. Messy to get all those platform specific JARs and put them in Maven (or whatever). You need to reference the right JAR for the platform you are on, even for doing, say a web build, which doesn't actually care. Also the native inter-twining makes it hard to build for testing and contributing, since I need to do the native builds, whereas if these were separate assets I could just mess with the Java code and use the native bits out of the repo. So when I say "one jar" maybe translate that to "not platform specific JARs of stuff that doesn't need to be". > - native should not have dumb stuff from web as a requirement if not used. >> Signing, special jfx meta-inf in jars, checking registry for jdk, etc, etc. >> Native is actually very simple and really should be able to work with a >> stock standard jar and not need a special jfx built one. Web should be >> quarrantined so that native isn't sullied by it. >> > > Sullied is a bit of a harsh word. > I'm afraid I've come to hate the web deployment stuff (partly disappointment because it held so much potential). The code in the packager is really messy and makes me angry when I try and work with it. Most of it is over engineering as far as I can tell. It also doesn't work reliably. And web deploy is the reason security problems are possible. And... I'll stop there. Unfortunately, native bundles were an after thought and just tacked on. The Native bundler code in the packager is tightly intertwined with this web code currently. I'd like to see that change. e.g. Why do we need version checks on JRE's etc, when we have a co-bundled JRE in our native app? > Deployment modes are different For example, a Mac App, iOS app, and > Android APK all still need to be signed, their deployment models for > signing are different. > Yep, agreed. My preference is that each one should be a separate module in the packager, so they can each do whatever is special for them. APK should not have complexities resulting from native, and native not from web, and web not from APK, etc. Each module should deal with the job of building a distro for that platform in the simplest and cleanest way. There would definitely be some re-used code (like signing) that is in a common spot but at the moment the native launcher depends on a JFX built JAR which includes stuff only needed for web, etc. And I agree, I should be able to build my own custom bundle builder that just slots into the framework alongside the others. I should be able to leverage the common code (like signing) from my custom module. > > >> - no magic config in the core libraries (higher wrappers can try and add >> it on top). Eg It shouldn't look for wix and use it just because it's >> installed. I should be able to specify I want wix or inno and tools should >> fail if they are not there. >> > > I still think there is a role for the "all" packaging type that would do > all the ones it has access to and work. However I wouldn't want to see it > fail unless specifically called out. i.e. the WIX bundler would fail if > 'wix' was in the packaging types, but not if 'all' was the packaging type > that called it. This is really a per-bundler decision. > I feel like this is a higher level thing. So the ANT tasks (and the Maven and Gradle plugins could add this), but the core library offers us small lego building blocks to use as we see fit. The core library could even have this higher level option, so long as it gives me the lower level hook ins. So mvn jfx:all could do exactly what you said, but I'd like the tools to give me the ability to do mvn jfx:webstart, mvn jfx:win-exe or mvn Jfx:win-msi. Currently, the packager tools don't allow this sort of granularity to be implemented easily. That's just looking at improvements to what's already there. As far as my >> picks for new features, these would be my top: >> >> - app store support (desktop at this stage) >> >> - auto updating support for native bundles >> >> - cross platform builds on the one machine (ie build for Mac from a >> windows machine, etc). Also build a 32bit distro on a 64bit jdk, etc. >> > > Or build RasPi debs on a linux vm. > > >> - compact jre's for smaller distro sizes. >> > > ^^^^ THIS ^^^^ > > --Danno > From mark.howe at oracle.com Thu Jun 6 01:41:55 2013 From: mark.howe at oracle.com (Mark Howe) Date: Thu, 6 Jun 2013 01:41:55 -0700 Subject: Preloaders In-Reply-To: References: <05E11FF5-5C95-465D-BDD5-2089A3EE16F2@gmail.com> <8BC3E092-F8A6-4969-898B-6A62A6A504D1@oracle.com> <367559C1-BE67-487D-8BA2-B4439FDF46E3@oracle.com> <2CB20C8C-B6BA-4DF3-BC3D-16D70C9EB963@gmail.com> Message-ID: <15A83C67-58ED-476A-9595-26FB11A1A910@oracle.com> On Jun 6, 2013, at 12:52 AM, Danno Ferrin wrote: > > > On Wed, Jun 5, 2013 at 9:47 PM, Daniel Zwolenski wrote: > To sum up my previous major suggestions for a better world: > > - web deploy code should be separate module from native, and jar separate again. Each native module (win, Linux, Mac) should be separate and I should be able to invoke any and all of them how and when I want, not just one generateDeployment method as the only entry point. > > > I think JNLP and web generation should be a bundler on the same level as win/mac/lin. No special treatment, it is just hte same as the rest > What I don't like is bundling feels like a soup, where u throw a bunch of component in together. Some overlap and some don't and it's not clear what is being generate by each piece. Sometime it's affecting jnlp and native, sometimes not. This creates a very confusing API. I would much rather do my jnlp separate from native. Maybe there is some other way to share declarations, like create a reusable declaration set. In other words they should be separate bundlers, jnlp should be independent of native (they still leverage the same libraries. This should also allow bundlers to be registered for features we haven't thought of yet. > > - java code of packager should be one library for all platforms so we have one jar for all, not a separate one for each OS. Native bits are referenced from this one jar as needed. > > I actually disagree with this. Perhaps the default bundlers come in one jar for hte JDK, but I would like the ability to add bundlers external to the tool that evolve at different speeds than the core JDK. Tha was the point of my service loader patch. Making the bundlers separate for the JDK is a good exercise in proving severability. > I don't think it matters too much, as long as bundlers can be separate and hopefully dynamically loaded. > > - native should not have dumb stuff from web as a requirement if not used. Signing, special jfx meta-inf in jars, checking registry for jdk, etc, etc. Native is actually very simple and really should be able to work with a stock standard jar and not need a special jfx built one. Web should be quarrantined so that native isn't sullied by it. > > Sullied is a bit of a harsh word. Deployment modes are different For example, a Mac App, iOS app, and Android APK all still need to be signed, their deployment models for signing are different. They should be separated but should share API's to accomplish there own goals. "there too much confusion here, said the joker to the thief", the ant api/functionality is all mixed together. > > - no magic config in the core libraries (higher wrappers can try and add it on top). Eg It shouldn't look for wix and use it just because it's installed. I should be able to specify I want wix or inno and tools should fail if they are not there. > > I still think there is a role for the "all" packaging type that would do all the ones it has access to and work. However I wouldn't want to see it fail unless specifically called out. i.e. the WIX bundler would fail if 'wix' was in the packaging types, but not if 'all' was the packaging type that called it. This is really a per-bundler decision. Explicit is good, Convention over configuration where it makes sense :) > > > That's just looking at improvements to what's already there. As far as my picks for new features, these would be my top: > > - app store support (desktop at this stage) > > - auto updating support for native bundles > > - cross platform builds on the one machine (ie build for Mac from a windows machine, etc). Also build a 32bit distro on a 64bit jdk, etc. > > Or build RasPi debs on a linux vm. Separate installable bundlers > > - compact jre's for smaller distro sizes. > All the above :) > ^^^^ THIS ^^^^ > > --Danno From hjohn at xs4all.nl Thu Jun 6 01:53:22 2013 From: hjohn at xs4all.nl (John Hendrikx) Date: Thu, 06 Jun 2013 10:53:22 +0200 Subject: ObservableValue Stacktrace In-Reply-To: <51B03B8E.2030208@oracle.com> References: <51AF93CE.1000400@xs4all.nl> <51B03B8E.2030208@oracle.com> Message-ID: <51B04E02.7000107@xs4all.nl> Hm, ok -- it is correct that it doesn't fail, the code runs without any problem and everything works as expected. But, what would be the way to avoid these messages in my log then? Something like: Bindings.select( Bindings.when(dataProperty().isNull()).then( ??? ).otherwise(dataProperty()), "castings") ); ?? I'd prefer to just turn these warnings off unless there is a really good reason to have them (ie, they indicate a logic error or other bug, something I can resolve...) In my case the dataProperty() is often bound to the selection of a ListView -- if you have something valid selected, then a Detail Pane is filled in with information about the selected item. When nothing is selected (ie, it is null), then the Detail Pane should remain empty... I donot want to have to remove/recreate these bindings every time some property becomes null. Also, it seems rather wierd that JavaFX will complain about nulls in the first part of the Bindings.select(), but will happily traverse the graph (with or without nulls) for the other parts. Do I have to add an extra level of indirection to get rid off these messages, ie something like: private final ObjectProperty data = new SimpleObjectProperty<>(); public ObjectProperty dataProperty() { return data; } private ObjectProperty> metaDataProperty = new SimpleObjectProperty<>(dataProperty()); // extra indirection... public ObjectProperty> metaDataProperty() { return metaDataProperty ; } So that I can then do a binding like: Bindings.select(metaDataProperty(), "data", "castings"); That seems.. cumbersome :) --John On 6/06/2013 09:34, Martin Sladecek wrote: > JavaFX should not fail in these cases, but doesn't consider that a > valid state, so it always prints a warning on the stderr, for the > developer to see something went wrong. > > Regards, > -Martin > > On 5.6.2013 21:38, John Hendrikx wrote: >> Hi List, >> >> I'm getting some log messages sometimes (see at the end) about >> properties being null (whereas I didn't get them before in JavaFX 2.2). >> >> Is this intended as an informative message to the developer, >> something I should report, or just debug code for the JavaFX team? >> >> In this case, the binding is null, and that's fine -- it will be >> populated later, but the binding is already in place -- I thought >> JavaFX was designed to allow nulls in a chain of bindings and >> fall back to reasonable defaults for things like Strings, numbers >> etc? Am I doing something wrong? >> >> Code: >> { >> private final ObjectProperty data = new >> SimpleObjectProperty<>(); >> public ObjectProperty dataProperty() { return data; } >> >> protected final ObjectBinding> castings = >> Bindings.select(dataProperty(), "castings"); >> } >> >> Log: >> >> Jun 05, 2013 9:15:55 PM >> com.sun.javafx.binding.SelectBinding$SelectBindingHelper >> getObservableValue >> WARNING: Exception while evaluating select-binding [castings] >> Jun 05, 2013 9:15:55 PM >> com.sun.javafx.binding.SelectBinding$SelectBindingHelper >> getObservableValue >> WARNING: Property 'castings' in ObjectProperty [bound, value: null] >> is null >> java.lang.NullPointerException >> at >> com.sun.javafx.binding.SelectBinding$SelectBindingHelper.getObservableValue(SelectBinding.java:481) >> at >> com.sun.javafx.binding.SelectBinding$AsObject.computeValue(SelectBinding.java:92) >> at javafx.beans.binding.ObjectBinding.get(ObjectBinding.java:152) >> at >> javafx.beans.binding.ObjectExpression.getValue(ObjectExpression.java:49) >> at >> com.sun.javafx.binding.ExpressionHelper.addListener(ExpressionHelper.java:53) >> at >> javafx.beans.binding.ObjectBinding.addListener(ObjectBinding.java:71) >> at >> javafx.beans.property.ObjectPropertyBase.bind(ObjectPropertyBase.java:170) >> at >> hs.mediasystem.TitledBlockSample.createCastingsRow(TitledBlockSample.java:114) >> at hs.mediasystem.TitledBlockSample.start(TitledBlockSample.java:78) >> at >> com.sun.javafx.application.LauncherImpl$5.run(LauncherImpl.java:810) >> at >> com.sun.javafx.application.PlatformImpl$6.run(PlatformImpl.java:260) >> at >> com.sun.javafx.application.PlatformImpl$5$1.run(PlatformImpl.java:226) >> at >> com.sun.javafx.application.PlatformImpl$5$1.run(PlatformImpl.java:223) >> at java.security.AccessController.doPrivileged(Native Method) >> at >> com.sun.javafx.application.PlatformImpl$5.run(PlatformImpl.java:223) >> at >> com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) >> at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) >> at >> com.sun.glass.ui.win.WinApplication.access$300(WinApplication.java:39) >> at >> com.sun.glass.ui.win.WinApplication$3$1.run(WinApplication.java:101) >> at java.lang.Thread.run(Thread.java:724) >> >> Regards, >> --John >> > From martin.sladecek at oracle.com Thu Jun 6 04:23:57 2013 From: martin.sladecek at oracle.com (Martin Sladecek) Date: Thu, 06 Jun 2013 13:23:57 +0200 Subject: ObservableValue Stacktrace In-Reply-To: <51B04E02.7000107@xs4all.nl> References: <51AF93CE.1000400@xs4all.nl> <51B03B8E.2030208@oracle.com> <51B04E02.7000107@xs4all.nl> Message-ID: <51B0714D.2060501@oracle.com> On 06/06/2013 10:53 AM, John Hendrikx wrote: > Hm, ok -- it is correct that it doesn't fail, the code runs without > any problem and everything works as expected. > > But, what would be the way to avoid these messages in my log then? > Something like: > > Bindings.select( Bindings.when(dataProperty().isNull()).then( ??? > ).otherwise(dataProperty()), "castings") ); > > ?? > > I'd prefer to just turn these warnings off unless there is a really > good reason to have them (ie, they indicate a logic error or other > bug, something I can resolve...) This might indicate a logic error in many cases, esp. when the property you bind is a primitive type. When the select fails in the middle of computation, the only it can do is to set the property to default value (which is 0). If the developer didn't expect this, it would be quite hard to find the actual cause of the zero. If you really expect nulls along the way, it's much cleaner to handle this explicitly as you do in the code above. > > In my case the dataProperty() is often bound to the selection of a > ListView -- if you have something valid selected, then a Detail Pane > is filled in with information about the selected item. When nothing > is selected (ie, it is null), then the Detail Pane should remain > empty... I donot want to have to remove/recreate these bindings every > time some property becomes null. > > Also, it seems rather wierd that JavaFX will complain about nulls in > the first part of the Bindings.select(), but will happily traverse the > graph (with or without nulls) for the other parts. This is a bug then, it should print the warning in any part of the select expression. -Martin From hang.vo at oracle.com Thu Jun 6 05:34:42 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 12:34:42 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30804: Fixed partial arm cross build Message-ID: <20130606123524.E309048FF0@hg.openjdk.java.net> Changeset: 8c43df1ae523 Author: Eva Krejcirova Date: 2013-06-06 13:24 +0100 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/8c43df1ae523 RT-30804: Fixed partial arm cross build ! javafx-builders/build-closed.xml ! javafx-builders/project.properties From hang.vo at oracle.com Thu Jun 6 05:48:59 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 12:48:59 +0000 Subject: hg: openjfx/8/controls/rt: RT-30976: lazy load listener and add listener to backing set on first call to addListener. Reviewed by Martin Message-ID: <20130606124949.0362248FF7@hg.openjdk.java.net> Changeset: 479da853570b Author: David Grieve Date: 2013-06-06 08:36 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/479da853570b RT-30976: lazy load listener and add listener to backing set on first call to addListener. Reviewed by Martin ! javafx-beans/src/javafx/collections/FXCollections.java From hang.vo at oracle.com Thu Jun 6 07:34:07 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 14:34:07 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30668: fixed and cleaned ClipboardContent API. Message-ID: <20130606143441.D5DA649000@hg.openjdk.java.net> Changeset: 721b2775dbfc Author: Pavel Safrata Date: 2013-06-06 15:19 +0100 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/721b2775dbfc RT-30668: fixed and cleaned ClipboardContent API. ! javafx-ui-common/src/javafx/scene/input/ClipboardContent.java ! javafx-ui-common/test/unit/javafx/scene/input/ClipboardContentTest.java From alexandre.iline at oracle.com Thu Jun 6 07:45:26 2013 From: alexandre.iline at oracle.com (alexandre.iline at oracle.com) Date: Thu, 06 Jun 2013 14:45:26 +0000 Subject: hg: openjfx/8/master/tests: 7 new changesets Message-ID: <20130606144534.6805748004@hg.openjdk.java.net> Changeset: 6f09636435d3 Author: Aleksandr Sakharuk Date: 2013-02-06 20:16 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/tests/rev/6f09636435d3 Add latest changes from internal repository. ! detect_javafx.xml ! functional/SceneGraphTests/src/ButtonsValidator.java ! functional/SceneGraphTests/src/test/fxapp/LifecycleApp.java ! functional/SceneGraphTests/src/test/multitouch/app/MouseEventApp.java ! functional/SceneGraphTests/src/test/multitouch/app/MultiTouchApp.java ! functional/SceneGraphTests/src/test/multitouch/app/TouchPointGrabApp.java ! functional/SceneGraphTests/src/test/multitouch/app/TouchPointsMarksScene.java ! functional/SceneGraphTests/src/test/multitouch/app/TouchableShapeFactory.java ! functional/SceneGraphTests/src/test/scenegraph/app/AffineApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/AffineManual.java ! functional/SceneGraphTests/src/test/scenegraph/app/AnimationApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/AnimationBooleanInterpolator.java ! functional/SceneGraphTests/src/test/scenegraph/app/AnimationTransitionApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/CanvasEffects2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/CanvasShapePathElements2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/CanvasShapes2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/ColorApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ControlEventsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ControlEventsTab.java ! functional/SceneGraphTests/src/test/scenegraph/app/DepthTestApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/DepthTestScene.java ! functional/SceneGraphTests/src/test/scenegraph/app/Effects.java ! functional/SceneGraphTests/src/test/scenegraph/app/Effects2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/Effects3DApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/EffectsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/EventsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/FontsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/GeometryApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/HardwareApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/HasTransformsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ImageLoadingApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ImageLoadingManual.java ! functional/SceneGraphTests/src/test/scenegraph/app/ImagePatternApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ImagePatternTransformApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ImagesApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/InterpolatorApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/Layout2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/Layout3DApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/LocalTo_TransformsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/NodeParentApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/NodeSnapshot2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/SceneEventHandlersApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/SceneInputApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ShapePathElements2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/ShapePathElementsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/Shapes2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/ShapesApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/StageSceneApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/TestLCDTextApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/TestTextApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/TimelineApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/Transforms3DApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/TransformsApp.java ! functional/SceneGraphTests/src/test/scenegraph/binding/BindingApp.java ! functional/SceneGraphTests/src/test/scenegraph/binding/BindingControl.java ! functional/SceneGraphTests/src/test/scenegraph/binding/Constraint.java ! functional/SceneGraphTests/src/test/scenegraph/binding/Consts.java ! functional/SceneGraphTests/src/test/scenegraph/binding/Factories.java ! functional/SceneGraphTests/src/test/scenegraph/binding/NumberConstraints.java ! functional/SceneGraphTests/src/test/scenegraph/binding/ObjectConstraints.java ! functional/SceneGraphTests/src/test/scenegraph/binding/Person.java ! functional/SceneGraphTests/src/test/scenegraph/fullscreen/FSTestApp.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/LCDTextTestApp.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/LcdAPITestApp.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/TestAction.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/TestActions.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/TestCollections.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/actions/EffectTestAction.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/actions/RotateTestAction.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/actions/SizeScaleTestAction.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/animation/AnimationLCDTextTestApp.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/Action.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/Actions.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/DefaultFactory.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/EffectAction.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/Factories.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/Factory.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/LCDControlsTestApp.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/TestTableItem.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/transparency/EmptyActionFactory.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/transparency/Factories.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/transparency/Factory.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/transparency/TransparencyLCDTextTestApp.java ! functional/SceneGraphTests/src/test/scenegraph/modality/ModalityApp.java ! functional/SceneGraphTests/src/test/scenegraph/modality/ModalityWindow.java ! functional/SceneGraphTests/src/test/scenegraph/richtext/RichTextPropertiesApp.java ! functional/SceneGraphTests/src/test/scenegraph/stage/PopupApp.java ! functional/SceneGraphTests/src/test/scenegraph/transparency/TransparencyWindowApp.java ! functional/SceneGraphTests/test/security/D3DPipelineNativePointerTest.java ! functional/SceneGraphTests/test/security/D3DRendererNativePointerTest.java ! functional/SceneGraphTests/test/test/doc/PropsAndXReferenceTestManual.java ! functional/SceneGraphTests/test/test/doc/VisibilityTestManual.java ! functional/SceneGraphTests/test/test/fxapp/LifecycleStopTest.java ! functional/SceneGraphTests/test/test/fxapp/LifecycleTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/BindingTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/binding/Utils.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ChoiceBoxTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/HtmlEditorTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/HyperlinkTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ListViewTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/MenuBarTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/MenuButtonTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/PasswordBoxTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ProgressBarTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ProgressIndicatorTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/RadioButtonTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ScrollBarTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/SeparatorTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/SliderTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/TableViewTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/TextAreaTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/TextFieldTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ToggleButtonSelectedTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ToggleButtonTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ToolBarTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/TreeViewTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/buttonGraphicTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/buttonTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/checkBoxTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/labelTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/BlendTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/BloomTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/BoxBlurTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/ColorAdjustTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/DisplacementMapTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/DropShadowTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/FloodTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/GaussianBlurTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/GlowTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/IdentityTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/InnerShadowTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/ReflectionTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/ShadowTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/ArcTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/ArcToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/CircleTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/CubicCurveTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/CubicCurveToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/EllipseTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/HLineToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/LineTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/LineToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/MoveToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/PathTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/PolygonTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/PolylineTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/QuadCurveTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/QuadCurveToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/RectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/SVGPathTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/VLineToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/text/fontTest.java ! functional/SceneGraphTests/test/test/scenegraph/debug/PluginValidatorApp.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestAnimationFullScreen.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestAnimationFullScreenNonResizable.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestEneterModalityToFullScreen.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestMenuFullScreen.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestModalityInFullScreen.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestOpacityFullScreen.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestReadFullScreenProperty.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestWindowOperationsFullScreen.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestWriteFullScreenPropertyFalse.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestWriteFullScreenPropertyTrue.java ! functional/SceneGraphTests/test/test/scenegraph/functional/AnimationTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/AnimationTransitionTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/CanvasEffects2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/CanvasShape2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/CanvasShapePathElements2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/ColorTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/DepthTestTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/Effects2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/Effects3DTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/EventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/FontsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/GeometryTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/HardwareTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/HasTransformsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/ImagePatternTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/ImagePatternTransformTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/ImageTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/Layout2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/Layout3DTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/LocalTo_TransformsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/NodeParentTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/NodeSnaphot2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/SceneEventHandlersTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/SceneInputTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/Shape2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/ShapePathElements2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/TimelineTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/Transform3DTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/TransformTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/affine/AffineTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/ButtonEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/CheckBoxEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/ChoiceBoxEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/ColorPickerEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/ComboBoxEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/Command.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/EventTestCommon.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/EventTestHidingPopup.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/EventTestTextInput.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/HyperlinkEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/LabelEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/ListViewEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/MenuButtonEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/PaginationEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/PasswordFieldEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/TextAreaEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/TextFieldEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/TitledPaneEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/ToggleButtonEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/TreeViewEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/imageLoading/ImageLoadingTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/BufferedImageToFXImageBlueTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/BufferedImageToFXImageGreenTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/BufferedImageToFXImageOpacityTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/BufferedImageToFXImageRedTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ColorComponentProvider.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ColorComponents.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/CreateTestImages.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/FXImageToBufferedImageTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ReadImageBlueTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ReadImageGreenTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ReadImageOpacityTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ReadImageRedTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ReadImageTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayARGBImageBlueTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayARGBImageGreenTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayARGBImageOpacityTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayARGBImageRedTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayARGBImageTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayBGRABytesImageBlueTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayBGRABytesImageGreenTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayBGRABytesImageOpacityTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayBGRABytesImageRedTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayBGRABytesImageTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleARGBImageBlueTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleARGBImageGreenTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleARGBImageOpacityTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleARGBImageRedTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleARGBImageTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleColorImageBlueTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleColorImageGreenTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleColorImageOpacityTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleColorImageRedTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleColorImageTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/LCDTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/LcdUtils.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/PixelsCalc.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/TestGenerator.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/api/APITest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/LCDControlsTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/TestGenerator.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/AccordionTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/ButtonTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/CheckBoxTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/LabelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/ListViewTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/MenuTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/ProgressIndicatorTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/RadioTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/SliderTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/TableViewTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/TextFieldTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/TitledPaneTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/ToggleButtonTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/ToolBarTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/BloomTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/BoxBlurTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/ColorAdjustTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/DisplacementMapTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/DropShadowTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/GaussianBlurTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/GlowTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/InnerShadowTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/LightingTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/MotionBlurTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/PerspectiveTransformTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/ReflectionTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/RotateTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/ScaleAllTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/ScaleXTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/ScaleYTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/SepiaToneTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/ShadowTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/SizeScaleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/SizeTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/TestGenerator.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/TransparencyLCDTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent01PixelBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent01PixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent01RectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent01RectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent09PixelBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent09PixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent09RectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent09RectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucentPixelBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucentPixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucentRectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucentRectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTransparentRectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTransparentRectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent01PixelBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent01PixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent01RectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent01RectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent09PixelBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent09PixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent09RectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent09RectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TranslucentBackgroundTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TranslucentPaneTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TranslucentPixelBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TranslucentPixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TranslucentRectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TranslucentRectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TransparentBackgroundTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TransparentPixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TransparentRectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TransparentRectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/manual/Interpolator.java ! functional/SceneGraphTests/test/test/scenegraph/manual/TestAnimationLCDText.java ! functional/SceneGraphTests/test/test/scenegraph/manual/TestLCDText.java ! functional/SceneGraphTests/test/test/scenegraph/manual/TestText.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityBase.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityTest.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityWithChoiceBoxTest.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityZOrderAndFocusTest.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityZOrderAndFocusWithFileChooser1Test.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityZOrderAndFocusWithFileChooser2Test.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityZOrderAndFocusWithFileChooser3Test.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ShowAndWaitTest.java ! functional/SceneGraphTests/test/test/scenegraph/modality/Utils.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextLabeledsTest.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextMixedTest.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextPropertiesFunctional.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextRectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/stage/PopupTest.java ! functional/SceneGraphTests/test/test/scenegraph/transparency/TransparencyWindowTest.java Changeset: c55b082358b5 Author: Aleksandr Sakharuk Date: 2013-02-07 15:06 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/tests/rev/c55b082358b5 Fix detect_javafx.xml. ! detect_javafx.xml Changeset: a2ed81a050fd Author: Aleksandr Sakharuk Date: 2013-02-07 15:07 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/tests/rev/a2ed81a050fd merge - functional/SceneGraphTests/coverage.fcov Changeset: e0332c204b54 Author: Aleksandr Sakharuk Date: 2013-02-07 16:36 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/tests/rev/e0332c204b54 Add changes from internal repository up to 3457 rev. ! tools/SharedTestUtils/src/test/javaclient/shared/AbstractApp2.java ! tools/SharedTestUtils/src/test/javaclient/shared/AbstractFailureRegistrator.java ! tools/SharedTestUtils/src/test/javaclient/shared/AbstractTestPresenter.java ! tools/SharedTestUtils/src/test/javaclient/shared/AbstractTestableApplication.java ! tools/SharedTestUtils/src/test/javaclient/shared/ActionHolder.java ! tools/SharedTestUtils/src/test/javaclient/shared/AppLauncher.java ! tools/SharedTestUtils/src/test/javaclient/shared/BasicButtonChooserApp.java ! tools/SharedTestUtils/src/test/javaclient/shared/ButtonChooser.java ! tools/SharedTestUtils/src/test/javaclient/shared/CombinedTestChooserPresenter.java ! tools/SharedTestUtils/src/test/javaclient/shared/CombinedTestChooserPresenter3D.java ! tools/SharedTestUtils/src/test/javaclient/shared/DragSupport.java ! tools/SharedTestUtils/src/test/javaclient/shared/FilteredTestRunner.java ! tools/SharedTestUtils/src/test/javaclient/shared/InteroperabilityApp.java ! tools/SharedTestUtils/src/test/javaclient/shared/JemmyUtils.java ! tools/SharedTestUtils/src/test/javaclient/shared/PageWithSlots.java ! tools/SharedTestUtils/src/test/javaclient/shared/Scene3D.java ! tools/SharedTestUtils/src/test/javaclient/shared/ScrollablePageWithSlots.java ! tools/SharedTestUtils/src/test/javaclient/shared/SelectActionProvider.java ! tools/SharedTestUtils/src/test/javaclient/shared/SwingAWTUtils.java ! tools/SharedTestUtils/src/test/javaclient/shared/TestBase.java ! tools/SharedTestUtils/src/test/javaclient/shared/TestBaseBase.java ! tools/SharedTestUtils/src/test/javaclient/shared/TestNode.java ! tools/SharedTestUtils/src/test/javaclient/shared/TestNodeLeaf.java ! tools/SharedTestUtils/src/test/javaclient/shared/TestSceneChooser.java ! tools/SharedTestUtils/src/test/javaclient/shared/TestUtil.java ! tools/SharedTestUtils/src/test/javaclient/shared/Utils.java ! tools/SharedTestUtils/src/test/javaclient/shared/appendXMLWithFxInfo.java ! tools/SharedTestUtils/src/test/javaclient/shared/description/FXSceneTreeBuilder.java ! tools/SharedTestUtils/src/test/javaclient/shared/description/FXSimpleNodeDescription.java ! tools/SharedTestUtils/src/test/javaclient/shared/description/TreeNode.java ! tools/SharedTestUtils/src/test/javaclient/shared/imagescomparator/ImageDuplicateExtractor.java ! tools/SharedTestUtils/src/test/javaclient/shared/screenshots/ImagesManager.java ! tools/SharedTestUtils/src/test/javaclient/shared/screenshots/ScreenshotUtils.java ! tools/SharedTestUtils/src/test/javaclient/shared/screenshots/SerializableBufferedImage.java Changeset: b7a5e7714c6e Author: Aleksandr Sakharuk Date: 2013-02-12 17:56 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/tests/rev/b7a5e7714c6e Revert latest changes. ! detect_javafx.xml ! functional/SceneGraphTests/src/ButtonsValidator.java ! functional/SceneGraphTests/src/test/fxapp/LifecycleApp.java ! functional/SceneGraphTests/src/test/multitouch/app/MouseEventApp.java ! functional/SceneGraphTests/src/test/multitouch/app/MultiTouchApp.java ! functional/SceneGraphTests/src/test/multitouch/app/TouchPointGrabApp.java ! functional/SceneGraphTests/src/test/multitouch/app/TouchPointsMarksScene.java ! functional/SceneGraphTests/src/test/multitouch/app/TouchableShapeFactory.java ! functional/SceneGraphTests/src/test/scenegraph/app/AffineApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/AffineManual.java ! functional/SceneGraphTests/src/test/scenegraph/app/AnimationApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/AnimationBooleanInterpolator.java ! functional/SceneGraphTests/src/test/scenegraph/app/AnimationTransitionApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/CanvasEffects2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/CanvasShapePathElements2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/CanvasShapes2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/ColorApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ControlEventsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ControlEventsTab.java ! functional/SceneGraphTests/src/test/scenegraph/app/DepthTestApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/DepthTestScene.java ! functional/SceneGraphTests/src/test/scenegraph/app/Effects.java ! functional/SceneGraphTests/src/test/scenegraph/app/Effects2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/Effects3DApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/EffectsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/EventsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/FontsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/GeometryApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/HardwareApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/HasTransformsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ImageLoadingApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ImageLoadingManual.java ! functional/SceneGraphTests/src/test/scenegraph/app/ImagePatternApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ImagePatternTransformApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ImagesApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/InterpolatorApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/Layout2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/Layout3DApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/LocalTo_TransformsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/NodeParentApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/NodeSnapshot2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/SceneEventHandlersApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/SceneInputApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ShapePathElements2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/ShapePathElementsApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/Shapes2App.java ! functional/SceneGraphTests/src/test/scenegraph/app/ShapesApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/StageSceneApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/TestLCDTextApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/TestTextApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/TimelineApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/Transforms3DApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/TransformsApp.java ! functional/SceneGraphTests/src/test/scenegraph/binding/BindingApp.java ! functional/SceneGraphTests/src/test/scenegraph/binding/BindingControl.java ! functional/SceneGraphTests/src/test/scenegraph/binding/Constraint.java ! functional/SceneGraphTests/src/test/scenegraph/binding/Consts.java ! functional/SceneGraphTests/src/test/scenegraph/binding/Factories.java ! functional/SceneGraphTests/src/test/scenegraph/binding/NumberConstraints.java ! functional/SceneGraphTests/src/test/scenegraph/binding/ObjectConstraints.java ! functional/SceneGraphTests/src/test/scenegraph/binding/Person.java ! functional/SceneGraphTests/src/test/scenegraph/fullscreen/FSTestApp.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/LCDTextTestApp.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/LcdAPITestApp.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/TestAction.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/TestActions.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/TestCollections.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/actions/EffectTestAction.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/actions/RotateTestAction.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/actions/SizeScaleTestAction.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/animation/AnimationLCDTextTestApp.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/Action.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/Actions.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/DefaultFactory.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/EffectAction.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/Factories.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/Factory.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/LCDControlsTestApp.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/controls/TestTableItem.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/transparency/EmptyActionFactory.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/transparency/Factories.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/transparency/Factory.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/transparency/TransparencyLCDTextTestApp.java ! functional/SceneGraphTests/src/test/scenegraph/modality/ModalityApp.java ! functional/SceneGraphTests/src/test/scenegraph/modality/ModalityWindow.java ! functional/SceneGraphTests/src/test/scenegraph/richtext/RichTextPropertiesApp.java ! functional/SceneGraphTests/src/test/scenegraph/stage/PopupApp.java ! functional/SceneGraphTests/src/test/scenegraph/transparency/TransparencyWindowApp.java ! functional/SceneGraphTests/test/security/D3DPipelineNativePointerTest.java ! functional/SceneGraphTests/test/security/D3DRendererNativePointerTest.java ! functional/SceneGraphTests/test/test/doc/PropsAndXReferenceTestManual.java ! functional/SceneGraphTests/test/test/doc/VisibilityTestManual.java ! functional/SceneGraphTests/test/test/fxapp/LifecycleStopTest.java ! functional/SceneGraphTests/test/test/fxapp/LifecycleTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/BindingTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/binding/Utils.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ChoiceBoxTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/HtmlEditorTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/HyperlinkTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ListViewTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/MenuBarTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/MenuButtonTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/PasswordBoxTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ProgressBarTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ProgressIndicatorTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/RadioButtonTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ScrollBarTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/SeparatorTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/SliderTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/TableViewTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/TextAreaTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/TextFieldTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ToggleButtonSelectedTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ToggleButtonTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/ToolBarTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/TreeViewTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/buttonGraphicTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/buttonTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/checkBoxTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/controls/labelTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/BlendTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/BloomTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/BoxBlurTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/ColorAdjustTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/DisplacementMapTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/DropShadowTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/FloodTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/GaussianBlurTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/GlowTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/IdentityTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/InnerShadowTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/ReflectionTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/effects/ShadowTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/ArcTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/ArcToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/CircleTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/CubicCurveTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/CubicCurveToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/EllipseTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/HLineToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/LineTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/LineToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/MoveToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/PathTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/PolygonTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/PolylineTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/QuadCurveTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/QuadCurveToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/RectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/SVGPathTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/shapes/VLineToTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/text/fontTest.java ! functional/SceneGraphTests/test/test/scenegraph/debug/PluginValidatorApp.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestAnimationFullScreen.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestAnimationFullScreenNonResizable.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestEneterModalityToFullScreen.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestMenuFullScreen.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestModalityInFullScreen.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestOpacityFullScreen.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestReadFullScreenProperty.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestWindowOperationsFullScreen.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestWriteFullScreenPropertyFalse.java ! functional/SceneGraphTests/test/test/scenegraph/fullscreen/TestWriteFullScreenPropertyTrue.java ! functional/SceneGraphTests/test/test/scenegraph/functional/AnimationTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/AnimationTransitionTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/CanvasEffects2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/CanvasShape2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/CanvasShapePathElements2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/ColorTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/DepthTestTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/Effects2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/Effects3DTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/EventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/FontsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/GeometryTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/HardwareTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/HasTransformsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/ImagePatternTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/ImagePatternTransformTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/ImageTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/Layout2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/Layout3DTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/LocalTo_TransformsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/NodeParentTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/NodeSnaphot2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/SceneEventHandlersTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/SceneInputTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/Shape2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/ShapePathElements2Test.java ! functional/SceneGraphTests/test/test/scenegraph/functional/TimelineTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/Transform3DTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/TransformTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/affine/AffineTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/ButtonEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/CheckBoxEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/ChoiceBoxEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/ColorPickerEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/ComboBoxEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/Command.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/EventTestCommon.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/EventTestHidingPopup.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/EventTestTextInput.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/HyperlinkEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/LabelEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/ListViewEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/MenuButtonEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/PaginationEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/PasswordFieldEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/TextAreaEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/TextFieldEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/TitledPaneEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/ToggleButtonEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/controls/events/TreeViewEventsTest.java ! functional/SceneGraphTests/test/test/scenegraph/functional/imageLoading/ImageLoadingTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/BufferedImageToFXImageBlueTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/BufferedImageToFXImageGreenTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/BufferedImageToFXImageOpacityTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/BufferedImageToFXImageRedTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ColorComponentProvider.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ColorComponents.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/CreateTestImages.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/FXImageToBufferedImageTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ReadImageBlueTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ReadImageGreenTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ReadImageOpacityTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ReadImageRedTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/ReadImageTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayARGBImageBlueTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayARGBImageGreenTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayARGBImageOpacityTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayARGBImageRedTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayARGBImageTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayBGRABytesImageBlueTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayBGRABytesImageGreenTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayBGRABytesImageOpacityTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayBGRABytesImageRedTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteArrayBGRABytesImageTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleARGBImageBlueTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleARGBImageGreenTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleARGBImageOpacityTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleARGBImageRedTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleARGBImageTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleColorImageBlueTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleColorImageGreenTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleColorImageOpacityTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleColorImageRedTest.java ! functional/SceneGraphTests/test/test/scenegraph/imageops/WriteSingleColorImageTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/LCDTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/LcdUtils.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/PixelsCalc.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/TestGenerator.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/api/APITest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/LCDControlsTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/TestGenerator.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/AccordionTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/ButtonTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/CheckBoxTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/LabelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/ListViewTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/MenuTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/ProgressIndicatorTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/RadioTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/SliderTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/TableViewTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/TextFieldTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/TitledPaneTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/ToggleButtonTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/controls/tests/ToolBarTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/BloomTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/BoxBlurTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/ColorAdjustTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/DisplacementMapTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/DropShadowTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/GaussianBlurTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/GlowTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/InnerShadowTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/LightingTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/MotionBlurTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/PerspectiveTransformTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/ReflectionTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/RotateTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/ScaleAllTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/ScaleXTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/ScaleYTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/SepiaToneTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/ShadowTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/SizeScaleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/tests/SizeTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/TestGenerator.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/TransparencyLCDTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent01PixelBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent01PixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent01RectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent01RectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent09PixelBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent09PixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent09RectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucent09RectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucentPixelBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucentPixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucentRectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTranslucentRectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTransparentRectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/AddTransparentRectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent01PixelBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent01PixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent01RectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent01RectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent09PixelBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent09PixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent09RectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/Translucent09RectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TranslucentBackgroundTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TranslucentPaneTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TranslucentPixelBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TranslucentPixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TranslucentRectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TranslucentRectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TransparentBackgroundTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TransparentPixelTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TransparentRectangleBeforeTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/lcd/transparency/test/TransparentRectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/manual/Interpolator.java ! functional/SceneGraphTests/test/test/scenegraph/manual/TestAnimationLCDText.java ! functional/SceneGraphTests/test/test/scenegraph/manual/TestLCDText.java ! functional/SceneGraphTests/test/test/scenegraph/manual/TestText.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityBase.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityTest.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityWithChoiceBoxTest.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityZOrderAndFocusTest.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityZOrderAndFocusWithFileChooser1Test.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityZOrderAndFocusWithFileChooser2Test.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ModalityZOrderAndFocusWithFileChooser3Test.java ! functional/SceneGraphTests/test/test/scenegraph/modality/ShowAndWaitTest.java ! functional/SceneGraphTests/test/test/scenegraph/modality/Utils.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextLabeledsTest.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextMixedTest.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextPropertiesFunctional.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextRectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextTextTest.java ! functional/SceneGraphTests/test/test/scenegraph/stage/PopupTest.java ! functional/SceneGraphTests/test/test/scenegraph/transparency/TransparencyWindowTest.java ! tools/SharedTestUtils/src/test/javaclient/shared/AbstractApp2.java ! tools/SharedTestUtils/src/test/javaclient/shared/AbstractFailureRegistrator.java ! tools/SharedTestUtils/src/test/javaclient/shared/AbstractTestPresenter.java ! tools/SharedTestUtils/src/test/javaclient/shared/AbstractTestableApplication.java ! tools/SharedTestUtils/src/test/javaclient/shared/ActionHolder.java ! tools/SharedTestUtils/src/test/javaclient/shared/AppLauncher.java ! tools/SharedTestUtils/src/test/javaclient/shared/BasicButtonChooserApp.java ! tools/SharedTestUtils/src/test/javaclient/shared/ButtonChooser.java ! tools/SharedTestUtils/src/test/javaclient/shared/CombinedTestChooserPresenter.java ! tools/SharedTestUtils/src/test/javaclient/shared/CombinedTestChooserPresenter3D.java ! tools/SharedTestUtils/src/test/javaclient/shared/DragSupport.java ! tools/SharedTestUtils/src/test/javaclient/shared/FilteredTestRunner.java ! tools/SharedTestUtils/src/test/javaclient/shared/InteroperabilityApp.java ! tools/SharedTestUtils/src/test/javaclient/shared/JemmyUtils.java ! tools/SharedTestUtils/src/test/javaclient/shared/PageWithSlots.java ! tools/SharedTestUtils/src/test/javaclient/shared/Scene3D.java ! tools/SharedTestUtils/src/test/javaclient/shared/ScrollablePageWithSlots.java ! tools/SharedTestUtils/src/test/javaclient/shared/SelectActionProvider.java ! tools/SharedTestUtils/src/test/javaclient/shared/SwingAWTUtils.java ! tools/SharedTestUtils/src/test/javaclient/shared/TestBase.java ! tools/SharedTestUtils/src/test/javaclient/shared/TestBaseBase.java ! tools/SharedTestUtils/src/test/javaclient/shared/TestNode.java ! tools/SharedTestUtils/src/test/javaclient/shared/TestNodeLeaf.java ! tools/SharedTestUtils/src/test/javaclient/shared/TestSceneChooser.java ! tools/SharedTestUtils/src/test/javaclient/shared/TestUtil.java ! tools/SharedTestUtils/src/test/javaclient/shared/Utils.java ! tools/SharedTestUtils/src/test/javaclient/shared/appendXMLWithFxInfo.java ! tools/SharedTestUtils/src/test/javaclient/shared/description/FXSceneTreeBuilder.java ! tools/SharedTestUtils/src/test/javaclient/shared/description/FXSimpleNodeDescription.java ! tools/SharedTestUtils/src/test/javaclient/shared/description/TreeNode.java ! tools/SharedTestUtils/src/test/javaclient/shared/imagescomparator/ImageDuplicateExtractor.java ! tools/SharedTestUtils/src/test/javaclient/shared/screenshots/ImagesManager.java ! tools/SharedTestUtils/src/test/javaclient/shared/screenshots/ScreenshotUtils.java ! tools/SharedTestUtils/src/test/javaclient/shared/screenshots/SerializableBufferedImage.java Changeset: 846b0a99dc08 Author: Aleksandr Sakharuk Date: 2013-02-12 17:57 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/tests/rev/846b0a99dc08 Update paths in detect_javafx.xml. ! detect_javafx.xml Changeset: d7483b66444c Author: Alexandre (Shura) Iline Date: 2013-06-06 18:45 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/tests/rev/d7483b66444c merge ! functional/SceneGraphTests/src/test/scenegraph/app/AffineApp.java ! functional/SceneGraphTests/src/test/scenegraph/app/ImagesApp.java ! functional/SceneGraphTests/src/test/scenegraph/binding/BindingApp.java ! functional/SceneGraphTests/src/test/scenegraph/lcd/animation/AnimationLCDTextTestApp.java ! functional/SceneGraphTests/src/test/scenegraph/richtext/RichTextPropertiesApp.java ! functional/SceneGraphTests/test/security/D3DRendererNativePointerTest.java ! functional/SceneGraphTests/test/test/scenegraph/binding/BindingTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/functional/SceneEventHandlersTest.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextLabeledsTest.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextMixedTest.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextPropertiesFunctional.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextRectangleTest.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextTestBase.java ! functional/SceneGraphTests/test/test/scenegraph/richtext/RichTextTextTest.java ! tools/Jemmy/JemmyFX/samples/org/jemmy/samples/webview/WebViewSample.java ! tools/Jemmy/JemmyFX/src/org/jemmy/fx/control/WebNodeParent.java ! tools/Jemmy/JemmyFX/src/org/jemmy/fx/control/WebNodeWrap.java ! tools/Jemmy/JemmyFX/src/org/jemmy/fx/control/WebViewWrap.java ! tools/Jemmy/JemmyFX/test/org/jemmy/fx/control/WebViewTest.java From hang.vo at oracle.com Thu Jun 6 08:18:29 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 15:18:29 +0000 Subject: hg: openjfx/8/graphics/rt: [COSMETIC CHANGE ONLY] workaround for Eclipse compiler [verified with Martin] Message-ID: <20130606151853.6CEED4800C@hg.openjdk.java.net> Changeset: 9a7bc40eca11 Author: snorthov Date: 2013-06-06 11:03 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/9a7bc40eca11 [COSMETIC CHANGE ONLY] workaround for Eclipse compiler [verified with Martin] ! javafx-beans/test/javafx/collections/SortedListTest.java From hang.vo at oracle.com Thu Jun 6 08:33:12 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 15:33:12 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130606153402.A786F4800F@hg.openjdk.java.net> Changeset: 9975ebce5940 Author: Martin Sladecek Date: 2013-06-06 17:25 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/9975ebce5940 Fix for RT-30947, RT-30915, RT-30936 ! javafx-ui-common/src/javafx/scene/Parent.java Changeset: 2c24c839cc30 Author: Martin Sladecek Date: 2013-06-06 17:26 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/2c24c839cc30 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt From hang.vo at oracle.com Thu Jun 6 09:05:56 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 16:05:56 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30579: Still cannot rely on Thread.setDefaultUncaughtExceptionHandler() to work with JavaFX App Thread. Message-ID: <20130606160619.6151B48012@hg.openjdk.java.net> Changeset: 2095f12bf331 Author: Artem Ananiev Date: 2013-06-06 19:46 +0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/2095f12bf331 RT-30579: Still cannot rely on Thread.setDefaultUncaughtExceptionHandler() to work with JavaFX App Thread. Reviewed-by: Kevin Rushforth, Steve Northover ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumToolkit.java + tests/glass/ExceptionHandler/test/com/sun/glass/ui/DefaultExceptionHandlerTest.java ! tests/glass/build.xml From kevin.rushforth at oracle.com Thu Jun 6 09:31:24 2013 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Thu, 06 Jun 2013 09:31:24 -0700 Subject: ObservableValue Stacktrace In-Reply-To: <51B0714D.2060501@oracle.com> References: <51AF93CE.1000400@xs4all.nl> <51B03B8E.2030208@oracle.com> <51B04E02.7000107@xs4all.nl> <51B0714D.2060501@oracle.com> Message-ID: <51B0B95C.30404@oracle.com> Perhaps using the logging system would be a better choice in the case than printing to stderr? -- Kevin Martin Sladecek wrote: > On 06/06/2013 10:53 AM, John Hendrikx wrote: >> Hm, ok -- it is correct that it doesn't fail, the code runs without >> any problem and everything works as expected. >> >> But, what would be the way to avoid these messages in my log then? >> Something like: >> >> Bindings.select( Bindings.when(dataProperty().isNull()).then( ??? >> ).otherwise(dataProperty()), "castings") ); >> >> ?? >> >> I'd prefer to just turn these warnings off unless there is a really >> good reason to have them (ie, they indicate a logic error or other >> bug, something I can resolve...) > > This might indicate a logic error in many cases, esp. when the > property you bind is a primitive type. When the select fails in the > middle of computation, the only it can do is to set the property to > default value (which is 0). If the developer > didn't expect this, it would be quite hard to find the actual cause of > the zero. If you really expect nulls along the way, it's much cleaner > to handle this explicitly as you do in the code above. > >> >> In my case the dataProperty() is often bound to the selection of a >> ListView -- if you have something valid selected, then a Detail Pane >> is filled in with information about the selected item. When nothing >> is selected (ie, it is null), then the Detail Pane should remain >> empty... I donot want to have to remove/recreate these bindings every >> time some property becomes null. >> >> Also, it seems rather wierd that JavaFX will complain about nulls in >> the first part of the Bindings.select(), but will happily traverse >> the graph (with or without nulls) for the other parts. > This is a bug then, it should print the warning in any part of the > select expression. > > -Martin From hang.vo at oracle.com Thu Jun 6 10:05:44 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 17:05:44 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30791: Quantum Cleanup: Make embedded rendering use the standard locking and scene state mechanism Message-ID: <20130606170610.5EB0C48017@hg.openjdk.java.net> Changeset: df5ed39ad4a7 Author: snorthov Date: 2013-06-06 12:48 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/df5ed39ad4a7 RT-30791: Quantum Cleanup: Make embedded rendering use the standard locking and scene state mechanism - javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedScene.java + javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedState.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/GlassScene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/SceneState.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/UploadingPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/ViewScene.java ! prism-common/src/com/sun/prism/PresentableState.java ! prism-j2d/src/com/sun/prism/j2d/J2DPresentable.java ! prism-sw/src/com/sun/prism/sw/SWPresentable.java From richard.bair at oracle.com Thu Jun 6 10:43:55 2013 From: richard.bair at oracle.com (Richard Bair) Date: Thu, 6 Jun 2013 10:43:55 -0700 Subject: ObservableValue Stacktrace In-Reply-To: <51B0B95C.30404@oracle.com> References: <51AF93CE.1000400@xs4all.nl> <51B03B8E.2030208@oracle.com> <51B04E02.7000107@xs4all.nl> <51B0714D.2060501@oracle.com> <51B0B95C.30404@oracle.com> Message-ID: <513422CC-A471-4493-A4BE-444335D88F60@oracle.com> I don't think we ought to print to stdout or stderr in any case in the platform. A logger is a better idea. But really I think it is unlikely that this particular message will be that useful (it will be unhelpful in just as many cases). It is not uncommon for a chain to have a null in it at some point, and the presence of the message will just make people think something is wrong when in fact it isn't. Richard On Jun 6, 2013, at 9:31 AM, Kevin Rushforth wrote: > Perhaps using the logging system would be a better choice in the case than printing to stderr? > > -- Kevin > > > Martin Sladecek wrote: >> On 06/06/2013 10:53 AM, John Hendrikx wrote: >>> Hm, ok -- it is correct that it doesn't fail, the code runs without any problem and everything works as expected. >>> >>> But, what would be the way to avoid these messages in my log then? Something like: >>> >>> Bindings.select( Bindings.when(dataProperty().isNull()).then( ??? ).otherwise(dataProperty()), "castings") ); >>> >>> ?? >>> >>> I'd prefer to just turn these warnings off unless there is a really good reason to have them (ie, they indicate a logic error or other bug, something I can resolve...) >> >> This might indicate a logic error in many cases, esp. when the property you bind is a primitive type. When the select fails in the middle of computation, the only it can do is to set the property to default value (which is 0). If the developer >> didn't expect this, it would be quite hard to find the actual cause of the zero. If you really expect nulls along the way, it's much cleaner to handle this explicitly as you do in the code above. >> >>> >>> In my case the dataProperty() is often bound to the selection of a ListView -- if you have something valid selected, then a Detail Pane is filled in with information about the selected item. When nothing is selected (ie, it is null), then the Detail Pane should remain empty... I donot want to have to remove/recreate these bindings every time some property becomes null. >>> >>> Also, it seems rather wierd that JavaFX will complain about nulls in the first part of the Bindings.select(), but will happily traverse the graph (with or without nulls) for the other parts. >> This is a bug then, it should print the warning in any part of the select expression. >> >> -Martin From hang.vo at oracle.com Thu Jun 6 12:18:58 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 19:18:58 +0000 Subject: hg: openjfx/8/graphics/rt: 3DViewer: Refactoring in Optimizer Message-ID: <20130606191948.A3FD24801E@hg.openjdk.java.net> Changeset: 3181efc5d5ed Author: Alexander Kouznetsov Date: 2013-06-06 12:07 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/3181efc5d5ed 3DViewer: Refactoring in Optimizer ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java From hang.vo at oracle.com Thu Jun 6 15:06:50 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 22:06:50 +0000 Subject: hg: openjfx/8/controls/rt: Fix for RT-30947, RT-30915, RT-30936 Message-ID: <20130606220725.D485D48029@hg.openjdk.java.net> Changeset: 9605455a5abe Author: Martin Sladecek Date: 2013-06-06 17:25 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/9605455a5abe Fix for RT-30947, RT-30915, RT-30936 ! javafx-ui-common/src/javafx/scene/Parent.java From hang.vo at oracle.com Thu Jun 6 15:19:26 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 22:19:26 +0000 Subject: hg: openjfx/8/controls/rt: 5 new changesets Message-ID: <20130606222105.770194802B@hg.openjdk.java.net> Changeset: 6d73ef304a85 Author: jgiles Date: 2013-06-04 16:18 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/6d73ef304a85 RT-29420: VBox Popup width is computed wrong in JavaFX 8.0.0-b83 ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/ListViewSkin.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/VirtualContainerBase.java ! javafx-ui-controls/test/javafx/scene/control/ListViewTest.java Changeset: ece9e054a7cd Author: jgiles Date: 2013-06-06 08:35 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/ece9e054a7cd Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/VirtualContainerBase.java Changeset: 59cdebd030e2 Author: jgiles Date: 2013-06-06 13:15 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/59cdebd030e2 RT-29923: Cell with null initial value cannot be edited because the empty property is true Also, a lot of unit tests for the classes extending from Cell (some of which are @Ignored as they currently fail and need further analysis) ! javafx-ui-controls/src/javafx/scene/control/ListCell.java ! javafx-ui-controls/src/javafx/scene/control/TableCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableCell.java ! javafx-ui-controls/test/javafx/scene/control/ListCellTest.java ! javafx-ui-controls/test/javafx/scene/control/TableCellTest.java + javafx-ui-controls/test/javafx/scene/control/TreeCellTest.java + javafx-ui-controls/test/javafx/scene/control/TreeTableCellTest.java + javafx-ui-controls/test/javafx/scene/control/TreeTableRowTest.java Changeset: 812c58a5dbab Author: jgiles Date: 2013-06-06 14:51 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/812c58a5dbab RT-30604: Memory leak in TreeTableView ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TableRowSkin.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TableRowSkinBase.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TreeTableRowSkin.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TreeTableViewSkin.java Changeset: 3b5502de0286 Author: jgiles Date: 2013-06-07 10:04 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/3b5502de0286 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt From hang.vo at oracle.com Thu Jun 6 15:49:14 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 22:49:14 +0000 Subject: hg: openjfx/8/graphics/rt: MayaImport: Skipping frames with negative time. Message-ID: <20130606224954.C8A084802C@hg.openjdk.java.net> Changeset: bb68d69e00ca Author: Alexander Kouznetsov Date: 2013-06-06 15:45 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/bb68d69e00ca MayaImport: Skipping frames with negative time. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java From hang.vo at oracle.com Thu Jun 6 16:05:57 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 06 Jun 2013 23:05:57 +0000 Subject: hg: openjfx/8/graphics/rt: 3DViewer optimizer: refactoring, added KeyFrame, KeyValue analysis. Message-ID: <20130606230617.476A84802E@hg.openjdk.java.net> Changeset: 005e04319ded Author: Alexander Kouznetsov Date: 2013-06-06 15:55 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/005e04319ded 3DViewer optimizer: refactoring, added KeyFrame, KeyValue analysis. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java From hang.vo at oracle.com Thu Jun 6 17:18:27 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Fri, 07 Jun 2013 00:18:27 +0000 Subject: hg: openjfx/8/graphics/rt: 3DViewer optimizer: removes all bad faces from the mesh. Message-ID: <20130607001854.EAB0E48030@hg.openjdk.java.net> Changeset: bf02e9d55b85 Author: Alexander Kouznetsov Date: 2013-06-06 17:06 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/bf02e9d55b85 3DViewer optimizer: removes all bad faces from the mesh. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java From hang.vo at oracle.com Thu Jun 6 18:19:21 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Fri, 07 Jun 2013 01:19:21 +0000 Subject: hg: openjfx/8/graphics/rt: 3DViewer MayaLoader: skipping empty meshes Message-ID: <20130607011939.E525A48033@hg.openjdk.java.net> Changeset: 1c34cffdaf7d Author: Alexander Kouznetsov Date: 2013-06-06 18:13 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/1c34cffdaf7d 3DViewer MayaLoader: skipping empty meshes ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java From richard.bair at oracle.com Thu Jun 6 19:34:05 2013 From: richard.bair at oracle.com (Richard Bair) Date: Thu, 6 Jun 2013 19:34:05 -0700 Subject: TextField Document model In-Reply-To: <73357497-A534-485F-9C14-C7FF9090122F@oracle.com> References: <507ef547.41c5ec0a.2e1f.7e39@mx.google.com> <71937D8F-E326-455D-9E24-669F4D223AFB@oracle.com> <0CFE919A-7CA9-4B24-8527-E42B2B6D7C1E@oracle.com> <50836C4C.6050407@oracle.com> <50854843.3000602@oracle.com> <7393107B-49B2-4E80-A94B-CB995EAADE27@oracle.com> <94AAF79B-01B5-442C-9270-D9705DB6454D@oracle.com> <28959B7C-18E3-444E-91CF-BEF3F2ED652D@oracle.com> <73357497-A534-485F-9C14-C7FF9090122F@oracle.com> Message-ID: I've added to the issue a patch along with some sample API to show how it works. I'm pretty pleased with the result, please try it out and poke holes :-). I am not ready to check it into the mainline until some people have had a chance to play with it and let me know of any problems in the API for doing advanced use cases. Thanks! Richard On Jun 3, 2013, at 10:06 AM, Richard Bair wrote: > I've filed https://javafx-jira.kenai.com/browse/RT-30881 and hoping to get this resolved for 8. > > Richard > > On Dec 4, 2012, at 8:23 AM, Richard Bair wrote: > >> Hi Mark, >> >> Sorry for being slow -- you will at least be glad to know you are in such auspicious company as Jonathan Giles, who has to regularly bribe (or threaten) me to get timely responses :-) >> >> On first read, this seems very nice. The Filter interface is a single-abstract-method interface, so it will play perfectly well with Lambda's. It can be reused among multiple controls and types of text input controls which seems ideal. It seems to plug into the pipeline quite naturally. >> >> One question is, should the filter start off as null and have an additional filter (newlines and such) always applied, or should it start out as non-null where the built in filter handles newlines (and such) and new filters also will have to either wrap the existing filter or add support for newlines (and such!) or not as necessary? The safest thing for an implementor would be to delegate in case we change the built-in behavior. >> >> The next step would be to create a diff and attach it to the JIRA issue (and make sure you have signed the Oracle Contributor Agreement (OCA)). I think we can then integrate the patch and start the discussion around formatted text field. Jonathan, what do you think? Have you had a chance to review? >> >> Thanks >> Richard >> >> On Nov 26, 2012, at 7:44 PM, Mark Claassen wrote: >> >>> I sent a potential API change to Richard Bair a few weeks ago. He has not >>> responded to me, which makes me think it was too complicated at this point >>> and wasn't going to fly. I think for a good InputMaskField, the Content >>> and the eventual caret position and selection needs to be controlled by the >>> "model". This makes the solution a bit complex. >>> >>> However, for filtering, this is not the case. Doing both of these in one >>> shot is, perhaps, a mistake. Here is another idea which takes care of the >>> easy cases...easily. A more complex InputMask control I will save for >>> later. >>> >>> So, here is the simplified idea: Add the ability to "filter". And by >>> filter, I mean the ability to modify the input and only the input: >>> >>> Add the following sub-interface to the Content interface. No methods are >>> added to the Content interface. >>> interface Filter { >>> String filter(int index, String text, String currentContent); >>> } >>> >>> Add the following to TextFieldContent and TextAreaContent: >>> private Content.Filter filter; >>> public void setContentFilter(Content.Filter filter) { >>> this.filter = filter; >>> } >>> >>> Change the "insert" method of TextFieldContent and TextAreaContent to start >>> with: >>> @Override public void insert(int index, String text, boolean >>> notifyListeners) { >>> text = TextInputControl.filterInput(text, [boolean], [boolean]); >>> if (filter != null) >>> text = filter.filter(index, text, get()); >>> >>> Add a method in TextField: >>> public void setContentFilter(Content.Filter filter) { >>> ((TextFieldContent)getContent()).setContentFilter(filter); >>> } >>> >>> Add a method in TextArea: >>> public void setContentFilter(Content.Filter filter) { >>> ((TextAreaContent)getContent()).setContentFilter(filter); >>> } >>> >>> This would do a few things: >>> 1) Use the current "TextInputControl.filterInput" mechanisms of TextField >>> and TextArea (like to strip out special chars and newlines). >>> 2) By specifying the Filter interface outside of TextField and TextArea, it >>> allows the same filter to be used for TextField and TextArea >>> 3) Makes it simple to do things like translate all input to upper case or >>> limit the overall length >>> 4) By not adding a method to Content directly, something like the >>> InputMaskContent would not be forced to deal with the Filter interface at >>> all. >>> >>> This implementation would allow someone creating a filter to "filter" the >>> text to have illegal characters. I thought it was more validate this >>> first, so that the implementer would only have to deal with proper input. >>> However, TextInputControl.filterInput could be done both before and after >>> the Filter.filter() call. >>> text = TextInputControl.filterInput(text, [boolean], [boolean]); >>> if (filter != null) { >>> text = filter.filter(index, text, get()); >>> text = TextInputControl.filterInput(text, [boolean], >>> [boolean]); >>> } >>> >>> Another possible addition to this may be to allow the filter to return >>> null, signifying an error input and causing the system to "beep". >>> >>> Thanks for your consideration, >>> Mark >> > From hang.vo at oracle.com Thu Jun 6 21:40:14 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Fri, 07 Jun 2013 04:40:14 +0000 Subject: hg: openjfx/8/master/rt: 101 new changesets Message-ID: <20130607050053.62AF248065@hg.openjdk.java.net> Changeset: b8fefd02229f Author: mv157916 Date: 2013-06-03 10:53 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/b8fefd02229f RT-30822: Update the JDK build number to b92 in rt/build.properties file in the JavaFX 8 Master forest. ! build.properties Changeset: 4aa29e84eb5e Author: flar Date: 2013-05-28 14:03 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/4aa29e84eb5e Fix RT-30254: PixelReader fails for grayscale JPEG images ! prism-common/src/com/sun/prism/Image.java Changeset: 620ba7384511 Author: flar Date: 2013-05-28 19:32 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/620ba7384511 Fix RT-29929 - exceptions with cached shapes due to NaN comparisons ! javafx-geom/src/com/sun/javafx/geom/RectBounds.java Changeset: 0d994ae9c839 Author: Seeon Birger Date: 2013-05-29 12:34 +0300 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/0d994ae9c839 Dual commit (ea2) - Fix RT-30627 - Virtual Keyboard moves to the background after switching to a another window ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/FXVKSkin.java Changeset: ec7bf9d52d7b Author: Pavel Safrata Date: 2013-05-29 12:33 +0100 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/ec7bf9d52d7b RT-30731: methods marked protected by accident removed form public API. ! javafx-ui-common/src/javafx/scene/ParallelCamera.java ! javafx-ui-common/src/javafx/scene/PerspectiveCamera.java Changeset: 1d085d9d983c Author: lepopov Date: 2013-05-29 16:58 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/1d085d9d983c Fixed RT-29404 WebView scroll bar thumb hit testing is incorrect ! webview/src/com/sun/javafx/webkit/theme/ScrollBarThemeImpl.java Changeset: c375e7b5faf1 Author: Martin Sladecek Date: 2013-05-29 16:02 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/c375e7b5faf1 HBox optimizations + minor layout optimizations in Region and Shapes ! javafx-ui-common/src/javafx/scene/layout/FlowPane.java ! javafx-ui-common/src/javafx/scene/layout/GridPane.java ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-common/src/javafx/scene/layout/StackPane.java ! javafx-ui-common/src/javafx/scene/layout/TilePane.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java ! javafx-ui-common/src/javafx/scene/shape/Arc.java ! javafx-ui-common/src/javafx/scene/shape/Circle.java ! javafx-ui-common/src/javafx/scene/shape/Ellipse.java ! javafx-ui-common/src/javafx/scene/shape/Line.java ! javafx-ui-common/src/javafx/scene/shape/Rectangle.java ! javafx-ui-common/test/unit/javafx/scene/layout/HBoxTest.java Changeset: 6d06aa1a268b Author: Martin Sladecek Date: 2013-05-29 16:10 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/6d06aa1a268b Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt ! javafx-ui-common/src/javafx/scene/layout/GridPane.java ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/StackPane.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java Changeset: 0c4d51bfacdf Author: Martin Sladecek Date: 2013-05-29 16:14 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/0c4d51bfacdf after-merge fixes ! javafx-ui-common/src/javafx/scene/layout/HBox.java Changeset: 122d1f72e7c5 Author: snorthov Date: 2013-05-29 12:09 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/122d1f72e7c5 fix .classpath ! .classpath Changeset: 44c4d06279d4 Author: snorthov Date: 2013-05-29 12:27 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/44c4d06279d4 fix .classpath [add source for builders] ! .classpath Changeset: 609746f32d1b Author: Felipe Heidrich Date: 2013-05-29 09:53 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/609746f32d1b [eclipse only] fix .classpath ! .classpath Changeset: 7d97d6e4f096 Author: Richard Bair Date: 2013-05-29 10:43 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/7d97d6e4f096 Fixes to build with IntelliJ - SimpleViewerApp and FXVKSkin both needed a "final" keyword added in order to build on 7 (and we're trying to use as little dependence on 8 as possible to support the communities JDK 7 backport of FX 8) - Modena's SamplePage needed to have replacements for some builders and changes in how other builders were used - A bunch of duplicate test classes were in javafx-builders which made IDEA very unhappy. ! apps/experiments/3DViewer/3D Viewer.iml ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SimpleViewerApp.java ! apps/experiments/Modena/Modena.iml ! apps/experiments/Modena/src/modena/SamplePage.java ! apps/samples/Ensemble8/Ensemble8.iml ! javafx-builders/test/unit/com/sun/javafx/test/BuilderProxy.java - javafx-builders/test/unit/com/sun/javafx/test/PropertiesTestBase.java - javafx-builders/test/unit/com/sun/javafx/test/PropertyReference.java - javafx-builders/test/unit/com/sun/javafx/test/binding/ReflectionHelper.java - javafx-builders/test/unit/javafx/scene/Node_properties_Test.java - javafx-builders/test/unit/javafx/scene/Scene_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Blend_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Bloom_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/BoxBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorAdjust_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DisplacementMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DistantLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DropShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/FloatMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/GaussianBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Glow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ImageInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/InnerShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Lighting_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/MotionBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PerspectiveTransform_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PointLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Reflection_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SepiaTone_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Shadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SpotLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/ArcTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Arc_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Circle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Ellipse_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/HLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/LineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Line_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/MoveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Path_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Rectangle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/SVGPath_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Shape_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/VLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/transform/Transform_properties_Test.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/FXVKSkin.java Changeset: 167bc510ce34 Author: snorthov Date: 2013-05-29 16:05 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/167bc510ce34 RT-26702: Poor DisplacementMap effect performance on Mac [Java code only, fixes potential drawing of garbage on first frame on OS X] ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PresentingPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/ViewPainter.java Changeset: c75bd11d9865 Author: jgodinez Date: 2013-05-29 13:35 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/c75bd11d9865 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt - javafx-builders/test/unit/com/sun/javafx/test/PropertiesTestBase.java - javafx-builders/test/unit/com/sun/javafx/test/PropertyReference.java - javafx-builders/test/unit/com/sun/javafx/test/binding/ReflectionHelper.java - javafx-builders/test/unit/javafx/scene/Node_properties_Test.java - javafx-builders/test/unit/javafx/scene/Scene_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Blend_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Bloom_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/BoxBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorAdjust_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DisplacementMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DistantLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DropShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/FloatMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/GaussianBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Glow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ImageInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/InnerShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Lighting_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/MotionBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PerspectiveTransform_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PointLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Reflection_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SepiaTone_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Shadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SpotLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/ArcTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Arc_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Circle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Ellipse_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/HLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/LineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Line_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/MoveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Path_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Rectangle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/SVGPath_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Shape_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/VLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/transform/Transform_properties_Test.java Changeset: eb0ca6ba0558 Author: snorthov Date: 2013-05-29 16:57 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/eb0ca6ba0558 Comment RT-26702: Poor DisplacementMap effect performance on Mac [Java code only, fixes potential drawing of garbage on first frame on OS X] ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/UploadingPainter.java Changeset: 3e330c5301c2 Author: snorthov Date: 2013-05-29 23:46 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/3e330c5301c2 RT-30287: No rendering after scene graph update due to poor synchronization ! javafx-ui-common/src/com/sun/javafx/tk/TKScene.java ! javafx-ui-common/src/javafx/scene/Scene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/GlassScene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PaintCollector.java ! test-stub-toolkit/src/com/sun/javafx/pgstub/StubScene.java Changeset: c200cd542665 Author: Martin Sladecek Date: 2013-05-30 08:19 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/c200cd542665 Replaced lambdas in FilteredList and TransformationList with anonymous classes. ! javafx-beans/src/javafx/collections/transformation/FilteredList.java ! javafx-beans/src/javafx/collections/transformation/TransformationList.java Changeset: 8018a7293402 Author: Felipe Heidrich Date: 2013-05-29 23:42 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/8018a7293402 RT-30711: Fix padding of dirty regions so as to avoid padding unless we're dealing with lcd text ! javafx-sg-common/src/com/sun/javafx/sg/BaseNode.java ! javafx-sg-prism/src/com/sun/javafx/sg/prism/NGText.java Changeset: a99a0da62147 Author: Pavel Safrata Date: 2013-05-30 08:26 +0100 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/a99a0da62147 [DOC-ONLY]: added the second asterisk for the comments to become visible for Javadoc. ! javafx-ui-common/src/javafx/application/ConditionalFeature.java Changeset: 32f8e83c9e92 Author: Pavel Safrata Date: 2013-05-30 08:29 +0100 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/32f8e83c9e92 [DOC-ONLY]: added missing comment. ! javafx-ui-common/src/javafx/scene/input/MouseEvent.java Changeset: 55c9c3a55f58 Author: Eva Krejcirova Date: 2013-05-30 10:35 +0100 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/55c9c3a55f58 Method marked public by accident removed form public API ! javafx-ui-common/src/javafx/scene/shape/Arc.java Changeset: 0da32bf95d30 Author: Oldrich Maticka Date: 2013-05-30 11:56 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/0da32bf95d30 iOS: Native library loading fixed for iOS. Adding missing JNI_OnLoad_*() functions, etc. Reviewed by David Pulkrabek. ! glass/glass-lib-ios/src/GlassApplication.m ! glass/glass/src/com/sun/glass/utils/NativeLibLoader.java ! javafx-iio-native/src/ios/com_sun_javafx_iio_ios_IosImageLoader.m ! javafx-iio-native/src/jpegloader.c ! prism-common-native/src/Helpers.c ! prism-es2-native/src/ios/IOSGLFactory.c Changeset: b29ce522d568 Author: snorthov Date: 2013-05-30 07:39 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/b29ce522d568 RT-30802: Quantum Cleanup: Make pipeline initialization happen in run() ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedPainter.java Changeset: f2583a30a508 Author: Martin Sladecek Date: 2013-05-30 15:42 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/f2583a30a508 Fixed infinte loop in HBox. ! javafx-ui-common/src/javafx/scene/layout/HBox.java Changeset: 804a55322e91 Author: Martin Sladecek Date: 2013-05-30 15:43 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/804a55322e91 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx/rt Changeset: c48aba5f8936 Author: kcr Date: 2013-05-30 07:00 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/c48aba5f8936 Gradle: fix native font build ! gradleBuildSrc/win.gradle Changeset: b17e961ecd38 Author: Oldrich Maticka Date: 2013-05-30 16:54 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/b17e961ecd38 iOS: Checking available JNI_VERSION @ runtime to be able to run with various JDK8 mobile promotions ! glass/glass-lib-ios/src/GlassApplication.m ! javafx-iio-native/src/ios/com_sun_javafx_iio_ios_IosImageLoader.m ! javafx-iio-native/src/jpegloader.c ! prism-common-native/src/Helpers.c ! prism-es2-native/src/ios/IOSGLFactory.c Changeset: 9b21f61edda7 Author: Per Bothner Date: 2013-05-30 13:03 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/9b21f61edda7 RT-28953 - JSException should conserve the original exception ! javafx-ui-common/src/com/sun/webkit/dom/JSObject.java ! webview/native/Source/WebCore/bridge/jni/jsc/JavaInstanceJSC.cpp ! webview/native/Source/WebCore/platform/java/BridgeUtils.cpp ! webview/test/javafx/scene/web/JavaScriptBridgeTest.java Changeset: 18da8c32f363 Author: Felipe Heidrich Date: 2013-05-30 14:54 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/18da8c32f363 RT-30823: Improve subpixel support for CoreText ! prism-common/src/com/sun/prism/impl/GlyphCache.java ! prism-ps/src/com/sun/prism/impl/ps/BaseShaderGraphics.java Changeset: 6fbcdced58f6 Author: Pavel Safrata Date: 2013-05-31 10:09 +0100 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/6fbcdced58f6 RT-26765: fixed @since tags. ! javafx-anim/src/javafx/animation/Animation.java ! javafx-anim/src/javafx/animation/AnimationTimer.java ! javafx-anim/src/javafx/animation/Interpolatable.java ! javafx-anim/src/javafx/animation/Interpolator.java ! javafx-anim/src/javafx/animation/KeyFrame.java ! javafx-anim/src/javafx/animation/KeyValue.java ! javafx-anim/src/javafx/animation/Timeline.java ! javafx-beans/src/javafx/beans/DefaultProperty.java ! javafx-beans/src/javafx/beans/InvalidationListener.java ! javafx-beans/src/javafx/beans/Observable.java ! javafx-beans/src/javafx/beans/WeakInvalidationListener.java ! javafx-beans/src/javafx/beans/WeakListener.java ! javafx-beans/src/javafx/beans/binding/Binding.java ! javafx-beans/src/javafx/beans/binding/Bindings.java ! javafx-beans/src/javafx/beans/binding/BooleanBinding.java ! javafx-beans/src/javafx/beans/binding/BooleanExpression.java ! javafx-beans/src/javafx/beans/binding/DoubleBinding.java ! javafx-beans/src/javafx/beans/binding/DoubleExpression.java ! javafx-beans/src/javafx/beans/binding/FloatBinding.java ! javafx-beans/src/javafx/beans/binding/FloatExpression.java ! javafx-beans/src/javafx/beans/binding/IntegerBinding.java ! javafx-beans/src/javafx/beans/binding/IntegerExpression.java ! javafx-beans/src/javafx/beans/binding/ListBinding.java ! javafx-beans/src/javafx/beans/binding/ListExpression.java ! javafx-beans/src/javafx/beans/binding/LongBinding.java ! javafx-beans/src/javafx/beans/binding/LongExpression.java ! javafx-beans/src/javafx/beans/binding/MapBinding.java ! javafx-beans/src/javafx/beans/binding/MapExpression.java ! javafx-beans/src/javafx/beans/binding/NumberBinding.java ! javafx-beans/src/javafx/beans/binding/NumberExpression.java ! javafx-beans/src/javafx/beans/binding/NumberExpressionBase.java ! javafx-beans/src/javafx/beans/binding/ObjectBinding.java ! javafx-beans/src/javafx/beans/binding/ObjectExpression.java ! javafx-beans/src/javafx/beans/binding/SetBinding.java ! javafx-beans/src/javafx/beans/binding/SetExpression.java ! javafx-beans/src/javafx/beans/binding/StringBinding.java ! javafx-beans/src/javafx/beans/binding/StringExpression.java ! javafx-beans/src/javafx/beans/binding/When.java ! javafx-beans/src/javafx/beans/property/BooleanProperty.java ! javafx-beans/src/javafx/beans/property/BooleanPropertyBase.java ! javafx-beans/src/javafx/beans/property/DoubleProperty.java ! javafx-beans/src/javafx/beans/property/DoublePropertyBase.java ! javafx-beans/src/javafx/beans/property/FloatProperty.java ! javafx-beans/src/javafx/beans/property/FloatPropertyBase.java ! javafx-beans/src/javafx/beans/property/IntegerProperty.java ! javafx-beans/src/javafx/beans/property/IntegerPropertyBase.java ! javafx-beans/src/javafx/beans/property/ListProperty.java ! javafx-beans/src/javafx/beans/property/ListPropertyBase.java ! javafx-beans/src/javafx/beans/property/LongProperty.java ! javafx-beans/src/javafx/beans/property/LongPropertyBase.java ! javafx-beans/src/javafx/beans/property/MapProperty.java ! javafx-beans/src/javafx/beans/property/MapPropertyBase.java ! javafx-beans/src/javafx/beans/property/ObjectProperty.java ! javafx-beans/src/javafx/beans/property/ObjectPropertyBase.java ! javafx-beans/src/javafx/beans/property/Property.java ! javafx-beans/src/javafx/beans/property/ReadOnlyBooleanProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyBooleanPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyBooleanWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyDoubleProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyDoublePropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyDoubleWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyFloatProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyFloatPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyFloatWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyIntegerProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyIntegerPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyIntegerWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyListProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyListPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyListWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyLongProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyLongPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyLongWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyMapProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyMapPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyMapWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyObjectProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyObjectPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyObjectWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlySetProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlySetPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlySetWrapper.java ! javafx-beans/src/javafx/beans/property/ReadOnlyStringProperty.java ! javafx-beans/src/javafx/beans/property/ReadOnlyStringPropertyBase.java ! javafx-beans/src/javafx/beans/property/ReadOnlyStringWrapper.java ! javafx-beans/src/javafx/beans/property/SetProperty.java ! javafx-beans/src/javafx/beans/property/SetPropertyBase.java ! javafx-beans/src/javafx/beans/property/SimpleBooleanProperty.java ! javafx-beans/src/javafx/beans/property/SimpleDoubleProperty.java ! javafx-beans/src/javafx/beans/property/SimpleFloatProperty.java ! javafx-beans/src/javafx/beans/property/SimpleIntegerProperty.java ! javafx-beans/src/javafx/beans/property/SimpleListProperty.java ! javafx-beans/src/javafx/beans/property/SimpleLongProperty.java ! javafx-beans/src/javafx/beans/property/SimpleMapProperty.java ! javafx-beans/src/javafx/beans/property/SimpleObjectProperty.java ! javafx-beans/src/javafx/beans/property/SimpleSetProperty.java ! javafx-beans/src/javafx/beans/property/SimpleStringProperty.java ! javafx-beans/src/javafx/beans/property/StringProperty.java ! javafx-beans/src/javafx/beans/property/StringPropertyBase.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanBooleanProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanBooleanPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanDoubleProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanDoublePropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanFloatProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanFloatPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanIntegerProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanIntegerPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanLongProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanLongPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanObjectProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanObjectPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanStringProperty.java ! javafx-beans/src/javafx/beans/property/adapter/JavaBeanStringPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanBooleanProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanBooleanPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanDoubleProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanDoublePropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanFloatProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanFloatPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanIntegerProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanIntegerPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanLongProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanLongPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanObjectProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanObjectPropertyBuilder.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanStringProperty.java ! javafx-beans/src/javafx/beans/property/adapter/ReadOnlyJavaBeanStringPropertyBuilder.java ! javafx-beans/src/javafx/beans/value/ChangeListener.java ! javafx-beans/src/javafx/beans/value/ObservableBooleanValue.java ! javafx-beans/src/javafx/beans/value/ObservableDoubleValue.java ! javafx-beans/src/javafx/beans/value/ObservableFloatValue.java ! javafx-beans/src/javafx/beans/value/ObservableIntegerValue.java ! javafx-beans/src/javafx/beans/value/ObservableListValue.java ! javafx-beans/src/javafx/beans/value/ObservableLongValue.java ! javafx-beans/src/javafx/beans/value/ObservableMapValue.java ! javafx-beans/src/javafx/beans/value/ObservableNumberValue.java ! javafx-beans/src/javafx/beans/value/ObservableObjectValue.java ! javafx-beans/src/javafx/beans/value/ObservableSetValue.java ! javafx-beans/src/javafx/beans/value/ObservableStringValue.java ! javafx-beans/src/javafx/beans/value/ObservableValue.java ! javafx-beans/src/javafx/beans/value/ObservableValueBase.java ! javafx-beans/src/javafx/beans/value/WeakChangeListener.java ! javafx-beans/src/javafx/beans/value/WritableBooleanValue.java ! javafx-beans/src/javafx/beans/value/WritableDoubleValue.java ! javafx-beans/src/javafx/beans/value/WritableFloatValue.java ! javafx-beans/src/javafx/beans/value/WritableIntegerValue.java ! javafx-beans/src/javafx/beans/value/WritableListValue.java ! javafx-beans/src/javafx/beans/value/WritableLongValue.java ! javafx-beans/src/javafx/beans/value/WritableMapValue.java ! javafx-beans/src/javafx/beans/value/WritableNumberValue.java ! javafx-beans/src/javafx/beans/value/WritableObjectValue.java ! javafx-beans/src/javafx/beans/value/WritableSetValue.java ! javafx-beans/src/javafx/beans/value/WritableStringValue.java ! javafx-beans/src/javafx/beans/value/WritableValue.java ! javafx-beans/src/javafx/collections/ArrayChangeListener.java ! javafx-beans/src/javafx/collections/FXCollections.java ! javafx-beans/src/javafx/collections/ListChangeListener.java ! javafx-beans/src/javafx/collections/MapChangeListener.java ! javafx-beans/src/javafx/collections/ModifiableObservableListBase.java ! javafx-beans/src/javafx/collections/ObservableArray.java ! javafx-beans/src/javafx/collections/ObservableArrayBase.java ! javafx-beans/src/javafx/collections/ObservableFloatArray.java ! javafx-beans/src/javafx/collections/ObservableIntegerArray.java ! javafx-beans/src/javafx/collections/ObservableList.java ! javafx-beans/src/javafx/collections/ObservableListBase.java ! javafx-beans/src/javafx/collections/ObservableMap.java ! javafx-beans/src/javafx/collections/ObservableSet.java ! javafx-beans/src/javafx/collections/SetChangeListener.java ! javafx-beans/src/javafx/collections/WeakListChangeListener.java ! javafx-beans/src/javafx/collections/WeakMapChangeListener.java ! javafx-beans/src/javafx/collections/WeakSetChangeListener.java ! javafx-beans/src/javafx/collections/transformation/FilteredList.java ! javafx-beans/src/javafx/collections/transformation/SortedList.java ! javafx-beans/src/javafx/collections/transformation/TransformationList.java ! javafx-builders/src/javafx/animation/AnimationBuilder.java ! javafx-builders/src/javafx/animation/FadeTransitionBuilder.java ! javafx-builders/src/javafx/animation/FillTransitionBuilder.java ! javafx-builders/src/javafx/animation/ParallelTransitionBuilder.java ! javafx-builders/src/javafx/animation/PathTransitionBuilder.java ! javafx-builders/src/javafx/animation/PauseTransitionBuilder.java ! javafx-builders/src/javafx/animation/RotateTransitionBuilder.java ! javafx-builders/src/javafx/animation/ScaleTransitionBuilder.java ! javafx-builders/src/javafx/animation/SequentialTransitionBuilder.java ! javafx-builders/src/javafx/animation/StrokeTransitionBuilder.java ! javafx-builders/src/javafx/animation/TimelineBuilder.java ! javafx-builders/src/javafx/animation/TransitionBuilder.java ! javafx-builders/src/javafx/animation/TranslateTransitionBuilder.java ! javafx-builders/src/javafx/embed/swing/JFXPanelBuilder.java ! javafx-builders/src/javafx/embed/swt/CustomTransferBuilder.java ! javafx-builders/src/javafx/geometry/BoundingBoxBuilder.java ! javafx-builders/src/javafx/geometry/Dimension2DBuilder.java ! javafx-builders/src/javafx/geometry/InsetsBuilder.java ! javafx-builders/src/javafx/geometry/Point2DBuilder.java ! javafx-builders/src/javafx/geometry/Point3DBuilder.java ! javafx-builders/src/javafx/geometry/Rectangle2DBuilder.java ! javafx-builders/src/javafx/scene/GroupBuilder.java ! javafx-builders/src/javafx/scene/ImageCursorBuilder.java ! javafx-builders/src/javafx/scene/NodeBuilder.java ! javafx-builders/src/javafx/scene/ParentBuilder.java ! javafx-builders/src/javafx/scene/PerspectiveCameraBuilder.java ! javafx-builders/src/javafx/scene/SceneBuilder.java ! javafx-builders/src/javafx/scene/SnapshotParametersBuilder.java ! javafx-builders/src/javafx/scene/canvas/CanvasBuilder.java ! javafx-builders/src/javafx/scene/chart/AreaChartBuilder.java ! javafx-builders/src/javafx/scene/chart/AxisBuilder.java ! javafx-builders/src/javafx/scene/chart/BarChartBuilder.java ! javafx-builders/src/javafx/scene/chart/BubbleChartBuilder.java ! javafx-builders/src/javafx/scene/chart/CategoryAxisBuilder.java ! javafx-builders/src/javafx/scene/chart/ChartBuilder.java ! javafx-builders/src/javafx/scene/chart/LineChartBuilder.java ! javafx-builders/src/javafx/scene/chart/NumberAxisBuilder.java ! javafx-builders/src/javafx/scene/chart/PieChartBuilder.java ! javafx-builders/src/javafx/scene/chart/ScatterChartBuilder.java ! javafx-builders/src/javafx/scene/chart/StackedAreaChartBuilder.java ! javafx-builders/src/javafx/scene/chart/StackedBarChartBuilder.java ! javafx-builders/src/javafx/scene/chart/ValueAxisBuilder.java ! javafx-builders/src/javafx/scene/chart/XYChartBuilder.java ! javafx-builders/src/javafx/scene/control/AccordionBuilder.java ! javafx-builders/src/javafx/scene/control/ButtonBaseBuilder.java ! javafx-builders/src/javafx/scene/control/ButtonBuilder.java ! javafx-builders/src/javafx/scene/control/CellBuilder.java ! javafx-builders/src/javafx/scene/control/CheckBoxBuilder.java ! javafx-builders/src/javafx/scene/control/CheckBoxTreeItemBuilder.java ! javafx-builders/src/javafx/scene/control/CheckMenuItemBuilder.java ! javafx-builders/src/javafx/scene/control/ChoiceBoxBuilder.java ! javafx-builders/src/javafx/scene/control/ColorPickerBuilder.java ! javafx-builders/src/javafx/scene/control/ComboBoxBaseBuilder.java ! javafx-builders/src/javafx/scene/control/ComboBoxBuilder.java ! javafx-builders/src/javafx/scene/control/ContextMenuBuilder.java ! javafx-builders/src/javafx/scene/control/ControlBuilder.java ! javafx-builders/src/javafx/scene/control/CustomMenuItemBuilder.java ! javafx-builders/src/javafx/scene/control/HyperlinkBuilder.java ! javafx-builders/src/javafx/scene/control/IndexRangeBuilder.java ! javafx-builders/src/javafx/scene/control/IndexedCellBuilder.java ! javafx-builders/src/javafx/scene/control/LabelBuilder.java ! javafx-builders/src/javafx/scene/control/LabeledBuilder.java ! javafx-builders/src/javafx/scene/control/ListCellBuilder.java ! javafx-builders/src/javafx/scene/control/ListViewBuilder.java ! javafx-builders/src/javafx/scene/control/MenuBarBuilder.java ! javafx-builders/src/javafx/scene/control/MenuBuilder.java ! javafx-builders/src/javafx/scene/control/MenuButtonBuilder.java ! javafx-builders/src/javafx/scene/control/MenuItemBuilder.java ! javafx-builders/src/javafx/scene/control/MultipleSelectionModelBuilder.java ! javafx-builders/src/javafx/scene/control/PaginationBuilder.java ! javafx-builders/src/javafx/scene/control/PasswordFieldBuilder.java ! javafx-builders/src/javafx/scene/control/PopupControlBuilder.java ! javafx-builders/src/javafx/scene/control/ProgressBarBuilder.java ! javafx-builders/src/javafx/scene/control/ProgressIndicatorBuilder.java ! javafx-builders/src/javafx/scene/control/RadioButtonBuilder.java ! javafx-builders/src/javafx/scene/control/RadioMenuItemBuilder.java ! javafx-builders/src/javafx/scene/control/ScrollBarBuilder.java ! javafx-builders/src/javafx/scene/control/ScrollPaneBuilder.java ! javafx-builders/src/javafx/scene/control/SeparatorBuilder.java ! javafx-builders/src/javafx/scene/control/SeparatorMenuItemBuilder.java ! javafx-builders/src/javafx/scene/control/SliderBuilder.java ! javafx-builders/src/javafx/scene/control/SplitMenuButtonBuilder.java ! javafx-builders/src/javafx/scene/control/SplitPaneBuilder.java ! javafx-builders/src/javafx/scene/control/TabBuilder.java ! javafx-builders/src/javafx/scene/control/TabPaneBuilder.java ! javafx-builders/src/javafx/scene/control/TableCellBuilder.java ! javafx-builders/src/javafx/scene/control/TableColumnBuilder.java ! javafx-builders/src/javafx/scene/control/TablePositionBuilder.java ! javafx-builders/src/javafx/scene/control/TableRowBuilder.java ! javafx-builders/src/javafx/scene/control/TableViewBuilder.java ! javafx-builders/src/javafx/scene/control/TextAreaBuilder.java ! javafx-builders/src/javafx/scene/control/TextFieldBuilder.java ! javafx-builders/src/javafx/scene/control/TextInputControlBuilder.java ! javafx-builders/src/javafx/scene/control/TitledPaneBuilder.java ! javafx-builders/src/javafx/scene/control/ToggleButtonBuilder.java ! javafx-builders/src/javafx/scene/control/ToggleGroupBuilder.java ! javafx-builders/src/javafx/scene/control/ToolBarBuilder.java ! javafx-builders/src/javafx/scene/control/TooltipBuilder.java ! javafx-builders/src/javafx/scene/control/TreeCellBuilder.java ! javafx-builders/src/javafx/scene/control/TreeItemBuilder.java ! javafx-builders/src/javafx/scene/control/TreeViewBuilder.java ! javafx-builders/src/javafx/scene/control/cell/CheckBoxListCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/CheckBoxTableCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/CheckBoxTreeCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/ChoiceBoxListCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/ChoiceBoxTableCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/ChoiceBoxTreeCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/ComboBoxListCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/ComboBoxTableCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/ComboBoxTreeCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/PropertyValueFactoryBuilder.java ! javafx-builders/src/javafx/scene/control/cell/TextFieldListCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/TextFieldTableCellBuilder.java ! javafx-builders/src/javafx/scene/control/cell/TextFieldTreeCellBuilder.java ! javafx-builders/src/javafx/scene/effect/BlendBuilder.java ! javafx-builders/src/javafx/scene/effect/BloomBuilder.java ! javafx-builders/src/javafx/scene/effect/BoxBlurBuilder.java ! javafx-builders/src/javafx/scene/effect/ColorAdjustBuilder.java ! javafx-builders/src/javafx/scene/effect/ColorInputBuilder.java ! javafx-builders/src/javafx/scene/effect/DisplacementMapBuilder.java ! javafx-builders/src/javafx/scene/effect/DropShadowBuilder.java ! javafx-builders/src/javafx/scene/effect/FloatMapBuilder.java ! javafx-builders/src/javafx/scene/effect/GaussianBlurBuilder.java ! javafx-builders/src/javafx/scene/effect/GlowBuilder.java ! javafx-builders/src/javafx/scene/effect/ImageInputBuilder.java ! javafx-builders/src/javafx/scene/effect/InnerShadowBuilder.java ! javafx-builders/src/javafx/scene/effect/LightBuilder.java ! javafx-builders/src/javafx/scene/effect/LightingBuilder.java ! javafx-builders/src/javafx/scene/effect/MotionBlurBuilder.java ! javafx-builders/src/javafx/scene/effect/PerspectiveTransformBuilder.java ! javafx-builders/src/javafx/scene/effect/ReflectionBuilder.java ! javafx-builders/src/javafx/scene/effect/SepiaToneBuilder.java ! javafx-builders/src/javafx/scene/effect/ShadowBuilder.java ! javafx-builders/src/javafx/scene/image/ImageViewBuilder.java ! javafx-builders/src/javafx/scene/input/ClipboardContentBuilder.java ! javafx-builders/src/javafx/scene/input/KeyCharacterCombinationBuilder.java ! javafx-builders/src/javafx/scene/input/KeyCodeCombinationBuilder.java ! javafx-builders/src/javafx/scene/input/MnemonicBuilder.java ! javafx-builders/src/javafx/scene/layout/AnchorPaneBuilder.java ! javafx-builders/src/javafx/scene/layout/BorderPaneBuilder.java ! javafx-builders/src/javafx/scene/layout/ColumnConstraintsBuilder.java ! javafx-builders/src/javafx/scene/layout/FlowPaneBuilder.java ! javafx-builders/src/javafx/scene/layout/GridPaneBuilder.java ! javafx-builders/src/javafx/scene/layout/HBoxBuilder.java ! javafx-builders/src/javafx/scene/layout/PaneBuilder.java ! javafx-builders/src/javafx/scene/layout/RegionBuilder.java ! javafx-builders/src/javafx/scene/layout/RowConstraintsBuilder.java ! javafx-builders/src/javafx/scene/layout/StackPaneBuilder.java ! javafx-builders/src/javafx/scene/layout/TilePaneBuilder.java ! javafx-builders/src/javafx/scene/layout/VBoxBuilder.java ! javafx-builders/src/javafx/scene/media/AudioClipBuilder.java ! javafx-builders/src/javafx/scene/media/MediaBuilder.java ! javafx-builders/src/javafx/scene/media/MediaPlayerBuilder.java ! javafx-builders/src/javafx/scene/media/MediaViewBuilder.java ! javafx-builders/src/javafx/scene/paint/ColorBuilder.java ! javafx-builders/src/javafx/scene/paint/ImagePatternBuilder.java ! javafx-builders/src/javafx/scene/paint/LinearGradientBuilder.java ! javafx-builders/src/javafx/scene/paint/RadialGradientBuilder.java ! javafx-builders/src/javafx/scene/paint/StopBuilder.java ! javafx-builders/src/javafx/scene/shape/ArcBuilder.java ! javafx-builders/src/javafx/scene/shape/ArcToBuilder.java ! javafx-builders/src/javafx/scene/shape/CircleBuilder.java ! javafx-builders/src/javafx/scene/shape/ClosePathBuilder.java ! javafx-builders/src/javafx/scene/shape/CubicCurveBuilder.java ! javafx-builders/src/javafx/scene/shape/CubicCurveToBuilder.java ! javafx-builders/src/javafx/scene/shape/EllipseBuilder.java ! javafx-builders/src/javafx/scene/shape/HLineToBuilder.java ! javafx-builders/src/javafx/scene/shape/LineBuilder.java ! javafx-builders/src/javafx/scene/shape/LineToBuilder.java ! javafx-builders/src/javafx/scene/shape/MoveToBuilder.java ! javafx-builders/src/javafx/scene/shape/PathBuilder.java ! javafx-builders/src/javafx/scene/shape/PathElementBuilder.java ! javafx-builders/src/javafx/scene/shape/PolygonBuilder.java ! javafx-builders/src/javafx/scene/shape/PolylineBuilder.java ! javafx-builders/src/javafx/scene/shape/QuadCurveBuilder.java ! javafx-builders/src/javafx/scene/shape/QuadCurveToBuilder.java ! javafx-builders/src/javafx/scene/shape/RectangleBuilder.java ! javafx-builders/src/javafx/scene/shape/SVGPathBuilder.java ! javafx-builders/src/javafx/scene/shape/ShapeBuilder.java ! javafx-builders/src/javafx/scene/shape/VLineToBuilder.java ! javafx-builders/src/javafx/scene/text/FontBuilder.java ! javafx-builders/src/javafx/scene/text/TextBuilder.java ! javafx-builders/src/javafx/scene/transform/AffineBuilder.java ! javafx-builders/src/javafx/scene/transform/RotateBuilder.java ! javafx-builders/src/javafx/scene/transform/ScaleBuilder.java ! javafx-builders/src/javafx/scene/transform/ShearBuilder.java ! javafx-builders/src/javafx/scene/transform/TranslateBuilder.java ! javafx-builders/src/javafx/scene/web/WebEngineBuilder.java ! javafx-builders/src/javafx/scene/web/WebViewBuilder.java ! javafx-builders/src/javafx/stage/DirectoryChooserBuilder.java ! javafx-builders/src/javafx/stage/FileChooserBuilder.java ! javafx-builders/src/javafx/stage/PopupBuilder.java ! javafx-builders/src/javafx/stage/PopupWindowBuilder.java ! javafx-builders/src/javafx/stage/StageBuilder.java ! javafx-builders/src/javafx/stage/WindowBuilder.java ! javafx-common/src/javafx/event/ActionEvent.java ! javafx-common/src/javafx/event/Event.java ! javafx-common/src/javafx/event/EventDispatchChain.java ! javafx-common/src/javafx/event/EventDispatcher.java ! javafx-common/src/javafx/event/EventHandler.java ! javafx-common/src/javafx/event/EventTarget.java ! javafx-common/src/javafx/event/EventType.java ! javafx-common/src/javafx/event/WeakEventHandler.java ! javafx-common/src/javafx/util/Builder.java ! javafx-common/src/javafx/util/BuilderFactory.java ! javafx-common/src/javafx/util/Callback.java ! javafx-common/src/javafx/util/Duration.java ! javafx-common/src/javafx/util/Pair.java ! javafx-common/src/javafx/util/StringConverter.java ! javafx-concurrent/src/javafx/concurrent/ScheduledService.java ! javafx-concurrent/src/javafx/concurrent/Service.java ! javafx-concurrent/src/javafx/concurrent/Task.java ! javafx-concurrent/src/javafx/concurrent/Worker.java ! javafx-concurrent/src/javafx/concurrent/WorkerStateEvent.java ! javafx-embed-swing/src/javafx/embed/swing/JFXPanel.java ! javafx-embed-swing/src/javafx/embed/swing/SwingFXUtils.java ! javafx-embed-swing/src/javafx/embed/swing/SwingNode.java ! javafx-embed-swt/src/javafx/embed/swt/CustomTransfer.java ! javafx-embed-swt/src/javafx/embed/swt/FXCanvas.java ! javafx-embed-swt/src/javafx/embed/swt/SWTFXUtils.java ! javafx-fxml/src/javafx/fxml/FXML.java ! javafx-fxml/src/javafx/fxml/FXMLLoader.java ! javafx-fxml/src/javafx/fxml/Initializable.java ! javafx-fxml/src/javafx/fxml/JavaFXBuilderFactory.java ! javafx-fxml/src/javafx/fxml/LoadException.java ! javafx-fxml/src/javafx/fxml/ParseTraceElement.java ! javafx-geom/src/com/sun/javafx/geom/Arc2D.java ! javafx-geom/src/com/sun/javafx/geom/Area.java ! javafx-geom/src/com/sun/javafx/geom/CubicCurve2D.java ! javafx-geom/src/com/sun/javafx/geom/Ellipse2D.java ! javafx-geom/src/com/sun/javafx/geom/IllegalPathStateException.java ! javafx-geom/src/com/sun/javafx/geom/Line2D.java ! javafx-geom/src/com/sun/javafx/geom/Order3.java ! javafx-geom/src/com/sun/javafx/geom/Path2D.java ! javafx-geom/src/com/sun/javafx/geom/QuadCurve2D.java ! javafx-geom/src/com/sun/javafx/geom/Rectangle.java ! javafx-geom/src/com/sun/javafx/geom/RectangularShape.java ! javafx-geom/src/com/sun/javafx/geom/RoundRectangle2D.java ! javafx-geom/src/com/sun/javafx/geom/Shape.java ! javafx-geom/src/com/sun/javafx/geom/transform/Affine2D.java ! javafx-geom/src/com/sun/javafx/geom/transform/AffineBase.java ! javafx-geom/src/com/sun/javafx/geom/transform/BaseTransform.java ! javafx-geom/src/com/sun/javafx/geom/transform/NoninvertibleTransformException.java ! javafx-ui-charts/src/javafx/scene/chart/AreaChart.java ! javafx-ui-charts/src/javafx/scene/chart/BarChart.java ! javafx-ui-charts/src/javafx/scene/chart/BubbleChart.java ! javafx-ui-charts/src/javafx/scene/chart/Chart.java ! javafx-ui-charts/src/javafx/scene/chart/LineChart.java ! javafx-ui-charts/src/javafx/scene/chart/PieChart.java ! javafx-ui-charts/src/javafx/scene/chart/ScatterChart.java ! javafx-ui-charts/src/javafx/scene/chart/StackedAreaChart.java ! javafx-ui-charts/src/javafx/scene/chart/StackedBarChart.java ! javafx-ui-charts/src/javafx/scene/chart/XYChart.java ! javafx-ui-common/src/javafx/animation/FadeTransition.java ! javafx-ui-common/src/javafx/animation/FillTransition.java ! javafx-ui-common/src/javafx/animation/ParallelTransition.java ! javafx-ui-common/src/javafx/animation/PathTransition.java ! javafx-ui-common/src/javafx/animation/PauseTransition.java ! javafx-ui-common/src/javafx/animation/RotateTransition.java ! javafx-ui-common/src/javafx/animation/ScaleTransition.java ! javafx-ui-common/src/javafx/animation/SequentialTransition.java ! javafx-ui-common/src/javafx/animation/StrokeTransition.java ! javafx-ui-common/src/javafx/animation/Transition.java ! javafx-ui-common/src/javafx/animation/TranslateTransition.java ! javafx-ui-common/src/javafx/application/Application.java ! javafx-ui-common/src/javafx/application/ConditionalFeature.java ! javafx-ui-common/src/javafx/application/HostServices.java ! javafx-ui-common/src/javafx/application/Platform.java ! javafx-ui-common/src/javafx/application/Preloader.java ! javafx-ui-common/src/javafx/css/CssMetaData.java ! javafx-ui-common/src/javafx/css/FontCssMetaData.java ! javafx-ui-common/src/javafx/css/ParsedValue.java ! javafx-ui-common/src/javafx/css/PseudoClass.java ! javafx-ui-common/src/javafx/css/SimpleStyleableBooleanProperty.java ! javafx-ui-common/src/javafx/css/SimpleStyleableDoubleProperty.java ! javafx-ui-common/src/javafx/css/SimpleStyleableFloatProperty.java ! javafx-ui-common/src/javafx/css/SimpleStyleableIntegerProperty.java ! javafx-ui-common/src/javafx/css/SimpleStyleableLongProperty.java ! javafx-ui-common/src/javafx/css/SimpleStyleableObjectProperty.java ! javafx-ui-common/src/javafx/css/SimpleStyleableStringProperty.java ! javafx-ui-common/src/javafx/css/StyleConverter.java ! javafx-ui-common/src/javafx/css/StyleOrigin.java ! javafx-ui-common/src/javafx/css/Styleable.java ! javafx-ui-common/src/javafx/css/StyleableBooleanProperty.java ! javafx-ui-common/src/javafx/css/StyleableDoubleProperty.java ! javafx-ui-common/src/javafx/css/StyleableFloatProperty.java ! javafx-ui-common/src/javafx/css/StyleableIntegerProperty.java ! javafx-ui-common/src/javafx/css/StyleableLongProperty.java ! javafx-ui-common/src/javafx/css/StyleableObjectProperty.java ! javafx-ui-common/src/javafx/css/StyleableProperty.java ! javafx-ui-common/src/javafx/css/StyleableStringProperty.java ! javafx-ui-common/src/javafx/geometry/BoundingBox.java ! javafx-ui-common/src/javafx/geometry/Bounds.java ! javafx-ui-common/src/javafx/geometry/Dimension2D.java ! javafx-ui-common/src/javafx/geometry/HPos.java ! javafx-ui-common/src/javafx/geometry/HorizontalDirection.java ! javafx-ui-common/src/javafx/geometry/Insets.java ! javafx-ui-common/src/javafx/geometry/NodeOrientation.java ! javafx-ui-common/src/javafx/geometry/Orientation.java ! javafx-ui-common/src/javafx/geometry/Point2D.java ! javafx-ui-common/src/javafx/geometry/Point3D.java ! javafx-ui-common/src/javafx/geometry/Pos.java ! javafx-ui-common/src/javafx/geometry/Rectangle2D.java ! javafx-ui-common/src/javafx/geometry/Side.java ! javafx-ui-common/src/javafx/geometry/VPos.java ! javafx-ui-common/src/javafx/geometry/VerticalDirection.java ! javafx-ui-common/src/javafx/print/Collation.java ! javafx-ui-common/src/javafx/print/JobSettings.java ! javafx-ui-common/src/javafx/print/PageLayout.java ! javafx-ui-common/src/javafx/print/PageOrientation.java ! javafx-ui-common/src/javafx/print/PageRange.java ! javafx-ui-common/src/javafx/print/Paper.java ! javafx-ui-common/src/javafx/print/PaperSource.java ! javafx-ui-common/src/javafx/print/PrintColor.java ! javafx-ui-common/src/javafx/print/PrintQuality.java ! javafx-ui-common/src/javafx/print/PrintResolution.java ! javafx-ui-common/src/javafx/print/PrintSides.java ! javafx-ui-common/src/javafx/print/Printer.java ! javafx-ui-common/src/javafx/print/PrinterAttributes.java ! javafx-ui-common/src/javafx/print/PrinterJob.java ! javafx-ui-common/src/javafx/scene/AmbientLight.java ! javafx-ui-common/src/javafx/scene/CacheHint.java ! javafx-ui-common/src/javafx/scene/Camera.java ! javafx-ui-common/src/javafx/scene/Cursor.java ! javafx-ui-common/src/javafx/scene/DepthTest.java ! javafx-ui-common/src/javafx/scene/Group.java ! javafx-ui-common/src/javafx/scene/ImageCursor.java ! javafx-ui-common/src/javafx/scene/LightBase.java ! javafx-ui-common/src/javafx/scene/Node.java ! javafx-ui-common/src/javafx/scene/ParallelCamera.java ! javafx-ui-common/src/javafx/scene/Parent.java ! javafx-ui-common/src/javafx/scene/PerspectiveCamera.java ! javafx-ui-common/src/javafx/scene/PointLight.java ! javafx-ui-common/src/javafx/scene/Scene.java ! javafx-ui-common/src/javafx/scene/SnapshotParameters.java ! javafx-ui-common/src/javafx/scene/SnapshotResult.java ! javafx-ui-common/src/javafx/scene/SubScene.java ! javafx-ui-common/src/javafx/scene/canvas/Canvas.java ! javafx-ui-common/src/javafx/scene/canvas/GraphicsContext.java ! javafx-ui-common/src/javafx/scene/effect/Blend.java ! javafx-ui-common/src/javafx/scene/effect/BlendMode.java ! javafx-ui-common/src/javafx/scene/effect/Bloom.java ! javafx-ui-common/src/javafx/scene/effect/BlurType.java ! javafx-ui-common/src/javafx/scene/effect/BoxBlur.java ! javafx-ui-common/src/javafx/scene/effect/ColorAdjust.java ! javafx-ui-common/src/javafx/scene/effect/ColorInput.java ! javafx-ui-common/src/javafx/scene/effect/DisplacementMap.java ! javafx-ui-common/src/javafx/scene/effect/DropShadow.java ! javafx-ui-common/src/javafx/scene/effect/Effect.java ! javafx-ui-common/src/javafx/scene/effect/FloatMap.java ! javafx-ui-common/src/javafx/scene/effect/GaussianBlur.java ! javafx-ui-common/src/javafx/scene/effect/Glow.java ! javafx-ui-common/src/javafx/scene/effect/ImageInput.java ! javafx-ui-common/src/javafx/scene/effect/InnerShadow.java ! javafx-ui-common/src/javafx/scene/effect/Light.java ! javafx-ui-common/src/javafx/scene/effect/Lighting.java ! javafx-ui-common/src/javafx/scene/effect/MotionBlur.java ! javafx-ui-common/src/javafx/scene/effect/PerspectiveTransform.java ! javafx-ui-common/src/javafx/scene/effect/Reflection.java ! javafx-ui-common/src/javafx/scene/effect/SepiaTone.java ! javafx-ui-common/src/javafx/scene/effect/Shadow.java ! javafx-ui-common/src/javafx/scene/image/Image.java ! javafx-ui-common/src/javafx/scene/image/ImageView.java ! javafx-ui-common/src/javafx/scene/image/PixelFormat.java ! javafx-ui-common/src/javafx/scene/image/PixelReader.java ! javafx-ui-common/src/javafx/scene/image/PixelWriter.java ! javafx-ui-common/src/javafx/scene/image/WritableImage.java ! javafx-ui-common/src/javafx/scene/image/WritablePixelFormat.java ! javafx-ui-common/src/javafx/scene/input/Clipboard.java ! javafx-ui-common/src/javafx/scene/input/ClipboardContent.java ! javafx-ui-common/src/javafx/scene/input/ContextMenuEvent.java ! javafx-ui-common/src/javafx/scene/input/DataFormat.java ! javafx-ui-common/src/javafx/scene/input/DragEvent.java ! javafx-ui-common/src/javafx/scene/input/Dragboard.java ! javafx-ui-common/src/javafx/scene/input/GestureEvent.java ! javafx-ui-common/src/javafx/scene/input/InputEvent.java ! javafx-ui-common/src/javafx/scene/input/InputMethodEvent.java ! javafx-ui-common/src/javafx/scene/input/InputMethodHighlight.java ! javafx-ui-common/src/javafx/scene/input/InputMethodTextRun.java ! javafx-ui-common/src/javafx/scene/input/KeyCharacterCombination.java ! javafx-ui-common/src/javafx/scene/input/KeyCode.java ! javafx-ui-common/src/javafx/scene/input/KeyCodeCombination.java ! javafx-ui-common/src/javafx/scene/input/KeyCombination.java ! javafx-ui-common/src/javafx/scene/input/KeyEvent.java ! javafx-ui-common/src/javafx/scene/input/Mnemonic.java ! javafx-ui-common/src/javafx/scene/input/MouseButton.java ! javafx-ui-common/src/javafx/scene/input/MouseDragEvent.java ! javafx-ui-common/src/javafx/scene/input/MouseEvent.java ! javafx-ui-common/src/javafx/scene/input/PickResult.java ! javafx-ui-common/src/javafx/scene/input/RotateEvent.java ! javafx-ui-common/src/javafx/scene/input/ScrollEvent.java ! javafx-ui-common/src/javafx/scene/input/SwipeEvent.java ! javafx-ui-common/src/javafx/scene/input/TouchEvent.java ! javafx-ui-common/src/javafx/scene/input/TouchPoint.java ! javafx-ui-common/src/javafx/scene/input/TransferMode.java ! javafx-ui-common/src/javafx/scene/input/ZoomEvent.java ! javafx-ui-common/src/javafx/scene/layout/AnchorPane.java ! javafx-ui-common/src/javafx/scene/layout/Background.java ! javafx-ui-common/src/javafx/scene/layout/BackgroundFill.java ! javafx-ui-common/src/javafx/scene/layout/BackgroundImage.java ! javafx-ui-common/src/javafx/scene/layout/BackgroundPosition.java ! javafx-ui-common/src/javafx/scene/layout/BackgroundRepeat.java ! javafx-ui-common/src/javafx/scene/layout/BackgroundSize.java ! javafx-ui-common/src/javafx/scene/layout/Border.java ! javafx-ui-common/src/javafx/scene/layout/BorderImage.java ! javafx-ui-common/src/javafx/scene/layout/BorderPane.java ! javafx-ui-common/src/javafx/scene/layout/BorderRepeat.java ! javafx-ui-common/src/javafx/scene/layout/BorderStroke.java ! javafx-ui-common/src/javafx/scene/layout/BorderStrokeStyle.java ! javafx-ui-common/src/javafx/scene/layout/BorderWidths.java ! javafx-ui-common/src/javafx/scene/layout/ColumnConstraints.java ! javafx-ui-common/src/javafx/scene/layout/ConstraintsBase.java ! javafx-ui-common/src/javafx/scene/layout/CornerRadii.java ! javafx-ui-common/src/javafx/scene/layout/FlowPane.java ! javafx-ui-common/src/javafx/scene/layout/GridPane.java ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/Pane.java ! javafx-ui-common/src/javafx/scene/layout/Priority.java ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-common/src/javafx/scene/layout/RowConstraints.java ! javafx-ui-common/src/javafx/scene/layout/StackPane.java ! javafx-ui-common/src/javafx/scene/layout/TilePane.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java ! javafx-ui-common/src/javafx/scene/paint/Color.java ! javafx-ui-common/src/javafx/scene/paint/CycleMethod.java ! javafx-ui-common/src/javafx/scene/paint/ImagePattern.java ! javafx-ui-common/src/javafx/scene/paint/LinearGradient.java ! javafx-ui-common/src/javafx/scene/paint/Material.java ! javafx-ui-common/src/javafx/scene/paint/Paint.java ! javafx-ui-common/src/javafx/scene/paint/PhongMaterial.java ! javafx-ui-common/src/javafx/scene/paint/RadialGradient.java ! javafx-ui-common/src/javafx/scene/paint/Stop.java ! javafx-ui-common/src/javafx/scene/shape/Arc.java ! javafx-ui-common/src/javafx/scene/shape/ArcTo.java ! javafx-ui-common/src/javafx/scene/shape/ArcType.java ! javafx-ui-common/src/javafx/scene/shape/Box.java ! javafx-ui-common/src/javafx/scene/shape/Circle.java ! javafx-ui-common/src/javafx/scene/shape/ClosePath.java ! javafx-ui-common/src/javafx/scene/shape/CubicCurve.java ! javafx-ui-common/src/javafx/scene/shape/CubicCurveTo.java ! javafx-ui-common/src/javafx/scene/shape/CullFace.java ! javafx-ui-common/src/javafx/scene/shape/Cylinder.java ! javafx-ui-common/src/javafx/scene/shape/DrawMode.java ! javafx-ui-common/src/javafx/scene/shape/Ellipse.java ! javafx-ui-common/src/javafx/scene/shape/FillRule.java ! javafx-ui-common/src/javafx/scene/shape/HLineTo.java ! javafx-ui-common/src/javafx/scene/shape/Line.java ! javafx-ui-common/src/javafx/scene/shape/LineTo.java ! javafx-ui-common/src/javafx/scene/shape/Mesh.java ! javafx-ui-common/src/javafx/scene/shape/MeshView.java ! javafx-ui-common/src/javafx/scene/shape/MoveTo.java ! javafx-ui-common/src/javafx/scene/shape/Path.java ! javafx-ui-common/src/javafx/scene/shape/PathElement.java ! javafx-ui-common/src/javafx/scene/shape/Polygon.java ! javafx-ui-common/src/javafx/scene/shape/Polyline.java ! javafx-ui-common/src/javafx/scene/shape/QuadCurve.java ! javafx-ui-common/src/javafx/scene/shape/QuadCurveTo.java ! javafx-ui-common/src/javafx/scene/shape/Rectangle.java ! javafx-ui-common/src/javafx/scene/shape/SVGPath.java ! javafx-ui-common/src/javafx/scene/shape/Shape.java ! javafx-ui-common/src/javafx/scene/shape/Shape3D.java ! javafx-ui-common/src/javafx/scene/shape/Sphere.java ! javafx-ui-common/src/javafx/scene/shape/StrokeLineCap.java ! javafx-ui-common/src/javafx/scene/shape/StrokeLineJoin.java ! javafx-ui-common/src/javafx/scene/shape/StrokeType.java ! javafx-ui-common/src/javafx/scene/shape/TriangleMesh.java ! javafx-ui-common/src/javafx/scene/shape/VLineTo.java ! javafx-ui-common/src/javafx/scene/text/Font.java ! javafx-ui-common/src/javafx/scene/text/FontPosture.java ! javafx-ui-common/src/javafx/scene/text/FontSmoothingType.java ! javafx-ui-common/src/javafx/scene/text/FontWeight.java ! javafx-ui-common/src/javafx/scene/text/Text.java ! javafx-ui-common/src/javafx/scene/text/TextAlignment.java ! javafx-ui-common/src/javafx/scene/text/TextBoundsType.java ! javafx-ui-common/src/javafx/scene/text/TextFlow.java ! javafx-ui-common/src/javafx/scene/transform/Affine.java ! javafx-ui-common/src/javafx/scene/transform/MatrixType.java ! javafx-ui-common/src/javafx/scene/transform/NonInvertibleTransformException.java ! javafx-ui-common/src/javafx/scene/transform/Rotate.java ! javafx-ui-common/src/javafx/scene/transform/Scale.java ! javafx-ui-common/src/javafx/scene/transform/Shear.java ! javafx-ui-common/src/javafx/scene/transform/Transform.java ! javafx-ui-common/src/javafx/scene/transform/TransformChangedEvent.java ! javafx-ui-common/src/javafx/scene/transform/Translate.java ! javafx-ui-common/src/javafx/stage/FileChooser.java ! javafx-ui-common/src/javafx/stage/Modality.java ! javafx-ui-common/src/javafx/stage/Popup.java ! javafx-ui-common/src/javafx/stage/PopupWindow.java ! javafx-ui-common/src/javafx/stage/Screen.java ! javafx-ui-common/src/javafx/stage/Stage.java ! javafx-ui-common/src/javafx/stage/StageStyle.java ! javafx-ui-common/src/javafx/stage/Window.java ! javafx-ui-common/src/javafx/stage/WindowEvent.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/VirtualContainerBase.java ! javafx-ui-controls/src/javafx/scene/chart/Axis.java ! javafx-ui-controls/src/javafx/scene/chart/CategoryAxis.java ! javafx-ui-controls/src/javafx/scene/chart/NumberAxis.java ! javafx-ui-controls/src/javafx/scene/chart/ValueAxis.java ! javafx-ui-controls/src/javafx/scene/control/Accordion.java ! javafx-ui-controls/src/javafx/scene/control/Button.java ! javafx-ui-controls/src/javafx/scene/control/ButtonBase.java ! javafx-ui-controls/src/javafx/scene/control/Cell.java ! javafx-ui-controls/src/javafx/scene/control/CheckBox.java ! javafx-ui-controls/src/javafx/scene/control/CheckBoxTreeItem.java ! javafx-ui-controls/src/javafx/scene/control/CheckMenuItem.java ! javafx-ui-controls/src/javafx/scene/control/ChoiceBox.java ! javafx-ui-controls/src/javafx/scene/control/ColorPicker.java ! javafx-ui-controls/src/javafx/scene/control/ComboBox.java ! javafx-ui-controls/src/javafx/scene/control/ComboBoxBase.java ! javafx-ui-controls/src/javafx/scene/control/ContentDisplay.java ! javafx-ui-controls/src/javafx/scene/control/ContextMenu.java ! javafx-ui-controls/src/javafx/scene/control/Control.java ! javafx-ui-controls/src/javafx/scene/control/CustomMenuItem.java ! javafx-ui-controls/src/javafx/scene/control/DateCell.java ! javafx-ui-controls/src/javafx/scene/control/DatePicker.java ! javafx-ui-controls/src/javafx/scene/control/FocusModel.java ! javafx-ui-controls/src/javafx/scene/control/Hyperlink.java ! javafx-ui-controls/src/javafx/scene/control/IndexRange.java ! javafx-ui-controls/src/javafx/scene/control/IndexedCell.java ! javafx-ui-controls/src/javafx/scene/control/Label.java ! javafx-ui-controls/src/javafx/scene/control/Labeled.java ! javafx-ui-controls/src/javafx/scene/control/ListCell.java ! javafx-ui-controls/src/javafx/scene/control/ListView.java ! javafx-ui-controls/src/javafx/scene/control/Menu.java ! javafx-ui-controls/src/javafx/scene/control/MenuBar.java ! javafx-ui-controls/src/javafx/scene/control/MenuButton.java ! javafx-ui-controls/src/javafx/scene/control/MenuItem.java ! javafx-ui-controls/src/javafx/scene/control/MultipleSelectionModel.java ! javafx-ui-controls/src/javafx/scene/control/OverrunStyle.java ! javafx-ui-controls/src/javafx/scene/control/Pagination.java ! javafx-ui-controls/src/javafx/scene/control/PasswordField.java ! javafx-ui-controls/src/javafx/scene/control/PopupControl.java ! javafx-ui-controls/src/javafx/scene/control/ProgressBar.java ! javafx-ui-controls/src/javafx/scene/control/ProgressIndicator.java ! javafx-ui-controls/src/javafx/scene/control/RadioButton.java ! javafx-ui-controls/src/javafx/scene/control/RadioMenuItem.java ! javafx-ui-controls/src/javafx/scene/control/ResizeFeaturesBase.java ! javafx-ui-controls/src/javafx/scene/control/ScrollBar.java ! javafx-ui-controls/src/javafx/scene/control/ScrollPane.java ! javafx-ui-controls/src/javafx/scene/control/ScrollToEvent.java ! javafx-ui-controls/src/javafx/scene/control/SelectionMode.java ! javafx-ui-controls/src/javafx/scene/control/SelectionModel.java ! javafx-ui-controls/src/javafx/scene/control/Separator.java ! javafx-ui-controls/src/javafx/scene/control/SeparatorMenuItem.java ! javafx-ui-controls/src/javafx/scene/control/SingleSelectionModel.java ! javafx-ui-controls/src/javafx/scene/control/Skin.java ! javafx-ui-controls/src/javafx/scene/control/SkinBase.java ! javafx-ui-controls/src/javafx/scene/control/Skinnable.java ! javafx-ui-controls/src/javafx/scene/control/Slider.java ! javafx-ui-controls/src/javafx/scene/control/SortEvent.java ! javafx-ui-controls/src/javafx/scene/control/SplitMenuButton.java ! javafx-ui-controls/src/javafx/scene/control/SplitPane.java ! javafx-ui-controls/src/javafx/scene/control/Tab.java ! javafx-ui-controls/src/javafx/scene/control/TabPane.java ! javafx-ui-controls/src/javafx/scene/control/TableCell.java ! javafx-ui-controls/src/javafx/scene/control/TableColumn.java ! javafx-ui-controls/src/javafx/scene/control/TableColumnBase.java ! javafx-ui-controls/src/javafx/scene/control/TableFocusModel.java ! javafx-ui-controls/src/javafx/scene/control/TablePosition.java ! javafx-ui-controls/src/javafx/scene/control/TablePositionBase.java ! javafx-ui-controls/src/javafx/scene/control/TableRow.java ! javafx-ui-controls/src/javafx/scene/control/TableSelectionModel.java ! javafx-ui-controls/src/javafx/scene/control/TableView.java ! javafx-ui-controls/src/javafx/scene/control/TextArea.java ! javafx-ui-controls/src/javafx/scene/control/TextField.java ! javafx-ui-controls/src/javafx/scene/control/TextInputControl.java ! javafx-ui-controls/src/javafx/scene/control/TitledPane.java ! javafx-ui-controls/src/javafx/scene/control/Toggle.java ! javafx-ui-controls/src/javafx/scene/control/ToggleButton.java ! javafx-ui-controls/src/javafx/scene/control/ToggleGroup.java ! javafx-ui-controls/src/javafx/scene/control/ToolBar.java ! javafx-ui-controls/src/javafx/scene/control/Tooltip.java ! javafx-ui-controls/src/javafx/scene/control/TreeCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeItem.java ! javafx-ui-controls/src/javafx/scene/control/TreeSortMode.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableColumn.java ! javafx-ui-controls/src/javafx/scene/control/TreeTablePosition.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableRow.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableView.java ! javafx-ui-controls/src/javafx/scene/control/TreeView.java ! javafx-ui-controls/src/javafx/scene/control/cell/CheckBoxListCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/CheckBoxTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/CheckBoxTreeCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/CheckBoxTreeTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ChoiceBoxListCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ChoiceBoxTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ChoiceBoxTreeCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ChoiceBoxTreeTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ComboBoxListCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ComboBoxTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ComboBoxTreeCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ComboBoxTreeTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/MapValueFactory.java ! javafx-ui-controls/src/javafx/scene/control/cell/ProgressBarTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ProgressBarTreeTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/PropertyValueFactory.java ! javafx-ui-controls/src/javafx/scene/control/cell/TextFieldListCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/TextFieldTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/TextFieldTreeCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/TextFieldTreeTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/TreeItemPropertyValueFactory.java ! javafx-util-converter/src/javafx/util/converter/BigDecimalStringConverter.java ! javafx-util-converter/src/javafx/util/converter/BigIntegerStringConverter.java ! javafx-util-converter/src/javafx/util/converter/BooleanStringConverter.java ! javafx-util-converter/src/javafx/util/converter/ByteStringConverter.java ! javafx-util-converter/src/javafx/util/converter/CharacterStringConverter.java ! javafx-util-converter/src/javafx/util/converter/CurrencyStringConverter.java ! javafx-util-converter/src/javafx/util/converter/DateStringConverter.java ! javafx-util-converter/src/javafx/util/converter/DateTimeStringConverter.java ! javafx-util-converter/src/javafx/util/converter/DefaultStringConverter.java ! javafx-util-converter/src/javafx/util/converter/DoubleStringConverter.java ! javafx-util-converter/src/javafx/util/converter/FloatStringConverter.java ! javafx-util-converter/src/javafx/util/converter/FormatStringConverter.java ! javafx-util-converter/src/javafx/util/converter/IntegerStringConverter.java ! javafx-util-converter/src/javafx/util/converter/LongStringConverter.java ! javafx-util-converter/src/javafx/util/converter/NumberStringConverter.java ! javafx-util-converter/src/javafx/util/converter/PercentageStringConverter.java ! javafx-util-converter/src/javafx/util/converter/ShortStringConverter.java ! javafx-util-converter/src/javafx/util/converter/TimeStringConverter.java ! pisces/src/com/sun/openpisces/Helpers.java ! prism-j2d/src/com/sun/prism/j2d/paint/MultipleGradientPaint.java ! prism-j2d/src/com/sun/prism/j2d/paint/RadialGradientPaint.java ! webview/src/javafx/scene/web/HTMLEditor.java ! webview/src/javafx/scene/web/PopupFeatures.java ! webview/src/javafx/scene/web/PromptData.java ! webview/src/javafx/scene/web/WebEngine.java ! webview/src/javafx/scene/web/WebEvent.java ! webview/src/javafx/scene/web/WebHistory.java ! webview/src/javafx/scene/web/WebView.java Changeset: 6d1ecfa5fe7f Author: lepopov Date: 2013-05-31 15:04 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/6d1ecfa5fe7f Fixed RT-29371 Small scrollbars in HTML controls are unusable ! webview/src/com/sun/javafx/webkit/theme/ScrollBarThemeImpl.java Changeset: 59839bab2fba Author: kcr Date: 2013-05-31 05:33 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/59839bab2fba [TEST-ONLY] Disable intermittently failing test until RT-30173 is resolved ! javafx-concurrent/test/javafx/concurrent/ServiceLifecycleTest.java Changeset: f66302f166fa Author: David Hill Date: 2013-05-31 11:31 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/f66302f166fa RT-30628 raise owned windows when parent is raised ! glass/glass/src/com/sun/glass/ui/Window.java Changeset: e15e5f07eef3 Author: Richard Bair Date: 2013-05-31 14:31 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/e15e5f07eef3 [Apps] Added TranslatedRectangle sample which just translates a rectangle so we can start the hunt for jitter. + apps/performance/Animations/src/animations/TranslatedRectangle.java Changeset: 4b1badcc613c Author: Alexander Kouznetsov Date: 2013-05-31 15:21 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/4b1badcc613c Fix for RT-30418 Fix ObservableArray, ObservableIntegerArray and ObservableFloatArray javadocs. Added some tests to enforce statements from javadocs. ! javafx-beans/src/javafx/collections/ObservableArray.java ! javafx-beans/src/javafx/collections/ObservableFloatArray.java ! javafx-beans/src/javafx/collections/ObservableIntegerArray.java ! javafx-beans/test/javafx/collections/ObservableArrayTest.java Changeset: beec262373cc Author: Alexander Kouznetsov Date: 2013-05-31 17:21 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/beec262373cc 3DViewer: added 3D Optimizer + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 3d88225dbe0d Author: Yao Wang Date: 2013-05-31 19:11 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/3d88225dbe0d RT-30715 NPE when MeshView is added to scene with empty TriangleMesh created ! javafx-ui-common/src/javafx/scene/shape/TriangleMesh.java Changeset: cc621195ec3c Author: kcr Date: 2013-06-01 08:00 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/cc621195ec3c [TEST-ONLY] Disable failing unit tests until RT-30865 is fixed ! javafx-beans/test/javafx/collections/ObservableArrayTest.java Changeset: 582edfecdb04 Author: kcr Date: 2013-06-01 08:00 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/582edfecdb04 imported patch gradle-builders ! build.gradle ! generator.gradle ! settings.gradle Changeset: c51b01afa79b Author: Daniel Blaukopf Date: 2013-06-03 12:48 +0300 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/c51b01afa79b RT-30720 Filter out unneeded calls to glEnable(GL_SCISSOR_TEST) ! prism-es2-native/src/GLContext.c Changeset: 8af9dc9dae1c Author: Daniel Blaukopf Date: 2013-06-03 12:49 +0300 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/8af9dc9dae1c RT-30722 System property prism.glBufferSize sets color depth. Options are: 16, 24 or the default 32. ! prism-es2-native/src/eglfb/eglUtils.c ! prism-es2/src/com/sun/prism/es2/GLPixelFormat.java Changeset: fbf4a8a33a98 Author: Daniel Blaukopf Date: 2013-06-03 12:53 +0300 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/fbf4a8a33a98 Fix Lens X11 Container build ! glass/glass-lib-lens/src/wm/screen/x11ContainerScreen.c Changeset: 129d59d5a79b Author: Oldrich Maticka Date: 2013-06-03 13:34 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/129d59d5a79b Making variable static to avoid problems when statically linked with jdk8u mobile. ! javafx-iio-native/src/jpegloader.c Changeset: b0ab2280e3c7 Author: Martin Sladecek Date: 2013-06-03 13:51 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/b0ab2280e3c7 VBox optimizations ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java ! javafx-ui-common/test/unit/javafx/scene/layout/VBoxTest.java Changeset: 3402d5532f0a Author: Martin Sladecek Date: 2013-06-03 13:52 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/3402d5532f0a Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt Changeset: e7c0afb9923f Author: Alexander Kouznetsov Date: 2013-06-03 12:05 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/e7c0afb9923f ObservableArrayTest: Fixed RT-30865 ObservableArrayTest unit test fails ! javafx-beans/test/javafx/collections/ObservableArrayTest.java Changeset: 978d51d9d208 Author: Alexander Kouznetsov Date: 2013-06-03 12:13 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/978d51d9d208 Fixed occasional formatting change in the previous change: ObservableArrayTest: Fixed RT-30865 ObservableArrayTest unit test fails ! javafx-beans/test/javafx/collections/ObservableArrayTest.java Changeset: 8df94ef84244 Author: "Jasper Potts" Date: 2013-06-03 14:04 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/8df94ef84244 Added getters to SplineInterpolator internal class to be able to get data ! javafx-anim/src/com/sun/scenario/animation/SplineInterpolator.java Changeset: ebe36f2349d1 Author: "Jasper Potts" Date: 2013-06-03 14:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/ebe36f2349d1 Added Height Map to Normal Map conversion utility class and app to 3D Viewer. + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/height2normal/Height2NormalApp.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/height2normal/Height2NormalConverter.java Changeset: 2d119fc96ca6 Author: "Jasper Potts" Date: 2013-06-03 14:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/2d119fc96ca6 Added missing copyright header to DaeImporter ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/dae/DaeImporter.java Changeset: e591db661d96 Author: "Jasper Potts" Date: 2013-06-03 14:16 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/e591db661d96 Added Java source code exporter to 3D Viewer + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/javasource/JavaSourceExporter.java Changeset: a5b41e87883e Author: "Jasper Potts" Date: 2013-06-03 14:16 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/a5b41e87883e Made simple 3d viewer use a transparent window ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SimpleViewerApp.java Changeset: 5be62ada9a91 Author: "Jasper Potts" Date: 2013-06-03 16:32 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/5be62ada9a91 Fixed JavaScriptBridgeTest.java so that it builds. ! webview/test/javafx/scene/web/JavaScriptBridgeTest.java Changeset: 3a038dc4f103 Author: Alexander Kouznetsov Date: 2013-06-03 16:35 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/3a038dc4f103 3DViewer: Improved Optimizer to remove repeating KeyValues. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 1886efc4172c Author: Felipe Heidrich Date: 2013-06-03 10:57 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/1886efc4172c RT-30861: Add simple Font factory method for a default font of a different size ! javafx-ui-common/src/javafx/scene/text/Font.java Changeset: 6de310cbae85 Author: "Jasper Potts" Date: 2013-06-03 18:02 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/6de310cbae85 3D Viewer App: Cleanup of optimizer comments, fixed intellij files ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 228a62a674e3 Author: "Jasper Potts" Date: 2013-06-03 18:03 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/228a62a674e3 3D Viewer: Work on Java Source exporter ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/javasource/JavaSourceExporter.java Changeset: 3b3ae57ddd59 Author: "Jasper Potts" Date: 2013-06-03 18:27 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/3b3ae57ddd59 3D Viewer App: Added poly mesh choice checkbox ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Importer3D.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/main.fxml Changeset: 255a10ee1ed0 Author: Martin Sladecek Date: 2013-06-04 10:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/255a10ee1ed0 RT-30363 Region calls requestLayout too aggressively ! javafx-ui-common/src/javafx/scene/Group.java ! javafx-ui-common/src/javafx/scene/Node.java ! javafx-ui-common/src/javafx/scene/Parent.java ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-controls/test/com/sun/javafx/scene/control/skin/ScrollPaneSkinTest.java Changeset: aee1e049522e Author: Martin Sladecek Date: 2013-06-04 10:09 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/aee1e049522e Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt Changeset: cb35abdbc183 Author: Martin Soch Date: 2013-06-04 10:55 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/cb35abdbc183 SW pipeline: fix for SWTexture.update(..) methods (RT-30633) ! prism-sw/src/com/sun/prism/sw/SWArgbPreTexture.java ! prism-sw/src/com/sun/prism/sw/SWMaskTexture.java ! prism-sw/src/com/sun/prism/sw/SWTexture.java Changeset: 1dd4bb7090a2 Author: Anthony Petrov Date: 2013-06-04 14:05 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/1dd4bb7090a2 RT-30869: Win: Pen events in Windows should not be synthesized Reviewed-by: anthony, art Contributed-by: Danno Ferrin ! glass/glass-lib-windows/src/ViewContainer.cpp Changeset: eaf163a8953c Author: Alexander Zvegintsev Date: 2013-06-04 14:13 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/eaf163a8953c RT-30557 Gtk: Unable to showAndWait a Stage from within an UncaughtExceptionHandler in Linux ! glass/glass-lib-gtk/src/GlassApplication.cpp ! glass/glass-lib-gtk/src/GlassCommonDialogs.cpp ! glass/glass-lib-gtk/src/GlassCursor.cpp ! glass/glass-lib-gtk/src/GlassSystemClipboard.cpp ! glass/glass-lib-gtk/src/GlassTimer.cpp ! glass/glass-lib-gtk/src/GlassView.cpp ! glass/glass-lib-gtk/src/GlassWindow.cpp ! glass/glass-lib-gtk/src/glass_dnd.cpp ! glass/glass-lib-gtk/src/glass_general.cpp ! glass/glass-lib-gtk/src/glass_general.h ! glass/glass-lib-gtk/src/glass_window.cpp ! glass/glass-lib-gtk/src/glass_window.h ! glass/glass-lib-gtk/src/glass_window_ime.cpp Changeset: 31cc3ec01fdc Author: Martin Sladecek Date: 2013-06-04 14:03 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/31cc3ec01fdc RT-30740 GridPane oddness with row alignment set to VPos.BASELINE ! javafx-ui-common/src/javafx/scene/layout/GridPane.java ! javafx-ui-common/test/unit/javafx/scene/layout/GridPaneTest.java Changeset: d99a88d0b0f6 Author: Martin Sladecek Date: 2013-06-04 14:03 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/d99a88d0b0f6 Automated merge with file:///home/martin/work/jfx-80-sync/rt Changeset: 61ec5d95c144 Author: Martin Sladecek Date: 2013-06-04 14:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/61ec5d95c144 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt Changeset: 8720c6729e2c Author: kcr Date: 2013-06-04 08:28 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/8720c6729e2c Backed out changeset 5be62ada9a91 to fix unit test failure Changeset: e096b075097d Author: kcr Date: 2013-06-04 08:32 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/e096b075097d Backed out changeset 5be62ada9a91 to fix unit test failure ! webview/test/javafx/scene/web/JavaScriptBridgeTest.java Changeset: ea108dc8da59 Author: jgodinez Date: 2013-06-04 09:43 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/ea108dc8da59 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt - javafx-builders/test/unit/com/sun/javafx/test/PropertiesTestBase.java - javafx-builders/test/unit/com/sun/javafx/test/PropertyReference.java - javafx-builders/test/unit/com/sun/javafx/test/binding/ReflectionHelper.java - javafx-builders/test/unit/javafx/scene/Node_properties_Test.java - javafx-builders/test/unit/javafx/scene/Scene_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Blend_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Bloom_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/BoxBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorAdjust_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DisplacementMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DistantLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DropShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/FloatMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/GaussianBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Glow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ImageInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/InnerShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Lighting_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/MotionBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PerspectiveTransform_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PointLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Reflection_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SepiaTone_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Shadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SpotLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/ArcTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Arc_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Circle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Ellipse_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/HLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/LineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Line_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/MoveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Path_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Rectangle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/SVGPath_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Shape_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/VLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/transform/Transform_properties_Test.java Changeset: 02aaa6e6a7e0 Author: leifs Date: 2013-05-29 10:09 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/02aaa6e6a7e0 RT-30233: [DatePicker] Handle incompatible change of method name in DateTimeFormatter. (Requires JDK8 b91). ! build.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/DatePickerContent.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/DatePickerHijrahContent.java ! javafx-ui-controls/src/javafx/scene/control/DatePicker.java Changeset: 7fb8809a830b Author: Seeon Birger Date: 2013-05-29 12:34 +0300 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/7fb8809a830b Dual commit (ea2) - Fix RT-30627 - Virtual Keyboard moves to the background after switching to a another window ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/FXVKSkin.java Changeset: eeaaed36a3d8 Author: Richard Bair Date: 2013-05-29 10:43 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/eeaaed36a3d8 Fixes to build with IntelliJ - SimpleViewerApp and FXVKSkin both needed a "final" keyword added in order to build on 7 (and we're trying to use as little dependence on 8 as possible to support the communities JDK 7 backport of FX 8) - Modena's SamplePage needed to have replacements for some builders and changes in how other builders were used - A bunch of duplicate test classes were in javafx-builders which made IDEA very unhappy. ! apps/experiments/3DViewer/3D Viewer.iml ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SimpleViewerApp.java ! apps/experiments/Modena/Modena.iml ! apps/experiments/Modena/src/modena/SamplePage.java ! apps/samples/Ensemble8/Ensemble8.iml ! javafx-builders/test/unit/com/sun/javafx/test/BuilderProxy.java - javafx-builders/test/unit/com/sun/javafx/test/PropertiesTestBase.java - javafx-builders/test/unit/com/sun/javafx/test/PropertyReference.java - javafx-builders/test/unit/com/sun/javafx/test/binding/ReflectionHelper.java - javafx-builders/test/unit/javafx/scene/Node_properties_Test.java - javafx-builders/test/unit/javafx/scene/Scene_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Blend_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Bloom_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/BoxBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorAdjust_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DisplacementMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DistantLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DropShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/FloatMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/GaussianBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Glow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ImageInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/InnerShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Lighting_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/MotionBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PerspectiveTransform_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PointLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Reflection_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SepiaTone_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Shadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SpotLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/ArcTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Arc_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Circle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Ellipse_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/HLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/LineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Line_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/MoveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Path_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Rectangle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/SVGPath_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Shape_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/VLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/transform/Transform_properties_Test.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/FXVKSkin.java Changeset: a1348a50b9ef Author: David Grieve Date: 2013-05-29 16:37 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/a1348a50b9ef Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt - javafx-builders/test/unit/com/sun/javafx/test/PropertiesTestBase.java - javafx-builders/test/unit/com/sun/javafx/test/PropertyReference.java - javafx-builders/test/unit/com/sun/javafx/test/binding/ReflectionHelper.java - javafx-builders/test/unit/javafx/scene/Node_properties_Test.java - javafx-builders/test/unit/javafx/scene/Scene_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Blend_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Bloom_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/BoxBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorAdjust_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DisplacementMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DistantLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DropShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/FloatMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/GaussianBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Glow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ImageInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/InnerShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Lighting_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/MotionBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PerspectiveTransform_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PointLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Reflection_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SepiaTone_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Shadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SpotLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/ArcTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Arc_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Circle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Ellipse_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/HLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/LineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Line_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/MoveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Path_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Rectangle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/SVGPath_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Shape_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/VLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/transform/Transform_properties_Test.java Changeset: e0145393ceaa Author: leifs Date: 2013-05-30 10:52 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/e0145393ceaa RT-30547: DatePicker doesn't allow to omit leading zero ! javafx-ui-controls/src/javafx/scene/control/DatePicker.java Changeset: a92e5afc944b Author: jgiles Date: 2013-05-31 10:57 +1200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/a92e5afc944b RT-30825: Can't Reorder Columns in Table ! javafx-ui-controls/src/javafx/scene/control/TableColumnBase.java ! javafx-ui-controls/test/javafx/scene/control/TableColumnTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeTableColumnTest.java Changeset: 30e3bcb6c736 Author: jgiles Date: 2013-05-31 11:44 +1200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/30e3bcb6c736 RT-30398: CheckBox cell factory renders check boxes in empty cells ! javafx-ui-controls/src/javafx/scene/control/ListCell.java ! javafx-ui-controls/src/javafx/scene/control/TableCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableCell.java ! javafx-ui-controls/test/com/sun/javafx/scene/control/infrastructure/VirtualFlowTestUtils.java ! javafx-ui-controls/test/javafx/scene/control/ListViewTest.java ! javafx-ui-controls/test/javafx/scene/control/TableViewTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeTableViewTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeViewTest.java Changeset: 7a327e81151a Author: jgiles Date: 2013-05-31 12:45 +1200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/7a327e81151a Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt Changeset: 0e8bd17417d3 Author: David Grieve Date: 2013-05-14 12:48 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/0e8bd17417d3 RT-30381: change selector matching to return list of matching selectors rather than the rules of matching selectors ! javafx-ui-common/src/com/sun/javafx/css/CascadingStyle.java ! javafx-ui-common/src/com/sun/javafx/css/Match.java ! javafx-ui-common/src/com/sun/javafx/css/Rule.java ! javafx-ui-common/src/com/sun/javafx/css/Selector.java ! javafx-ui-common/src/com/sun/javafx/css/SelectorPartitioning.java ! javafx-ui-common/src/com/sun/javafx/css/SimpleSelector.java ! javafx-ui-common/src/com/sun/javafx/css/Style.java ! javafx-ui-common/src/com/sun/javafx/css/StyleCache.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/src/com/sun/javafx/css/Stylesheet.java ! javafx-ui-common/src/javafx/scene/doc-files/cssref.html ! javafx-ui-common/test/unit/com/sun/javafx/css/SelectorPartitioningTest.java Changeset: 2141df51b9c5 Author: Richard Bair Date: 2013-05-14 15:42 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/2141df51b9c5 RT-30391: CSSStyleHelper is inflating many styleable properties ! javafx-ui-common/src/javafx/scene/CssStyleHelper.java Changeset: b0690df037ca Author: David Grieve Date: 2013-05-14 15:44 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/b0690df037ca lazy deserialization of css declarations ! javafx-ui-common/src/com/sun/javafx/css/Rule.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/test/unit/com/sun/javafx/css/Node_cssStyleMap_Test.java ! javafx-ui-common/test/unit/com/sun/javafx/css/SelectorPartitioningTest.java Changeset: e6ec5624c645 Author: David Grieve Date: 2013-05-14 16:38 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/e6ec5624c645 RT-30381: only get matches by looking at matching selectors rather than matching on rule. Matching node to rule results in looking at every selector on the rule and we already know which selectors match. ! javafx-ui-common/src/com/sun/javafx/css/CompoundSelector.java ! javafx-ui-common/src/com/sun/javafx/css/Selector.java ! javafx-ui-common/src/com/sun/javafx/css/SimpleSelector.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java Changeset: 3f4e67f06aad Author: David Grieve Date: 2013-05-14 17:38 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/3f4e67f06aad Fix compile error in Rule.java ! javafx-ui-common/src/com/sun/javafx/css/Rule.java Changeset: 9574c86c4067 Author: David Grieve Date: 2013-05-14 18:17 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/9574c86c4067 [UNIT TEST] fix compile error in RuleTest and CssMetaDataTest. ! javafx-ui-common/test/unit/com/sun/javafx/css/CssMetaDataTest.java ! javafx-ui-common/test/unit/com/sun/javafx/css/RuleTest.java Changeset: ca11ca2535b2 Author: jgiles Date: 2013-05-15 13:45 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/ca11ca2535b2 Lazily instantiate CSS Rule declarations and selectors ObservableLists ! javafx-ui-common/src/com/sun/javafx/css/Rule.java Changeset: a45e03588887 Author: David Grieve Date: 2013-05-30 12:13 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/a45e03588887 RT-30818: avoid creating ObservableList in Rule (css performance tweak) ! javafx-ui-common/src/com/sun/javafx/css/Rule.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/src/javafx/scene/CssStyleHelper.java ! javafx-ui-common/test/unit/com/sun/javafx/css/Node_cssStyleMap_Test.java ! javafx-ui-common/test/unit/com/sun/javafx/css/RuleTest.java ! javafx-ui-common/test/unit/com/sun/javafx/css/SelectorPartitioningTest.java ! javafx-ui-common/test/unit/com/sun/javafx/css/StyleTest.java ! javafx-ui-common/test/unit/com/sun/javafx/css/TypeTest.java ! javafx-ui-common/test/unit/com/sun/javafx/css/parser/CSSParserTest.java Changeset: 46cd0e8ca5ae Author: David Grieve Date: 2013-05-31 13:50 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/46cd0e8ca5ae branch merge Changeset: 3450a1dac4a9 Author: David Grieve Date: 2013-05-31 17:15 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/3450a1dac4a9 RT-30817: sorting cascading styles was causing expansion of declarations. Lazily create and sort cascading style list. ! javafx-ui-common/src/com/sun/javafx/css/CascadingStyle.java ! javafx-ui-common/src/com/sun/javafx/css/CompoundSelector.java ! javafx-ui-common/src/com/sun/javafx/css/Selector.java ! javafx-ui-common/src/com/sun/javafx/css/SelectorPartitioning.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/src/com/sun/javafx/css/StyleMap.java ! javafx-ui-common/src/javafx/scene/CssStyleHelper.java ! javafx-ui-common/src/javafx/scene/doc-files/cssref.html ! javafx-ui-common/test/unit/com/sun/javafx/css/SelectorPartitioningTest.java Changeset: 2f5985406164 Author: leifs Date: 2013-06-01 17:39 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/2f5985406164 RT-28346: TextArea - Pressing ENTER/RETURN does not move cursor to new line ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TextAreaSkin.java Changeset: 374145c4e41e Author: jgiles Date: 2013-06-03 17:18 +1200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/374145c4e41e Unit test and partial fix for RT-29849: [TreeTableView] on edit start is fired many times ! javafx-ui-controls/src/javafx/scene/control/TableCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableCell.java ! javafx-ui-controls/test/com/sun/javafx/scene/control/infrastructure/VirtualFlowTestUtils.java ! javafx-ui-controls/test/javafx/scene/control/CellTest.java ! javafx-ui-controls/test/javafx/scene/control/ListViewKeyInputTest.java ! javafx-ui-controls/test/javafx/scene/control/TableViewKeyInputTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeTableViewKeyInputTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeViewKeyInputTest.java Changeset: b7cc945d9169 Author: jgiles Date: 2013-06-03 17:19 +1200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/b7cc945d9169 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt Changeset: 5a874c54b898 Author: raginip Date: 2013-06-03 16:09 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/5a874c54b898 RT-15797 : Accordion control doesn't size to scene correctly ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TitledPaneSkin.java Changeset: 93863dfb5745 Author: leifs Date: 2013-06-03 16:18 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/93863dfb5745 RT-27637: [TextField] Mouse click makes the caret disappear. ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TextFieldSkin.java Changeset: 1ee27e0ef269 Author: psomashe Date: 2013-06-04 00:16 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/1ee27e0ef269 RT-24105 TabPane renders content of all tabs even only one is active.Optimization loads only the initially selected tabs and others get loaded on selection. To load content of other tabs lazily - -Djavafx.tabpane.loadTabsLazily property can be used. To load the content of alll tabs with out any optimization, -Djavafx.tabpane.maintainfullscenegraph property can be used. ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: d59635859529 Author: psomashe Date: 2013-06-04 16:02 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/d59635859529 fix broken TabPaneTest ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: a2978f7aae56 Author: psomashe Date: 2013-06-04 23:14 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/a2978f7aae56 revert computePrefW/H of TabPaneSkin to return W/H based on content instead of a constant. ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: 2d44c792b77d Author: psomashe Date: 2013-06-05 00:01 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/2d44c792b77d Backed out changeset a2978f7aae56 ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: a6e13c635c15 Author: psomashe Date: 2013-06-05 00:06 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/a6e13c635c15 reverting changes to TabPaneSkin ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: 1e300104bbc6 Author: psomashe Date: 2013-06-05 00:06 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/1e300104bbc6 reverting changes to TabPaneSkin ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: 40836a4b4d85 Author: David Grieve Date: 2013-06-05 08:08 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/40836a4b4d85 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt ! build.properties ! javafx-ui-controls/src/javafx/scene/control/DatePicker.java ! javafx-ui-controls/src/javafx/scene/control/ListCell.java ! javafx-ui-controls/src/javafx/scene/control/TableCell.java ! javafx-ui-controls/src/javafx/scene/control/TableColumnBase.java ! javafx-ui-controls/src/javafx/scene/control/TreeCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableCell.java Changeset: 572b1ec2e971 Author: hudson Date: 2013-06-06 19:44 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/572b1ec2e971 Added tag 8.0-b93 for changeset 40836a4b4d85 ! .hgtags From martin.sladecek at oracle.com Thu Jun 6 23:32:18 2013 From: martin.sladecek at oracle.com (Martin Sladecek) Date: Fri, 07 Jun 2013 08:32:18 +0200 Subject: ObservableValue Stacktrace In-Reply-To: <513422CC-A471-4493-A4BE-444335D88F60@oracle.com> References: <51AF93CE.1000400@xs4all.nl> <51B03B8E.2030208@oracle.com> <51B04E02.7000107@xs4all.nl> <51B0714D.2060501@oracle.com> <51B0B95C.30404@oracle.com> <513422CC-A471-4493-A4BE-444335D88F60@oracle.com> Message-ID: <51B17E72.40705@oracle.com> Just checked and it's actually going through the logger. I can change that from "warning" level to "info", so it wouldn't normally show up. -Martin On 06/06/2013 07:43 PM, Richard Bair wrote: > I don't think we ought to print to stdout or stderr in any case in the platform. A logger is a better idea. But really I think it is unlikely that this particular message will be that useful (it will be unhelpful in just as many cases). It is not uncommon for a chain to have a null in it at some point, and the presence of the message will just make people think something is wrong when in fact it isn't. > > Richard > > On Jun 6, 2013, at 9:31 AM, Kevin Rushforth wrote: > >> Perhaps using the logging system would be a better choice in the case than printing to stderr? >> >> -- Kevin >> >> >> Martin Sladecek wrote: >>> On 06/06/2013 10:53 AM, John Hendrikx wrote: >>>> Hm, ok -- it is correct that it doesn't fail, the code runs without any problem and everything works as expected. >>>> >>>> But, what would be the way to avoid these messages in my log then? Something like: >>>> >>>> Bindings.select( Bindings.when(dataProperty().isNull()).then( ??? ).otherwise(dataProperty()), "castings") ); >>>> >>>> ?? >>>> >>>> I'd prefer to just turn these warnings off unless there is a really good reason to have them (ie, they indicate a logic error or other bug, something I can resolve...) >>> This might indicate a logic error in many cases, esp. when the property you bind is a primitive type. When the select fails in the middle of computation, the only it can do is to set the property to default value (which is 0). If the developer >>> didn't expect this, it would be quite hard to find the actual cause of the zero. If you really expect nulls along the way, it's much cleaner to handle this explicitly as you do in the code above. >>> >>>> In my case the dataProperty() is often bound to the selection of a ListView -- if you have something valid selected, then a Detail Pane is filled in with information about the selected item. When nothing is selected (ie, it is null), then the Detail Pane should remain empty... I donot want to have to remove/recreate these bindings every time some property becomes null. >>>> >>>> Also, it seems rather wierd that JavaFX will complain about nulls in the first part of the Bindings.select(), but will happily traverse the graph (with or without nulls) for the other parts. >>> This is a bug then, it should print the warning in any part of the select expression. >>> >>> -Martin From hang.vo at oracle.com Thu Jun 6 23:49:43 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Fri, 07 Jun 2013 06:49:43 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130607065015.737F148067@hg.openjdk.java.net> Changeset: 53248a630305 Author: Martin Sladecek Date: 2013-06-07 08:36 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/53248a630305 Unified reports of null reference in SelectBinding on "info" level. ! javafx-beans/src/com/sun/javafx/binding/SelectBinding.java Changeset: b4fa1e830511 Author: Martin Sladecek Date: 2013-06-07 08:36 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/b4fa1e830511 Automated merge with file:///home/martin/work/jfx-80-sync/rt From milan.kubec at oracle.com Fri Jun 7 01:49:12 2013 From: milan.kubec at oracle.com (Milan Kubec) Date: Fri, 07 Jun 2013 10:49:12 +0200 Subject: FXML version number Message-ID: <51B19E88.4080203@oracle.com> Hello, I have implemented simple versioning for FXML documents in FXMLLoader, but without support in tools it won't be very useful. I have agreed with NetBeans and Scene Builder folks that they will include support for versioning too. Support means that they will produce document with two XML namespaces - one defines version of fx: prefixed elements and attributes (xmlns:fx; it's already there, just the version is appended) and the other of actual JavaFX API used to produce document (xmlns; default, no prefix). The first will be checked, because wrong version can cause failure. The latter is only informational, no strict checking of version is possible, but tools can suggest to upgrade runtime, translate document etc. JavaFX API version is stored in System Properties as "javafx.version". The open question is still where and how to store fxml version in code. I think that we could have also property for this purpose, e.g. "fxml.version" in System Properties. So far it's part of FXMLLoader API, which is probably not very fortunate. What do you think? Issue details: https://javafx-jira.kenai.com/browse/RT-28599 Milan From hang.vo at oracle.com Fri Jun 7 04:34:28 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Fri, 07 Jun 2013 11:34:28 +0000 Subject: hg: openjfx/8/graphics/rt: 3DViewer Optimizer: Fixed nasty sinking text bug. Added DISCRETE_ONLY mode. Message-ID: <20130607113503.E2DE548098@hg.openjdk.java.net> Changeset: b91199dd018a Author: Alexander Kouznetsov Date: 2013-06-07 04:25 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/b91199dd018a 3DViewer Optimizer: Fixed nasty sinking text bug. Added DISCRETE_ONLY mode. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java From herve.girod at gmail.com Fri Jun 7 05:34:09 2013 From: herve.girod at gmail.com (=?utf-8?Q?Herv=C3=A9_Girod?=) Date: Fri, 7 Jun 2013 14:34:09 +0200 Subject: Dumping the rendering process in JavaFX In-Reply-To: <405128F4-BF1D-4C2E-99B3-B82DC1AADC3E@oracle.com> References: <405128F4-BF1D-4C2E-99B3-B82DC1AADC3E@oracle.com> Message-ID: <32702500-1750-407D-AD68-7ED8B8F2B601@gmail.com> Hello, We are porting a swing application in JavaFX, and we had various unit tests where we created for testing purposes a dummy Graphics2D which stored the list of its shapes and transformations. This allowed us to perform unit tests for the rendering of some of our graphic components or Look and Feels. We tried to do the same thing in JavaFX by using the swing -JavaFX bridge and forcing a j2d prism rendering. It works, but JavaFX nodes are rendered as images, so it's not the right way to do it ;) Is there a way to dump some kind of list of graphic orders in the current state of JavaFX (2.2 or 8) ? Herv? Sent from my iPhone From tom.schindl at bestsolution.at Fri Jun 7 05:41:22 2013 From: tom.schindl at bestsolution.at (Tom Schindl) Date: Fri, 07 Jun 2013 14:41:22 +0200 Subject: Dumping the rendering process in JavaFX In-Reply-To: <32702500-1750-407D-AD68-7ED8B8F2B601@gmail.com> References: <405128F4-BF1D-4C2E-99B3-B82DC1AADC3E@oracle.com> <32702500-1750-407D-AD68-7ED8B8F2B601@gmail.com> Message-ID: <51B1D4F2.5000800@bestsolution.at> I've started working on a JavaFX-Scene to FXML dumper but its not yet really useable. Tom On 07.06.13 14:34, Herv? Girod wrote: > Hello, > > We are porting a swing application in JavaFX, and we had various unit tests where we created for testing purposes a dummy Graphics2D which stored the list of its shapes and transformations. > > This allowed us to perform unit tests for the rendering of some of our graphic components or Look and Feels. > > We tried to do the same thing in JavaFX by using the swing -JavaFX bridge and forcing a j2d prism rendering. It works, but JavaFX nodes are rendered as images, so it's not the right way to do it ;) > > Is there a way to dump some kind of list of graphic orders in the current state of JavaFX (2.2 or 8) ? > > Herv? > > Sent from my iPhone > From hang.vo at oracle.com Fri Jun 7 05:48:27 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Fri, 07 Jun 2013 12:48:27 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30983: Quantum cleanup: remove ToolkitInterface Message-ID: <20130607124911.1D82B48099@hg.openjdk.java.net> Changeset: 148e27736eb6 Author: Artem Ananiev Date: 2013-06-07 16:30 +0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/148e27736eb6 RT-30983: Quantum cleanup: remove ToolkitInterface Reviewed-by: Kevin Rushforth, Steve Northover + javafx-ui-common/src/com/sun/javafx/tk/CompletionListener.java ! javafx-ui-common/src/com/sun/javafx/tk/DummyToolkit.java + javafx-ui-common/src/com/sun/javafx/tk/RenderJob.java ! javafx-ui-common/src/com/sun/javafx/tk/Toolkit.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedScene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PaintCollector.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PaintRenderJob.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumRenderer.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumToolkit.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/ViewScene.java - prism-common/src/com/sun/prism/render/CompletionListener.java - prism-common/src/com/sun/prism/render/RenderJob.java - prism-common/src/com/sun/prism/render/ToolkitInterface.java ! test-stub-toolkit/src/com/sun/javafx/pgstub/StubToolkit.java ! webview/src/com/sun/javafx/webkit/prism/PrismInvoker.java From alexandre.iline at oracle.com Fri Jun 7 06:55:16 2013 From: alexandre.iline at oracle.com (Alexandre (Shura) Iline) Date: Fri, 07 Jun 2013 17:55:16 +0400 Subject: Fwd: Dumping the rendering process in JavaFX In-Reply-To: <3B537FE7-3111-4533-9772-B909CFAD68CA@oracle.com> References: <32702500-1750-407D-AD68-7ED8B8F2B601@gmail.com> <3B537FE7-3111-4533-9772-B909CFAD68CA@oracle.com> Message-ID: <51B1E644.3030103@oracle.com> Hi. FWIW, with JemmyFX you can do: new SceneDock().asParent().lookup().dump(System.out); What you get is (full output is attached): | +-javafx.scene.layout.VBox <- javafx.scene.layout.Pane <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | isFocused=false ... | | getLayoutX=0.0 | | +-javafx.scene.layout.GridPane <- javafx.scene.layout.Pane <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | | isFocused=false | | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:48.0, depth:0.0, maxX:93.0, maxY:48.0, maxZ:0.0] ... | | | getStyleClass= | | | getLayoutX=0.0 | | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node ... | | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node ... ... See more on JemmyFX lookup: http://hg.openjdk.java.net/openjfx/8/master/tests/raw-file/tip/tools/Jemmy/JemmyFX/samples/org/jemmy/samples/index.html Shura On 06/07/2013 05:42 PM, Richard Bair wrote: > Begin forwarded message: > >> *From:* Herv? Girod > >> *Date:* June 7, 2013, 5:34:09 AM PDT >> *To:* "openjfx-dev at openjdk.java.net >> List" >> > >> *Subject:* *Dumping the rendering process in JavaFX* >> >> Hello, >> >> We are porting a swing application in JavaFX, and we had various unit >> tests where we created for testing purposes a dummy Graphics2D which >> stored the list of its shapes and transformations. >> >> This allowed us to perform unit tests for the rendering of some of our >> graphic components or Look and Feels. >> >> We tried to do the same thing in JavaFX by using the swing -JavaFX >> bridge and forcing a j2d prism rendering. It works, but JavaFX nodes >> are rendered as images, so it's not the right way to do it ;) >> >> Is there a way to dump some kind of list of graphic orders in the >> current state of JavaFX (2.2 or 8) ? >> >> Herv? >> >> Sent from my iPhone -------------- next part -------------- | +-javafx.scene.layout.VBox <- javafx.scene.layout.Pane <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | isFocused=false | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:64.0, depth:0.0, maxX:93.0, maxY:64.0, maxZ:0.0] | | isPressed=false | | getScaleY=1.0 | | getScaleX=1.0 | | isHover=true | | isManaged=true | | getScaleZ=1.0 | | getClip=null | | getRotate=0.0 | | getTransforms=[] | | getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:64.0, depth:0.0, maxX:93.0, maxY:64.0, maxZ:0.0] | | isVisible=true | | hasProperties=false | | isCache=false | | getEffect=null | | getCacheHint=DEFAULT | | wrapper.class=class org.jemmy.fx.NodeWrap | | getOpacity=1.0 | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | getId=null | | getContentBias=null | | control=VBox at 7110d0b1[styleClass=root] | | getParent=null | | getStyle= | | getProperties={} | | isResizable=true | | control.class=class javafx.scene.layout.VBox | | isDisable=false | | isDisabled=false | | getTranslateZ=0.0 | | bounds=org.jemmy.Rectangle[x=913,y=371,width=93,height=64] | | getUserData=null | | getTranslateX=0.0 | | getTranslateY=0.0 | | getCursor=null | | clickPoint=org.jemmy.Point[x=46,y=32] | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | isPickOnBounds=true | | getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:64.0, depth:0.0, maxX:93.0, maxY:64.0, maxZ:0.0] | | getBaselineOffset=13.0 | | isMouseTransparent=false | | getLayoutY=0.0 | | getStyleClass=root | | getLayoutX=0.0 | | +-javafx.scene.layout.GridPane <- javafx.scene.layout.Pane <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | | isFocused=false | | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:48.0, depth:0.0, maxX:93.0, maxY:48.0, maxZ:0.0] | | | isPressed=false | | | getScaleY=1.0 | | | getScaleX=1.0 | | | isHover=true | | | isManaged=true | | | getScaleZ=1.0 | | | getClip=null | | | getRotate=0.0 | | | getTransforms=[] | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:48.0, depth:0.0, maxX:93.0, maxY:48.0, maxZ:0.0] | | | isVisible=true | | | hasProperties=false | | | isCache=false | | | getEffect=null | | | getCacheHint=DEFAULT | | | wrapper.class=class org.jemmy.fx.NodeWrap | | | getOpacity=1.0 | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | getId=null | | | getContentBias=null | | | control=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT | | | getParent=VBox at 7110d0b1[styleClass=root] | | | getStyle= | | | getProperties={} | | | isResizable=true | | | control.class=class javafx.scene.layout.GridPane | | | isDisable=false | | | isDisabled=false | | | getTranslateZ=0.0 | | | bounds=org.jemmy.Rectangle[x=913,y=371,width=93,height=48] | | | getUserData=null | | | getTranslateX=0.0 | | | getTranslateY=0.0 | | | getCursor=null | | | clickPoint=org.jemmy.Point[x=46,y=24] | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | isPickOnBounds=true | | | getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:48.0, depth:0.0, maxX:93.0, maxY:48.0, maxZ:0.0] | | | getBaselineOffset=13.0 | | | isMouseTransparent=false | | | getLayoutY=0.0 | | | getStyleClass= | | | getLayoutX=0.0 | | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | | | isFocused=false | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isPressed=false | | | | getScaleY=1.0 | | | | getScaleX=1.0 | | | | isHover=false | | | | isManaged=true | | | | getScaleZ=1.0 | | | | getClip=null | | | | getRotate=0.0 | | | | getTransforms=[] | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isVisible=true | | | | hasProperties=true | | | | isCache=false | | | | getEffect=null | | | | getCacheHint=DEFAULT | | | | wrapper.class=class org.jemmy.fx.control.TextControlWrap | | | | getOpacity=1.0 | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | getId=lbl_00 | | | | getContentBias=null | | | | control=Label[id=lbl_00, styleClass=label] | | | | text=(0,0) | | | | getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT | | | | getStyle= | | | | getProperties={gridpane-column=0, gridpane-row=0} | | | | isResizable=true | | | | control.class=class javafx.scene.control.Label | | | | isDisable=false | | | | getTooltip=null | | | | isDisabled=false | | | | getTranslateZ=0.0 | | | | bounds=org.jemmy.Rectangle[x=913,y=371,width=31,height=16] | | | | getUserData=null | | | | getTranslateX=0.0 | | | | getTranslateY=0.0 | | | | getCursor=null | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | isPickOnBounds=true | | | | getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | getBaselineOffset=13.0 | | | | isMouseTransparent=false | | | | getLayoutY=0.0 | | | | getStyleClass=label | | | | getLayoutX=0.0 | | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node | | | | | isFocused=false | | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isPressed=false | | | | | getScaleY=1.0 | | | | | getScaleX=1.0 | | | | | isHover=false | | | | | isManaged=true | | | | | getScaleZ=1.0 | | | | | getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff] | | | | | getRotate=0.0 | | | | | getTransforms=[] | | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isVisible=true | | | | | hasProperties=false | | | | | isCache=false | | | | | getEffect=null | | | | | getCacheHint=DEFAULT | | | | | wrapper.class=class org.jemmy.fx.TextWrap | | | | | getOpacity=1.0 | | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | | getId=null | | | | | getContentBias=null | | | | | control=Text[text="(0,0)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff] | | | | | text=(0,0) | | | | | getParent=Label[id=lbl_00, styleClass=label] | | | | | getStyle= | | | | | getProperties={} | | | | | isResizable=false | | | | | control.class=class com.sun.javafx.scene.control.skin.LabeledText | | | | | isDisable=false | | | | | isDisabled=false | | | | | getTranslateZ=0.0 | | | | | bounds=org.jemmy.Rectangle[x=913,y=371,width=31,height=16] | | | | | getUserData=null | | | | | getTranslateX=0.0 | | | | | getTranslateY=0.0 | | | | | getCursor=null | | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | | isPickOnBounds=true | | | | | getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0] | | | | | getBaselineOffset=13.0 | | | | | isMouseTransparent=false | | | | | getLayoutY=13.0 | | | | | getStyleClass=text | | | | | getLayoutX=0.0 | | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | | | isFocused=false | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isPressed=false | | | | getScaleY=1.0 | | | | getScaleX=1.0 | | | | isHover=false | | | | isManaged=true | | | | getScaleZ=1.0 | | | | getClip=null | | | | getRotate=0.0 | | | | getTransforms=[] | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isVisible=true | | | | hasProperties=true | | | | isCache=false | | | | getEffect=null | | | | getCacheHint=DEFAULT | | | | wrapper.class=class org.jemmy.fx.control.TextControlWrap | | | | getOpacity=1.0 | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | getId=lbl_01 | | | | getContentBias=null | | | | control=Label[id=lbl_01, styleClass=label] | | | | text=(0,1) | | | | getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT | | | | getStyle= | | | | getProperties={gridpane-column=0, gridpane-row=1} | | | | isResizable=true | | | | control.class=class javafx.scene.control.Label | | | | isDisable=false | | | | getTooltip=null | | | | isDisabled=false | | | | getTranslateZ=0.0 | | | | bounds=org.jemmy.Rectangle[x=913,y=387,width=31,height=16] | | | | getUserData=null | | | | getTranslateX=0.0 | | | | getTranslateY=0.0 | | | | getCursor=null | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | isPickOnBounds=true | | | | getBoundsInParent=BoundingBox [minX:0.0, minY:16.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:32.0, maxZ:0.0] | | | | getBaselineOffset=13.0 | | | | isMouseTransparent=false | | | | getLayoutY=16.0 | | | | getStyleClass=label | | | | getLayoutX=0.0 | | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node | | | | | isFocused=false | | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isPressed=false | | | | | getScaleY=1.0 | | | | | getScaleX=1.0 | | | | | isHover=false | | | | | isManaged=true | | | | | getScaleZ=1.0 | | | | | getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff] | | | | | getRotate=0.0 | | | | | getTransforms=[] | | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isVisible=true | | | | | hasProperties=false | | | | | isCache=false | | | | | getEffect=null | | | | | getCacheHint=DEFAULT | | | | | wrapper.class=class org.jemmy.fx.TextWrap | | | | | getOpacity=1.0 | | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | | getId=null | | | | | getContentBias=null | | | | | control=Text[text="(0,1)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff] | | | | | text=(0,1) | | | | | getParent=Label[id=lbl_01, styleClass=label] | | | | | getStyle= | | | | | getProperties={} | | | | | isResizable=false | | | | | control.class=class com.sun.javafx.scene.control.skin.LabeledText | | | | | isDisable=false | | | | | isDisabled=false | | | | | getTranslateZ=0.0 | | | | | bounds=org.jemmy.Rectangle[x=913,y=387,width=31,height=16] | | | | | getUserData=null | | | | | getTranslateX=0.0 | | | | | getTranslateY=0.0 | | | | | getCursor=null | | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | | isPickOnBounds=true | | | | | getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0] | | | | | getBaselineOffset=13.0 | | | | | isMouseTransparent=false | | | | | getLayoutY=13.0 | | | | | getStyleClass=text | | | | | getLayoutX=0.0 | | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | | | isFocused=false | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isPressed=false | | | | getScaleY=1.0 | | | | getScaleX=1.0 | | | | isHover=false | | | | isManaged=true | | | | getScaleZ=1.0 | | | | getClip=null | | | | getRotate=0.0 | | | | getTransforms=[] | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isVisible=true | | | | hasProperties=true | | | | isCache=false | | | | getEffect=null | | | | getCacheHint=DEFAULT | | | | wrapper.class=class org.jemmy.fx.control.TextControlWrap | | | | getOpacity=1.0 | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | getId=lbl_02 | | | | getContentBias=null | | | | control=Label[id=lbl_02, styleClass=label] | | | | text=(0,2) | | | | getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT | | | | getStyle= | | | | getProperties={gridpane-column=0, gridpane-row=2} | | | | isResizable=true | | | | control.class=class javafx.scene.control.Label | | | | isDisable=false | | | | getTooltip=null | | | | isDisabled=false | | | | getTranslateZ=0.0 | | | | bounds=org.jemmy.Rectangle[x=913,y=403,width=31,height=16] | | | | getUserData=null | | | | getTranslateX=0.0 | | | | getTranslateY=0.0 | | | | getCursor=null | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | isPickOnBounds=true | | | | getBoundsInParent=BoundingBox [minX:0.0, minY:32.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:48.0, maxZ:0.0] | | | | getBaselineOffset=13.0 | | | | isMouseTransparent=false | | | | getLayoutY=32.0 | | | | getStyleClass=label | | | | getLayoutX=0.0 | | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node | | | | | isFocused=false | | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isPressed=false | | | | | getScaleY=1.0 | | | | | getScaleX=1.0 | | | | | isHover=false | | | | | isManaged=true | | | | | getScaleZ=1.0 | | | | | getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff] | | | | | getRotate=0.0 | | | | | getTransforms=[] | | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isVisible=true | | | | | hasProperties=false | | | | | isCache=false | | | | | getEffect=null | | | | | getCacheHint=DEFAULT | | | | | wrapper.class=class org.jemmy.fx.TextWrap | | | | | getOpacity=1.0 | | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | | getId=null | | | | | getContentBias=null | | | | | control=Text[text="(0,2)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff] | | | | | text=(0,2) | | | | | getParent=Label[id=lbl_02, styleClass=label] | | | | | getStyle= | | | | | getProperties={} | | | | | isResizable=false | | | | | control.class=class com.sun.javafx.scene.control.skin.LabeledText | | | | | isDisable=false | | | | | isDisabled=false | | | | | getTranslateZ=0.0 | | | | | bounds=org.jemmy.Rectangle[x=913,y=403,width=31,height=16] | | | | | getUserData=null | | | | | getTranslateX=0.0 | | | | | getTranslateY=0.0 | | | | | getCursor=null | | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | | isPickOnBounds=true | | | | | getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0] | | | | | getBaselineOffset=13.0 | | | | | isMouseTransparent=false | | | | | getLayoutY=13.0 | | | | | getStyleClass=text | | | | | getLayoutX=0.0 | | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | | | isFocused=false | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isPressed=false | | | | getScaleY=1.0 | | | | getScaleX=1.0 | | | | isHover=false | | | | isManaged=true | | | | getScaleZ=1.0 | | | | getClip=null | | | | getRotate=0.0 | | | | getTransforms=[] | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isVisible=true | | | | hasProperties=true | | | | isCache=false | | | | getEffect=null | | | | getCacheHint=DEFAULT | | | | wrapper.class=class org.jemmy.fx.control.TextControlWrap | | | | getOpacity=1.0 | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | getId=lbl_10 | | | | getContentBias=null | | | | control=Label[id=lbl_10, styleClass=label] | | | | text=(1,0) | | | | getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT | | | | getStyle= | | | | getProperties={gridpane-column=1, gridpane-row=0} | | | | isResizable=true | | | | control.class=class javafx.scene.control.Label | | | | isDisable=false | | | | getTooltip=null | | | | isDisabled=false | | | | getTranslateZ=0.0 | | | | bounds=org.jemmy.Rectangle[x=944,y=371,width=31,height=16] | | | | getUserData=null | | | | getTranslateX=0.0 | | | | getTranslateY=0.0 | | | | getCursor=null | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | isPickOnBounds=true | | | | getBoundsInParent=BoundingBox [minX:31.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:62.0, maxY:16.0, maxZ:0.0] | | | | getBaselineOffset=13.0 | | | | isMouseTransparent=false | | | | getLayoutY=0.0 | | | | getStyleClass=label | | | | getLayoutX=31.0 | | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node | | | | | isFocused=false | | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isPressed=false | | | | | getScaleY=1.0 | | | | | getScaleX=1.0 | | | | | isHover=false | | | | | isManaged=true | | | | | getScaleZ=1.0 | | | | | getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff] | | | | | getRotate=0.0 | | | | | getTransforms=[] | | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isVisible=true | | | | | hasProperties=false | | | | | isCache=false | | | | | getEffect=null | | | | | getCacheHint=DEFAULT | | | | | wrapper.class=class org.jemmy.fx.TextWrap | | | | | getOpacity=1.0 | | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | | getId=null | | | | | getContentBias=null | | | | | control=Text[text="(1,0)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff] | | | | | text=(1,0) | | | | | getParent=Label[id=lbl_10, styleClass=label] | | | | | getStyle= | | | | | getProperties={} | | | | | isResizable=false | | | | | control.class=class com.sun.javafx.scene.control.skin.LabeledText | | | | | isDisable=false | | | | | isDisabled=false | | | | | getTranslateZ=0.0 | | | | | bounds=org.jemmy.Rectangle[x=944,y=371,width=31,height=16] | | | | | getUserData=null | | | | | getTranslateX=0.0 | | | | | getTranslateY=0.0 | | | | | getCursor=null | | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | | isPickOnBounds=true | | | | | getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0] | | | | | getBaselineOffset=13.0 | | | | | isMouseTransparent=false | | | | | getLayoutY=13.0 | | | | | getStyleClass=text | | | | | getLayoutX=0.0 | | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | | | isFocused=false | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isPressed=false | | | | getScaleY=1.0 | | | | getScaleX=1.0 | | | | isHover=false | | | | isManaged=true | | | | getScaleZ=1.0 | | | | getClip=null | | | | getRotate=0.0 | | | | getTransforms=[] | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isVisible=true | | | | hasProperties=true | | | | isCache=false | | | | getEffect=null | | | | getCacheHint=DEFAULT | | | | wrapper.class=class org.jemmy.fx.control.TextControlWrap | | | | getOpacity=1.0 | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | getId=lbl_11 | | | | getContentBias=null | | | | control=Label[id=lbl_11, styleClass=label] | | | | text=(1,1) | | | | getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT | | | | getStyle= | | | | getProperties={gridpane-column=1, gridpane-row=1} | | | | isResizable=true | | | | control.class=class javafx.scene.control.Label | | | | isDisable=false | | | | getTooltip=null | | | | isDisabled=false | | | | getTranslateZ=0.0 | | | | bounds=org.jemmy.Rectangle[x=944,y=387,width=31,height=16] | | | | getUserData=null | | | | getTranslateX=0.0 | | | | getTranslateY=0.0 | | | | getCursor=null | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | isPickOnBounds=true | | | | getBoundsInParent=BoundingBox [minX:31.0, minY:16.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:62.0, maxY:32.0, maxZ:0.0] | | | | getBaselineOffset=13.0 | | | | isMouseTransparent=false | | | | getLayoutY=16.0 | | | | getStyleClass=label | | | | getLayoutX=31.0 | | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node | | | | | isFocused=false | | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isPressed=false | | | | | getScaleY=1.0 | | | | | getScaleX=1.0 | | | | | isHover=false | | | | | isManaged=true | | | | | getScaleZ=1.0 | | | | | getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff] | | | | | getRotate=0.0 | | | | | getTransforms=[] | | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isVisible=true | | | | | hasProperties=false | | | | | isCache=false | | | | | getEffect=null | | | | | getCacheHint=DEFAULT | | | | | wrapper.class=class org.jemmy.fx.TextWrap | | | | | getOpacity=1.0 | | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | | getId=null | | | | | getContentBias=null | | | | | control=Text[text="(1,1)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff] | | | | | text=(1,1) | | | | | getParent=Label[id=lbl_11, styleClass=label] | | | | | getStyle= | | | | | getProperties={} | | | | | isResizable=false | | | | | control.class=class com.sun.javafx.scene.control.skin.LabeledText | | | | | isDisable=false | | | | | isDisabled=false | | | | | getTranslateZ=0.0 | | | | | bounds=org.jemmy.Rectangle[x=944,y=387,width=31,height=16] | | | | | getUserData=null | | | | | getTranslateX=0.0 | | | | | getTranslateY=0.0 | | | | | getCursor=null | | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | | isPickOnBounds=true | | | | | getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0] | | | | | getBaselineOffset=13.0 | | | | | isMouseTransparent=false | | | | | getLayoutY=13.0 | | | | | getStyleClass=text | | | | | getLayoutX=0.0 | | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | | | isFocused=false | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isPressed=false | | | | getScaleY=1.0 | | | | getScaleX=1.0 | | | | isHover=true | | | | isManaged=true | | | | getScaleZ=1.0 | | | | getClip=null | | | | getRotate=0.0 | | | | getTransforms=[] | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isVisible=true | | | | hasProperties=true | | | | isCache=false | | | | getEffect=null | | | | getCacheHint=DEFAULT | | | | wrapper.class=class org.jemmy.fx.control.TextControlWrap | | | | getOpacity=1.0 | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | getId=lbl_12 | | | | getContentBias=null | | | | control=Label[id=lbl_12, styleClass=label] | | | | text=(1,2) | | | | getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT | | | | getStyle= | | | | getProperties={gridpane-column=1, gridpane-row=2} | | | | isResizable=true | | | | control.class=class javafx.scene.control.Label | | | | isDisable=false | | | | getTooltip=null | | | | isDisabled=false | | | | getTranslateZ=0.0 | | | | bounds=org.jemmy.Rectangle[x=944,y=403,width=31,height=16] | | | | getUserData=null | | | | getTranslateX=0.0 | | | | getTranslateY=0.0 | | | | getCursor=null | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | isPickOnBounds=true | | | | getBoundsInParent=BoundingBox [minX:31.0, minY:32.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:62.0, maxY:48.0, maxZ:0.0] | | | | getBaselineOffset=13.0 | | | | isMouseTransparent=false | | | | getLayoutY=32.0 | | | | getStyleClass=label | | | | getLayoutX=31.0 | | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node | | | | | isFocused=false | | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isPressed=false | | | | | getScaleY=1.0 | | | | | getScaleX=1.0 | | | | | isHover=true | | | | | isManaged=true | | | | | getScaleZ=1.0 | | | | | getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff] | | | | | getRotate=0.0 | | | | | getTransforms=[] | | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isVisible=true | | | | | hasProperties=false | | | | | isCache=false | | | | | getEffect=null | | | | | getCacheHint=DEFAULT | | | | | wrapper.class=class org.jemmy.fx.TextWrap | | | | | getOpacity=1.0 | | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | | getId=null | | | | | getContentBias=null | | | | | control=Text[text="(1,2)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff] | | | | | text=(1,2) | | | | | getParent=Label[id=lbl_12, styleClass=label] | | | | | getStyle= | | | | | getProperties={} | | | | | isResizable=false | | | | | control.class=class com.sun.javafx.scene.control.skin.LabeledText | | | | | isDisable=false | | | | | isDisabled=false | | | | | getTranslateZ=0.0 | | | | | bounds=org.jemmy.Rectangle[x=944,y=403,width=31,height=16] | | | | | getUserData=null | | | | | getTranslateX=0.0 | | | | | getTranslateY=0.0 | | | | | getCursor=null | | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | | isPickOnBounds=true | | | | | getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0] | | | | | getBaselineOffset=13.0 | | | | | isMouseTransparent=false | | | | | getLayoutY=13.0 | | | | | getStyleClass=text | | | | | getLayoutX=0.0 | | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | | | isFocused=false | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isPressed=false | | | | getScaleY=1.0 | | | | getScaleX=1.0 | | | | isHover=false | | | | isManaged=true | | | | getScaleZ=1.0 | | | | getClip=null | | | | getRotate=0.0 | | | | getTransforms=[] | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isVisible=true | | | | hasProperties=true | | | | isCache=false | | | | getEffect=null | | | | getCacheHint=DEFAULT | | | | wrapper.class=class org.jemmy.fx.control.TextControlWrap | | | | getOpacity=1.0 | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | getId=lbl_20 | | | | getContentBias=null | | | | control=Label[id=lbl_20, styleClass=label] | | | | text=(2,0) | | | | getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT | | | | getStyle= | | | | getProperties={gridpane-column=2, gridpane-row=0} | | | | isResizable=true | | | | control.class=class javafx.scene.control.Label | | | | isDisable=false | | | | getTooltip=null | | | | isDisabled=false | | | | getTranslateZ=0.0 | | | | bounds=org.jemmy.Rectangle[x=975,y=371,width=31,height=16] | | | | getUserData=null | | | | getTranslateX=0.0 | | | | getTranslateY=0.0 | | | | getCursor=null | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | isPickOnBounds=true | | | | getBoundsInParent=BoundingBox [minX:62.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:93.0, maxY:16.0, maxZ:0.0] | | | | getBaselineOffset=13.0 | | | | isMouseTransparent=false | | | | getLayoutY=0.0 | | | | getStyleClass=label | | | | getLayoutX=62.0 | | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node | | | | | isFocused=false | | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isPressed=false | | | | | getScaleY=1.0 | | | | | getScaleX=1.0 | | | | | isHover=false | | | | | isManaged=true | | | | | getScaleZ=1.0 | | | | | getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff] | | | | | getRotate=0.0 | | | | | getTransforms=[] | | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isVisible=true | | | | | hasProperties=false | | | | | isCache=false | | | | | getEffect=null | | | | | getCacheHint=DEFAULT | | | | | wrapper.class=class org.jemmy.fx.TextWrap | | | | | getOpacity=1.0 | | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | | getId=null | | | | | getContentBias=null | | | | | control=Text[text="(2,0)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff] | | | | | text=(2,0) | | | | | getParent=Label[id=lbl_20, styleClass=label] | | | | | getStyle= | | | | | getProperties={} | | | | | isResizable=false | | | | | control.class=class com.sun.javafx.scene.control.skin.LabeledText | | | | | isDisable=false | | | | | isDisabled=false | | | | | getTranslateZ=0.0 | | | | | bounds=org.jemmy.Rectangle[x=975,y=371,width=31,height=16] | | | | | getUserData=null | | | | | getTranslateX=0.0 | | | | | getTranslateY=0.0 | | | | | getCursor=null | | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | | isPickOnBounds=true | | | | | getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0] | | | | | getBaselineOffset=13.0 | | | | | isMouseTransparent=false | | | | | getLayoutY=13.0 | | | | | getStyleClass=text | | | | | getLayoutX=0.0 | | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | | | isFocused=false | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isPressed=false | | | | getScaleY=1.0 | | | | getScaleX=1.0 | | | | isHover=false | | | | isManaged=true | | | | getScaleZ=1.0 | | | | getClip=null | | | | getRotate=0.0 | | | | getTransforms=[] | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isVisible=true | | | | hasProperties=true | | | | isCache=false | | | | getEffect=null | | | | getCacheHint=DEFAULT | | | | wrapper.class=class org.jemmy.fx.control.TextControlWrap | | | | getOpacity=1.0 | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | getId=lbl_21 | | | | getContentBias=null | | | | control=Label[id=lbl_21, styleClass=label] | | | | text=(2,1) | | | | getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT | | | | getStyle= | | | | getProperties={gridpane-column=2, gridpane-row=1} | | | | isResizable=true | | | | control.class=class javafx.scene.control.Label | | | | isDisable=false | | | | getTooltip=null | | | | isDisabled=false | | | | getTranslateZ=0.0 | | | | bounds=org.jemmy.Rectangle[x=975,y=387,width=31,height=16] | | | | getUserData=null | | | | getTranslateX=0.0 | | | | getTranslateY=0.0 | | | | getCursor=null | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | isPickOnBounds=true | | | | getBoundsInParent=BoundingBox [minX:62.0, minY:16.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:93.0, maxY:32.0, maxZ:0.0] | | | | getBaselineOffset=13.0 | | | | isMouseTransparent=false | | | | getLayoutY=16.0 | | | | getStyleClass=label | | | | getLayoutX=62.0 | | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node | | | | | isFocused=false | | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isPressed=false | | | | | getScaleY=1.0 | | | | | getScaleX=1.0 | | | | | isHover=false | | | | | isManaged=true | | | | | getScaleZ=1.0 | | | | | getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff] | | | | | getRotate=0.0 | | | | | getTransforms=[] | | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isVisible=true | | | | | hasProperties=false | | | | | isCache=false | | | | | getEffect=null | | | | | getCacheHint=DEFAULT | | | | | wrapper.class=class org.jemmy.fx.TextWrap | | | | | getOpacity=1.0 | | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | | getId=null | | | | | getContentBias=null | | | | | control=Text[text="(2,1)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff] | | | | | text=(2,1) | | | | | getParent=Label[id=lbl_21, styleClass=label] | | | | | getStyle= | | | | | getProperties={} | | | | | isResizable=false | | | | | control.class=class com.sun.javafx.scene.control.skin.LabeledText | | | | | isDisable=false | | | | | isDisabled=false | | | | | getTranslateZ=0.0 | | | | | bounds=org.jemmy.Rectangle[x=975,y=387,width=31,height=16] | | | | | getUserData=null | | | | | getTranslateX=0.0 | | | | | getTranslateY=0.0 | | | | | getCursor=null | | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | | isPickOnBounds=true | | | | | getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0] | | | | | getBaselineOffset=13.0 | | | | | isMouseTransparent=false | | | | | getLayoutY=13.0 | | | | | getStyleClass=text | | | | | getLayoutX=0.0 | | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | | | isFocused=false | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isPressed=false | | | | getScaleY=1.0 | | | | getScaleX=1.0 | | | | isHover=false | | | | isManaged=true | | | | getScaleZ=1.0 | | | | getClip=null | | | | getRotate=0.0 | | | | getTransforms=[] | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | | isVisible=true | | | | hasProperties=true | | | | isCache=false | | | | getEffect=null | | | | getCacheHint=DEFAULT | | | | wrapper.class=class org.jemmy.fx.control.TextControlWrap | | | | getOpacity=1.0 | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | getId=lbl_22 | | | | getContentBias=null | | | | control=Label[id=lbl_22, styleClass=label] | | | | text=(2,2) | | | | getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT | | | | getStyle= | | | | getProperties={gridpane-column=2, gridpane-row=2} | | | | isResizable=true | | | | control.class=class javafx.scene.control.Label | | | | isDisable=false | | | | getTooltip=null | | | | isDisabled=false | | | | getTranslateZ=0.0 | | | | bounds=org.jemmy.Rectangle[x=975,y=403,width=31,height=16] | | | | getUserData=null | | | | getTranslateX=0.0 | | | | getTranslateY=0.0 | | | | getCursor=null | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | isPickOnBounds=true | | | | getBoundsInParent=BoundingBox [minX:62.0, minY:32.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:93.0, maxY:48.0, maxZ:0.0] | | | | getBaselineOffset=13.0 | | | | isMouseTransparent=false | | | | getLayoutY=32.0 | | | | getStyleClass=label | | | | getLayoutX=62.0 | | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node | | | | | isFocused=false | | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isPressed=false | | | | | getScaleY=1.0 | | | | | getScaleX=1.0 | | | | | isHover=false | | | | | isManaged=true | | | | | getScaleZ=1.0 | | | | | getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff] | | | | | getRotate=0.0 | | | | | getTransforms=[] | | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | | isVisible=true | | | | | hasProperties=false | | | | | isCache=false | | | | | getEffect=null | | | | | getCacheHint=DEFAULT | | | | | wrapper.class=class org.jemmy.fx.TextWrap | | | | | getOpacity=1.0 | | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | | getId=null | | | | | getContentBias=null | | | | | control=Text[text="(2,2)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff] | | | | | text=(2,2) | | | | | getParent=Label[id=lbl_22, styleClass=label] | | | | | getStyle= | | | | | getProperties={} | | | | | isResizable=false | | | | | control.class=class com.sun.javafx.scene.control.skin.LabeledText | | | | | isDisable=false | | | | | isDisabled=false | | | | | getTranslateZ=0.0 | | | | | bounds=org.jemmy.Rectangle[x=975,y=403,width=31,height=16] | | | | | getUserData=null | | | | | getTranslateX=0.0 | | | | | getTranslateY=0.0 | | | | | getCursor=null | | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | | isPickOnBounds=true | | | | | getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0] | | | | | getBaselineOffset=13.0 | | | | | isMouseTransparent=false | | | | | getLayoutY=13.0 | | | | | getStyleClass=text | | | | | getLayoutX=0.0 | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node | | | isFocused=false | | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | isPressed=false | | | getScaleY=1.0 | | | getScaleX=1.0 | | | isHover=false | | | isManaged=true | | | getScaleZ=1.0 | | | getClip=null | | | getRotate=0.0 | | | getTransforms=[] | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0] | | | isVisible=true | | | hasProperties=false | | | isCache=false | | | getEffect=null | | | getCacheHint=DEFAULT | | | wrapper.class=class org.jemmy.fx.control.TextControlWrap | | | getOpacity=1.0 | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | getId=null | | | getContentBias=null | | | control=Label at 588a4b96[styleClass=label] | | | text=(1,2) | | | getParent=VBox at 7110d0b1[styleClass=root] | | | getStyle= | | | getProperties={} | | | isResizable=true | | | control.class=class javafx.scene.control.Label | | | isDisable=false | | | getTooltip=null | | | isDisabled=false | | | getTranslateZ=0.0 | | | bounds=org.jemmy.Rectangle[x=913,y=419,width=31,height=16] | | | getUserData=null | | | getTranslateX=0.0 | | | getTranslateY=0.0 | | | getCursor=null | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | isPickOnBounds=true | | | getBoundsInParent=BoundingBox [minX:0.0, minY:48.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:64.0, maxZ:0.0] | | | getBaselineOffset=13.0 | | | isMouseTransparent=false | | | getLayoutY=48.0 | | | getStyleClass=label | | | getLayoutX=0.0 | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node | | | | isFocused=false | | | | getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | isPressed=false | | | | getScaleY=1.0 | | | | getScaleX=1.0 | | | | isHover=false | | | | isManaged=true | | | | getScaleZ=1.0 | | | | getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff] | | | | getRotate=0.0 | | | | getTransforms=[] | | | | getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0] | | | | isVisible=true | | | | hasProperties=false | | | | isCache=false | | | | getEffect=null | | | | getCacheHint=DEFAULT | | | | wrapper.class=class org.jemmy.fx.TextWrap | | | | getOpacity=1.0 | | | | getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0] | | | | getId=null | | | | getContentBias=null | | | | control=Text[text="(1,2)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff] | | | | text=(1,2) | | | | getParent=Label at 588a4b96[styleClass=label] | | | | getStyle= | | | | getProperties={} | | | | isResizable=false | | | | control.class=class com.sun.javafx.scene.control.skin.LabeledText | | | | isDisable=false | | | | isDisabled=false | | | | getTranslateZ=0.0 | | | | bounds=org.jemmy.Rectangle[x=913,y=419,width=31,height=16] | | | | getUserData=null | | | | getTranslateX=0.0 | | | | getTranslateY=0.0 | | | | getCursor=null | | | | clickPoint=org.jemmy.Point[x=15,y=8] | | | | scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e | | | | isPickOnBounds=true | | | | getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0] | | | | getBaselineOffset=13.0 | | | | isMouseTransparent=false | | | | getLayoutY=13.0 | | | | getStyleClass=text | | | | getLayoutX=0.0 From herve.girod at gmail.com Fri Jun 7 07:20:07 2013 From: herve.girod at gmail.com (=?utf-8?Q?Herv=C3=A9_Girod?=) Date: Fri, 7 Jun 2013 16:20:07 +0200 Subject: Dumping the rendering process in JavaFX In-Reply-To: <51B1E644.3030103@oracle.com> References: <32702500-1750-407D-AD68-7ED8B8F2B601@gmail.com> <3B537FE7-3111-4533-9772-B909CFAD68CA@oracle.com> <51B1E644.3030103@oracle.com> Message-ID: Thanks, that's very interesting ! It may be what I need ! I will check it soon ! Herv? Sent from my iPhone On 7 juin 2013, at 15:55, "Alexandre (Shura) Iline" wrote: > Hi. > > > FWIW, with JemmyFX you can do: > new SceneDock().asParent().lookup().dump(System.out); > > What you get is (full output is attached): > | +-javafx.scene.layout.VBox <- javafx.scene.layout.Pane <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node > | | isFocused=false > ... > | | getLayoutX=0.0 > | | +-javafx.scene.layout.GridPane <- javafx.scene.layout.Pane <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node > | | | isFocused=false > | | | getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:48.0, depth:0.0, maxX:93.0, maxY:48.0, maxZ:0.0] > ... > | | | getStyleClass= > | | | getLayoutX=0.0 > | | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node > ... > | | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node > ... > ... > > See more on JemmyFX lookup: > http://hg.openjdk.java.net/openjfx/8/master/tests/raw-file/tip/tools/Jemmy/JemmyFX/samples/org/jemmy/samples/index.html > > Shura > > On 06/07/2013 05:42 PM, Richard Bair wrote: > >> Begin forwarded message: >> >>> *From:* Herv? Girod > >>> *Date:* June 7, 2013, 5:34:09 AM PDT >>> *To:* "openjfx-dev at openjdk.java.net >>> List" >>> > >>> *Subject:* *Dumping the rendering process in JavaFX* >>> >>> Hello, >>> >>> We are porting a swing application in JavaFX, and we had various unit >>> tests where we created for testing purposes a dummy Graphics2D which >>> stored the list of its shapes and transformations. >>> >>> This allowed us to perform unit tests for the rendering of some of our >>> graphic components or Look and Feels. >>> >>> We tried to do the same thing in JavaFX by using the swing -JavaFX >>> bridge and forcing a j2d prism rendering. It works, but JavaFX nodes >>> are rendered as images, so it's not the right way to do it ;) >>> >>> Is there a way to dump some kind of list of graphic orders in the >>> current state of JavaFX (2.2 or 8) ? >>> >>> Herv? >>> >>> Sent from my iPhone > From hjohn at xs4all.nl Fri Jun 7 10:24:44 2013 From: hjohn at xs4all.nl (John Hendrikx) Date: Fri, 07 Jun 2013 19:24:44 +0200 Subject: ObservableValue Stacktrace In-Reply-To: <513422CC-A471-4493-A4BE-444335D88F60@oracle.com> References: <51AF93CE.1000400@xs4all.nl> <51B03B8E.2030208@oracle.com> <51B04E02.7000107@xs4all.nl> <51B0714D.2060501@oracle.com> <51B0B95C.30404@oracle.com> <513422CC-A471-4493-A4BE-444335D88F60@oracle.com> Message-ID: <51B2175C.6080208@xs4all.nl> Ok, I understand -- it was printed to one of the System streams directly (I don't configure any further logging, so I may have missed these warnings in the past in earlier JavaFX releases). I have however been kinda relying on JavaFX ignoring the nulls in bindings -- as these are all UI related, often I will switch parts of the UI on/off when certain objects are not available (ie, null), but when they are available, then they're visible, including all their other bindings. This is especially convenient when elements are loaded on demand, which almost everything is in my application. When one of the values becomes non-null, because a background process has provided it, then that part of the UI becomes visible, and its values are filled. In fact, I've further enhanced what is possible with Bindings, allowing for bindings to be looked up inside Maps, or even from public properties (like "public final StringProperty title;") with a single Bindings.select() style command -- for example: MapBindings.select(videoProperty(), "dataMap", YouTube.class, "rating"); // will return rating if videoProperty non-null, dataMap is non-null and dataMap contains key YouTube.class... I'm kinda surprised this is not desired behaviour -- it is the Elvis operator (?:) of JavaFX, very convenient -- the provided default suits a UI's purposes probably 99% of the time (leave something blank or 0 -- if the UI logic doesn't simply hide it before it even gets to that point...) --John On 6/06/2013 19:43, Richard Bair wrote: > I don't think we ought to print to stdout or stderr in any case in the platform. A logger is a better idea. But really I think it is unlikely that this particular message will be that useful (it will be unhelpful in just as many cases). It is not uncommon for a chain to have a null in it at some point, and the presence of the message will just make people think something is wrong when in fact it isn't. > > Richard > > On Jun 6, 2013, at 9:31 AM, Kevin Rushforth wrote: > >> Perhaps using the logging system would be a better choice in the case than printing to stderr? >> >> -- Kevin >> >> >> Martin Sladecek wrote: >>> On 06/06/2013 10:53 AM, John Hendrikx wrote: >>>> Hm, ok -- it is correct that it doesn't fail, the code runs without any problem and everything works as expected. >>>> >>>> But, what would be the way to avoid these messages in my log then? Something like: >>>> >>>> Bindings.select( Bindings.when(dataProperty().isNull()).then( ??? ).otherwise(dataProperty()), "castings") ); >>>> >>>> ?? >>>> >>>> I'd prefer to just turn these warnings off unless there is a really good reason to have them (ie, they indicate a logic error or other bug, something I can resolve...) >>> This might indicate a logic error in many cases, esp. when the property you bind is a primitive type. When the select fails in the middle of computation, the only it can do is to set the property to default value (which is 0). If the developer >>> didn't expect this, it would be quite hard to find the actual cause of the zero. If you really expect nulls along the way, it's much cleaner to handle this explicitly as you do in the code above. >>> >>>> In my case the dataProperty() is often bound to the selection of a ListView -- if you have something valid selected, then a Detail Pane is filled in with information about the selected item. When nothing is selected (ie, it is null), then the Detail Pane should remain empty... I donot want to have to remove/recreate these bindings every time some property becomes null. >>>> >>>> Also, it seems rather wierd that JavaFX will complain about nulls in the first part of the Bindings.select(), but will happily traverse the graph (with or without nulls) for the other parts. >>> This is a bug then, it should print the warning in any part of the select expression. >>> >>> -Martin From hang.vo at oracle.com Fri Jun 7 12:18:25 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Fri, 07 Jun 2013 19:18:25 +0000 Subject: hg: openjfx/8/controls/rt: 2 new changesets Message-ID: <20130607191850.05C69480AC@hg.openjdk.java.net> Changeset: b8fb9136fbcb Author: David Grieve Date: 2013-06-07 14:59 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/b8fb9136fbcb RT-30985: associate strings for deserialization with stylesheet ! javafx-ui-common/src/com/sun/javafx/css/Rule.java ! javafx-ui-common/src/com/sun/javafx/css/Stylesheet.java Changeset: 69bd40665e68 Author: David Grieve Date: 2013-06-07 15:01 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/69bd40665e68 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt From hang.vo at oracle.com Fri Jun 7 14:06:55 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Fri, 07 Jun 2013 21:06:55 +0000 Subject: hg: openjfx/8/graphics/rt: 3D Viewer App: Working on JavaSourceExporter for demos Message-ID: <20130607210727.99A16480B3@hg.openjdk.java.net> Changeset: c601f830bb33 Author: "Jasper Potts" Date: 2013-06-07 13:58 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/c601f830bb33 3D Viewer App: Working on JavaSourceExporter for demos ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/javasource/JavaSourceExporter.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java From zonski at gmail.com Fri Jun 7 15:43:46 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Sat, 8 Jun 2013 08:43:46 +1000 Subject: FXML version number In-Reply-To: <51B19E88.4080203@oracle.com> References: <51B19E88.4080203@oracle.com> Message-ID: I think marking the FXML version is a good idea, but not sure what the implications of an incompatibility are though if it is in the backwards direction? There definitely will be version compatibility issues in FXML, but any backwards compatibility issues will break running apps that are web deployed when the JRE auto-updates on users. If the loader barfs when it hits an incompatibility issue it just means those failures will be more in your face. If a running, web-deployed app has FXML that is an older version but just happens not to be using the broken bits then the loader failing at this point is highly undesirable. On Fri, Jun 7, 2013 at 6:49 PM, Milan Kubec wrote: > Hello, > I have implemented simple versioning for FXML documents in FXMLLoader, but > without support in tools it won't be very useful. I have agreed with > NetBeans and Scene Builder folks that they will include support for > versioning too. Support means that they will produce document with two XML > namespaces - one defines version of fx: prefixed elements and attributes > (xmlns:fx; it's already there, just the version is appended) and the other > of actual JavaFX API used to produce document (xmlns; default, no prefix). > The first will be checked, because wrong version can cause failure. The > latter is only informational, no strict checking of version is possible, > but tools can suggest to upgrade runtime, translate document etc. > > JavaFX API version is stored in System Properties as "javafx.version". The > open question is still where and how to store fxml version in code. I think > that we could have also property for this purpose, e.g. "fxml.version" in > System Properties. So far it's part of FXMLLoader API, which is probably > not very fortunate. What do you think? > > Issue details: https://javafx-jira.kenai.com/browse/RT-28599 > > Milan > > From hang.vo at oracle.com Fri Jun 7 18:06:51 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Sat, 08 Jun 2013 01:06:51 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130608010728.F3441480BA@hg.openjdk.java.net> Changeset: a62bc4209f53 Author: Alexander Kouznetsov Date: 2013-06-07 17:55 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/a62bc4209f53 3DViewer: Reverted hack of CullFace caused every maya file to appear all black. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java Changeset: e6d790912c2e Author: Alexander Kouznetsov Date: 2013-06-07 18:02 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/e6d790912c2e 3DViewer: Implemented settings and state persistence between sessions ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Importer3D.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/ContentModel.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/Jfx3dViewerApp.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/OldTestViewer.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SessionManager.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SettingsController.java From hang.vo at oracle.com Sat Jun 8 08:05:51 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Sat, 08 Jun 2013 15:05:51 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30508 adding native cross tool support Message-ID: <20130608150611.917D5480C8@hg.openjdk.java.net> Changeset: 5e0dfe90b7f2 Author: David Hill Date: 2013-06-08 10:28 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/5e0dfe90b7f2 RT-30508 adding native cross tool support ! build.gradle ! gradleBuildSrc/armv6hf.gradle ! gradleBuildSrc/armv6sf.gradle From krueger at lesspain.de Sat Jun 8 09:22:38 2013 From: krueger at lesspain.de (=?UTF-8?Q?Robert_Kr=C3=BCger?=) Date: Sat, 8 Jun 2013 18:22:38 +0200 Subject: Status or JDK/JFX8 builds for arm Linux Message-ID: Hi, I would like to check out how well JFX8 works on the Raspberry Pi and I only found the build from December. Is there a place were one can find more up-to-date builds or do I have to build it myself? Thanks, Robert From hang.vo at oracle.com Mon Jun 10 06:18:39 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 10 Jun 2013 13:18:39 +0000 Subject: hg: openjfx/8/graphics/rt: RT-23876 Mac: Context Menus not working in applet Message-ID: <20130610131905.8749A480EF@hg.openjdk.java.net> Changeset: cc71d4e40388 Author: Petr Pchelko Date: 2013-06-10 17:15 +0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/cc71d4e40388 RT-23876 Mac: Context Menus not working in applet Reviewed-by: anthony ! glass/glass-lib-macosx/src/GlassWindow.m From hang.vo at oracle.com Sat Jun 8 20:34:11 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Sun, 09 Jun 2013 03:34:11 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30508 re-enabling swing building until Builders/JMX is addressed. Message-ID: <20130609033440.1582F480D1@hg.openjdk.java.net> Changeset: 2e517d892d1f Author: David Hill Date: 2013-06-08 23:22 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/2e517d892d1f RT-30508 re-enabling swing building until Builders/JMX is addressed. ! build.gradle From richard.bair at oracle.com Mon Jun 10 09:16:19 2013 From: richard.bair at oracle.com (Richard Bair) Date: Mon, 10 Jun 2013 09:16:19 -0700 Subject: Status or JDK/JFX8 builds for arm Linux In-Reply-To: References: Message-ID: <91BDAA89-559C-4A4F-8DE4-ADF34E7E92B3@oracle.com> There should now be weekly builds going out. Daniel do you have a link to where those are? Richard On Jun 8, 2013, at 9:22 AM, Robert Kr?ger wrote: > Hi, > > I would like to check out how well JFX8 works on the Raspberry Pi and > I only found the build from December. Is there a place were one can > find more up-to-date builds or do I have to build it myself? > > Thanks, > > Robert From hang.vo at oracle.com Mon Jun 10 09:06:15 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 10 Jun 2013 16:06:15 +0000 Subject: hg: openjfx/8/graphics/rt: Gradle: add .gradle directories to .hgignore Message-ID: <20130610160636.C9B5F480FC@hg.openjdk.java.net> Changeset: f6b05e9c2b72 Author: kcr Date: 2013-06-10 08:58 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/f6b05e9c2b72 Gradle: add .gradle directories to .hgignore ! .hgignore From daniel.blaukopf at oracle.com Mon Jun 10 11:28:10 2013 From: daniel.blaukopf at oracle.com (Daniel Blaukopf) Date: Mon, 10 Jun 2013 21:28:10 +0300 Subject: Status or JDK/JFX8 builds for arm Linux In-Reply-To: <91BDAA89-559C-4A4F-8DE4-ADF34E7E92B3@oracle.com> References: <91BDAA89-559C-4A4F-8DE4-ADF34E7E92B3@oracle.com> Message-ID: <50B5FFDB-0B19-48E5-A5DE-92E781A0CB33@oracle.com> On 10 ???? 2013, at 19:16, Richard Bair wrote: > There should now be weekly builds going out. Not yet but stay tuned. > Daniel do you have a link to where those are? The December snapshot is still the latest. It won't be long before an update. Daniel > > Richard > > On Jun 8, 2013, at 9:22 AM, Robert Kr?ger wrote: > >> Hi, >> >> I would like to check out how well JFX8 works on the Raspberry Pi and >> I only found the build from December. Is there a place were one can >> find more up-to-date builds or do I have to build it myself? >> >> Thanks, >> >> Robert > From zonski at gmail.com Sat Jun 8 18:30:22 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Sun, 9 Jun 2013 11:30:22 +1000 Subject: RoboVM Maven Plugin (beta release) Message-ID: This is without JavaFX support (waiting on the open sourcing) but given the interest around RoboVM I thought I'd mention it here anyway: http://www.zenjava.com/2013/06/09/robovm-maven-plugin-beta-release/ From hang.vo at oracle.com Mon Jun 10 12:20:32 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 10 Jun 2013 19:20:32 +0000 Subject: hg: openjfx/8/graphics/rt: 34 new changesets Message-ID: <20130610192838.6A8B248104@hg.openjdk.java.net> Changeset: 02aaa6e6a7e0 Author: leifs Date: 2013-05-29 10:09 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/02aaa6e6a7e0 RT-30233: [DatePicker] Handle incompatible change of method name in DateTimeFormatter. (Requires JDK8 b91). ! build.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/DatePickerContent.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/DatePickerHijrahContent.java ! javafx-ui-controls/src/javafx/scene/control/DatePicker.java Changeset: 7fb8809a830b Author: Seeon Birger Date: 2013-05-29 12:34 +0300 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/7fb8809a830b Dual commit (ea2) - Fix RT-30627 - Virtual Keyboard moves to the background after switching to a another window ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/FXVKSkin.java Changeset: eeaaed36a3d8 Author: Richard Bair Date: 2013-05-29 10:43 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/eeaaed36a3d8 Fixes to build with IntelliJ - SimpleViewerApp and FXVKSkin both needed a "final" keyword added in order to build on 7 (and we're trying to use as little dependence on 8 as possible to support the communities JDK 7 backport of FX 8) - Modena's SamplePage needed to have replacements for some builders and changes in how other builders were used - A bunch of duplicate test classes were in javafx-builders which made IDEA very unhappy. ! apps/experiments/3DViewer/3D Viewer.iml ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SimpleViewerApp.java ! apps/experiments/Modena/Modena.iml ! apps/experiments/Modena/src/modena/SamplePage.java ! apps/samples/Ensemble8/Ensemble8.iml ! javafx-builders/test/unit/com/sun/javafx/test/BuilderProxy.java - javafx-builders/test/unit/com/sun/javafx/test/PropertiesTestBase.java - javafx-builders/test/unit/com/sun/javafx/test/PropertyReference.java - javafx-builders/test/unit/com/sun/javafx/test/binding/ReflectionHelper.java - javafx-builders/test/unit/javafx/scene/Node_properties_Test.java - javafx-builders/test/unit/javafx/scene/Scene_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Blend_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Bloom_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/BoxBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorAdjust_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DisplacementMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DistantLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DropShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/FloatMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/GaussianBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Glow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ImageInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/InnerShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Lighting_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/MotionBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PerspectiveTransform_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PointLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Reflection_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SepiaTone_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Shadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SpotLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/ArcTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Arc_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Circle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Ellipse_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/HLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/LineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Line_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/MoveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Path_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Rectangle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/SVGPath_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Shape_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/VLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/transform/Transform_properties_Test.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/FXVKSkin.java Changeset: a1348a50b9ef Author: David Grieve Date: 2013-05-29 16:37 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/a1348a50b9ef Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt - javafx-builders/test/unit/com/sun/javafx/test/PropertiesTestBase.java - javafx-builders/test/unit/com/sun/javafx/test/PropertyReference.java - javafx-builders/test/unit/com/sun/javafx/test/binding/ReflectionHelper.java - javafx-builders/test/unit/javafx/scene/Node_properties_Test.java - javafx-builders/test/unit/javafx/scene/Scene_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Blend_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Bloom_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/BoxBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorAdjust_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ColorInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DisplacementMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DistantLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/DropShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/FloatMap_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/GaussianBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Glow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/ImageInput_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/InnerShadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Lighting_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/MotionBlur_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PerspectiveTransform_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/PointLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Reflection_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SepiaTone_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/Shadow_properties_Test.java - javafx-builders/test/unit/javafx/scene/effect/SpotLight_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/ArcTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Arc_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Circle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/CubicCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Ellipse_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/HLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/LineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Line_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/MoveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Path_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurveTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/QuadCurve_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Rectangle_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/SVGPath_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/Shape_properties_Test.java - javafx-builders/test/unit/javafx/scene/shape/VLineTo_properties_Test.java - javafx-builders/test/unit/javafx/scene/transform/Transform_properties_Test.java Changeset: e0145393ceaa Author: leifs Date: 2013-05-30 10:52 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/e0145393ceaa RT-30547: DatePicker doesn't allow to omit leading zero ! javafx-ui-controls/src/javafx/scene/control/DatePicker.java Changeset: a92e5afc944b Author: jgiles Date: 2013-05-31 10:57 +1200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/a92e5afc944b RT-30825: Can't Reorder Columns in Table ! javafx-ui-controls/src/javafx/scene/control/TableColumnBase.java ! javafx-ui-controls/test/javafx/scene/control/TableColumnTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeTableColumnTest.java Changeset: 30e3bcb6c736 Author: jgiles Date: 2013-05-31 11:44 +1200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/30e3bcb6c736 RT-30398: CheckBox cell factory renders check boxes in empty cells ! javafx-ui-controls/src/javafx/scene/control/ListCell.java ! javafx-ui-controls/src/javafx/scene/control/TableCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableCell.java ! javafx-ui-controls/test/com/sun/javafx/scene/control/infrastructure/VirtualFlowTestUtils.java ! javafx-ui-controls/test/javafx/scene/control/ListViewTest.java ! javafx-ui-controls/test/javafx/scene/control/TableViewTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeTableViewTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeViewTest.java Changeset: 7a327e81151a Author: jgiles Date: 2013-05-31 12:45 +1200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/7a327e81151a Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt Changeset: 0e8bd17417d3 Author: David Grieve Date: 2013-05-14 12:48 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/0e8bd17417d3 RT-30381: change selector matching to return list of matching selectors rather than the rules of matching selectors ! javafx-ui-common/src/com/sun/javafx/css/CascadingStyle.java ! javafx-ui-common/src/com/sun/javafx/css/Match.java ! javafx-ui-common/src/com/sun/javafx/css/Rule.java ! javafx-ui-common/src/com/sun/javafx/css/Selector.java ! javafx-ui-common/src/com/sun/javafx/css/SelectorPartitioning.java ! javafx-ui-common/src/com/sun/javafx/css/SimpleSelector.java ! javafx-ui-common/src/com/sun/javafx/css/Style.java ! javafx-ui-common/src/com/sun/javafx/css/StyleCache.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/src/com/sun/javafx/css/Stylesheet.java ! javafx-ui-common/src/javafx/scene/doc-files/cssref.html ! javafx-ui-common/test/unit/com/sun/javafx/css/SelectorPartitioningTest.java Changeset: 2141df51b9c5 Author: Richard Bair Date: 2013-05-14 15:42 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/2141df51b9c5 RT-30391: CSSStyleHelper is inflating many styleable properties ! javafx-ui-common/src/javafx/scene/CssStyleHelper.java Changeset: b0690df037ca Author: David Grieve Date: 2013-05-14 15:44 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/b0690df037ca lazy deserialization of css declarations ! javafx-ui-common/src/com/sun/javafx/css/Rule.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/test/unit/com/sun/javafx/css/Node_cssStyleMap_Test.java ! javafx-ui-common/test/unit/com/sun/javafx/css/SelectorPartitioningTest.java Changeset: e6ec5624c645 Author: David Grieve Date: 2013-05-14 16:38 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/e6ec5624c645 RT-30381: only get matches by looking at matching selectors rather than matching on rule. Matching node to rule results in looking at every selector on the rule and we already know which selectors match. ! javafx-ui-common/src/com/sun/javafx/css/CompoundSelector.java ! javafx-ui-common/src/com/sun/javafx/css/Selector.java ! javafx-ui-common/src/com/sun/javafx/css/SimpleSelector.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java Changeset: 3f4e67f06aad Author: David Grieve Date: 2013-05-14 17:38 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/3f4e67f06aad Fix compile error in Rule.java ! javafx-ui-common/src/com/sun/javafx/css/Rule.java Changeset: 9574c86c4067 Author: David Grieve Date: 2013-05-14 18:17 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/9574c86c4067 [UNIT TEST] fix compile error in RuleTest and CssMetaDataTest. ! javafx-ui-common/test/unit/com/sun/javafx/css/CssMetaDataTest.java ! javafx-ui-common/test/unit/com/sun/javafx/css/RuleTest.java Changeset: ca11ca2535b2 Author: jgiles Date: 2013-05-15 13:45 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/ca11ca2535b2 Lazily instantiate CSS Rule declarations and selectors ObservableLists ! javafx-ui-common/src/com/sun/javafx/css/Rule.java Changeset: a45e03588887 Author: David Grieve Date: 2013-05-30 12:13 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/a45e03588887 RT-30818: avoid creating ObservableList in Rule (css performance tweak) ! javafx-ui-common/src/com/sun/javafx/css/Rule.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/src/javafx/scene/CssStyleHelper.java ! javafx-ui-common/test/unit/com/sun/javafx/css/Node_cssStyleMap_Test.java ! javafx-ui-common/test/unit/com/sun/javafx/css/RuleTest.java ! javafx-ui-common/test/unit/com/sun/javafx/css/SelectorPartitioningTest.java ! javafx-ui-common/test/unit/com/sun/javafx/css/StyleTest.java ! javafx-ui-common/test/unit/com/sun/javafx/css/TypeTest.java ! javafx-ui-common/test/unit/com/sun/javafx/css/parser/CSSParserTest.java Changeset: 46cd0e8ca5ae Author: David Grieve Date: 2013-05-31 13:50 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/46cd0e8ca5ae branch merge Changeset: 3450a1dac4a9 Author: David Grieve Date: 2013-05-31 17:15 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/3450a1dac4a9 RT-30817: sorting cascading styles was causing expansion of declarations. Lazily create and sort cascading style list. ! javafx-ui-common/src/com/sun/javafx/css/CascadingStyle.java ! javafx-ui-common/src/com/sun/javafx/css/CompoundSelector.java ! javafx-ui-common/src/com/sun/javafx/css/Selector.java ! javafx-ui-common/src/com/sun/javafx/css/SelectorPartitioning.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/src/com/sun/javafx/css/StyleMap.java ! javafx-ui-common/src/javafx/scene/CssStyleHelper.java ! javafx-ui-common/src/javafx/scene/doc-files/cssref.html ! javafx-ui-common/test/unit/com/sun/javafx/css/SelectorPartitioningTest.java Changeset: 2f5985406164 Author: leifs Date: 2013-06-01 17:39 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/2f5985406164 RT-28346: TextArea - Pressing ENTER/RETURN does not move cursor to new line ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TextAreaSkin.java Changeset: 374145c4e41e Author: jgiles Date: 2013-06-03 17:18 +1200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/374145c4e41e Unit test and partial fix for RT-29849: [TreeTableView] on edit start is fired many times ! javafx-ui-controls/src/javafx/scene/control/TableCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableCell.java ! javafx-ui-controls/test/com/sun/javafx/scene/control/infrastructure/VirtualFlowTestUtils.java ! javafx-ui-controls/test/javafx/scene/control/CellTest.java ! javafx-ui-controls/test/javafx/scene/control/ListViewKeyInputTest.java ! javafx-ui-controls/test/javafx/scene/control/TableViewKeyInputTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeTableViewKeyInputTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeViewKeyInputTest.java Changeset: b7cc945d9169 Author: jgiles Date: 2013-06-03 17:19 +1200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/b7cc945d9169 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt Changeset: 5a874c54b898 Author: raginip Date: 2013-06-03 16:09 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/5a874c54b898 RT-15797 : Accordion control doesn't size to scene correctly ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TitledPaneSkin.java Changeset: 93863dfb5745 Author: leifs Date: 2013-06-03 16:18 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/93863dfb5745 RT-27637: [TextField] Mouse click makes the caret disappear. ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TextFieldSkin.java Changeset: 1ee27e0ef269 Author: psomashe Date: 2013-06-04 00:16 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/1ee27e0ef269 RT-24105 TabPane renders content of all tabs even only one is active.Optimization loads only the initially selected tabs and others get loaded on selection. To load content of other tabs lazily - -Djavafx.tabpane.loadTabsLazily property can be used. To load the content of alll tabs with out any optimization, -Djavafx.tabpane.maintainfullscenegraph property can be used. ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: d59635859529 Author: psomashe Date: 2013-06-04 16:02 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/d59635859529 fix broken TabPaneTest ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: a2978f7aae56 Author: psomashe Date: 2013-06-04 23:14 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/a2978f7aae56 revert computePrefW/H of TabPaneSkin to return W/H based on content instead of a constant. ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: 2d44c792b77d Author: psomashe Date: 2013-06-05 00:01 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/2d44c792b77d Backed out changeset a2978f7aae56 ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: a6e13c635c15 Author: psomashe Date: 2013-06-05 00:06 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/a6e13c635c15 reverting changes to TabPaneSkin ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: 1e300104bbc6 Author: psomashe Date: 2013-06-05 00:06 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/1e300104bbc6 reverting changes to TabPaneSkin ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TabPaneSkin.java Changeset: 40836a4b4d85 Author: David Grieve Date: 2013-06-05 08:08 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/40836a4b4d85 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt ! build.properties ! javafx-ui-controls/src/javafx/scene/control/DatePicker.java ! javafx-ui-controls/src/javafx/scene/control/ListCell.java ! javafx-ui-controls/src/javafx/scene/control/TableCell.java ! javafx-ui-controls/src/javafx/scene/control/TableColumnBase.java ! javafx-ui-controls/src/javafx/scene/control/TreeCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableCell.java Changeset: 572b1ec2e971 Author: hudson Date: 2013-06-06 19:44 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/572b1ec2e971 Added tag 8.0-b93 for changeset 40836a4b4d85 ! .hgtags Changeset: 51ca8a8468e9 Author: mv157916 Date: 2013-06-08 21:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/51ca8a8468e9 RT-31017: Update the JDK build number to b93 in rt/build.properties file in the JavaFX 8 Master forest. ! build.properties Changeset: 29272e7e00ee Author: kcr Date: 2013-06-10 11:37 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/29272e7e00ee Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CCTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CompileHLSLTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CompileResourceTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/JavaHeaderTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/LinkTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/NativeCompileTask.groovy - javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedPainter.java - prism-common/src/com/sun/prism/render/CompletionListener.java - prism-common/src/com/sun/prism/render/RenderJob.java - prism-common/src/com/sun/prism/render/ToolkitInterface.java Changeset: 57b3705ef8cb Author: David Grieve Date: 2013-06-07 14:59 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/57b3705ef8cb RT-30985: associate strings for deserialization with stylesheet ! javafx-ui-common/src/com/sun/javafx/css/Rule.java ! javafx-ui-common/src/com/sun/javafx/css/Stylesheet.java From pedro.duquevieira at gmail.com Mon Jun 10 14:42:24 2013 From: pedro.duquevieira at gmail.com (Pedro Duque Vieira) Date: Mon, 10 Jun 2013 22:42:24 +0100 Subject: Tooltip is interfering with mouseEntered/mouseExited events Message-ID: Hi, I have a toolbar composed by a couple of buttons. The toolbar fades away when the mouse exits. The problem is that I have tooltips set up with the toolbar and sometimes they appear under the mouse which triggers a mouseExit event that makes the toolbar fade-away. My point is maybe the tooltips should be viewed by the API as a component that is part of the other component which they are set upon. In this situation I'm getting random mouse exits depending when whether the tooltip appears below the mouse or not. Cheers, -- Pedro Duque Vieira From zonski at gmail.com Mon Jun 10 15:13:55 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Tue, 11 Jun 2013 08:13:55 +1000 Subject: Tracking down an NPE Message-ID: Any chance someone from Oracle could tell me what the line of code is in com.sun.javafx.tools.packager.bundlers.BundleParams at line 390? Someone is getting a NullPointer on this line when using the maven plugin and I can't work out why. The line number is different in the Sun code vs the open sourced one. Cheers, Dan From danno.ferrin at shemnon.com Mon Jun 10 15:27:41 2013 From: danno.ferrin at shemnon.com (Danno Ferrin) Date: Mon, 10 Jun 2013 16:27:41 -0600 Subject: Tracking down an NPE In-Reply-To: References: Message-ID: At least one of your jars does not have a manifest: https://javafx-jira.kenai.com/browse/RT-24143 I'm tempted to get the JFX78 builds auto-deploying at least the javafx-ant jar to some repo so the build plugins can use JavaFX 8 deployment code on Java 7. On Mon, Jun 10, 2013 at 4:13 PM, Daniel Zwolenski wrote: > Any chance someone from Oracle could tell me what the line of code is in > com.sun.javafx.tools.packager.bundlers.BundleParams at line 390? > > Someone is getting a NullPointer on this line when using the maven plugin > and I can't work out why. The line number is different in the Sun code vs > the open sourced one. > > Cheers, > Dan > From zonski at gmail.com Mon Jun 10 15:38:06 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Tue, 11 Jun 2013 08:38:06 +1000 Subject: Tracking down an NPE In-Reply-To: References: Message-ID: Cool, thanks - so the native packager requires that every one of the JARs used in the app (even the third party ones not built as part of the app) have a manifest in them? That's going to be very nasty. Regarding getting the javafx-ant jars into a repo, I started down this road a while back and have now access to the OSS repo for groupID 'net.java.openjdk.openjfx'. I gave up actually deploying it when I realised there was a different javafx-ant.jar for each native platform. I wasn't able to build them all (and the Windows build was patchy at best anyway). Happy to work with you on getting them into that repo if you want. Just let me know where you're up to with it and what you need. On Tue, Jun 11, 2013 at 8:27 AM, Danno Ferrin wrote: > At least one of your jars does not have a manifest: > > https://javafx-jira.kenai.com/browse/RT-24143 > > I'm tempted to get the JFX78 builds auto-deploying at least the javafx-ant > jar to some repo so the build plugins can use JavaFX 8 deployment code on > Java 7. > > > On Mon, Jun 10, 2013 at 4:13 PM, Daniel Zwolenski wrote: > >> Any chance someone from Oracle could tell me what the line of code is in >> com.sun.javafx.tools.packager.bundlers.BundleParams at line 390? >> >> Someone is getting a NullPointer on this line when using the maven plugin >> and I can't work out why. The line number is different in the Sun code vs >> the open sourced one. >> >> Cheers, >> Dan >> > > From hang.vo at oracle.com Mon Jun 10 16:49:25 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 10 Jun 2013 23:49:25 +0000 Subject: hg: openjfx/8/graphics/rt: RT-29523: Upgrade to use PlatformLogger.Level instead of primitive int type Message-ID: <20130610234945.F12E24810D@hg.openjdk.java.net> Changeset: 4e76bc7f72ef Author: Felipe Heidrich Date: 2013-06-10 16:32 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/4e76bc7f72ef RT-29523: Upgrade to use PlatformLogger.Level instead of primitive int type ! glass/glass/src/com/sun/glass/ui/accessible/AccessibleLogger.java ! glass/glass/src/com/sun/glass/ui/lens/LensApplication.java ! glass/glass/src/com/sun/glass/ui/lens/LensClipboardDelegate.java ! glass/glass/src/com/sun/glass/ui/lens/LensDnDClipboard.java ! glass/glass/src/com/sun/glass/ui/lens/LensLogger.java ! glass/glass/src/com/sun/glass/ui/lens/LensSystemClipboard.java ! glass/glass/src/com/sun/glass/ui/lens/LensWindow.java ! javafx-beans/src/com/sun/javafx/binding/SelectBinding.java ! javafx-beans/test/com/sun/javafx/binding/SelectBindingTest.java ! javafx-ui-common/src/com/sun/javafx/accessible/AccessibleNode.java ! javafx-ui-common/src/com/sun/javafx/accessible/AccessibleStage.java ! javafx-ui-common/src/com/sun/javafx/css/StyleConverterImpl.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/src/com/sun/javafx/css/converters/EnumConverter.java ! javafx-ui-common/src/com/sun/javafx/css/parser/CSSParser.java ! javafx-ui-common/src/com/sun/javafx/scene/layout/region/Margins.java ! javafx-ui-common/src/com/sun/javafx/scene/traversal/ContainerTabOrder.java ! javafx-ui-common/src/com/sun/javafx/scene/traversal/Hueristic2D.java ! javafx-ui-common/src/com/sun/javafx/scene/traversal/TraversalEngine.java ! javafx-ui-common/src/com/sun/javafx/scene/traversal/WeightedClosestCorner.java ! javafx-ui-common/src/javafx/scene/CssStyleHelper.java ! javafx-ui-common/src/javafx/scene/Node.java ! javafx-ui-common/src/javafx/scene/Parent.java ! javafx-ui-common/src/javafx/scene/Scene.java ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/accessible/AccessibleCheckBox.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/accessible/AccessibleControl.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/behavior/ListCellBehavior.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/behavior/TreeCellBehavior.java ! javafx-ui-controls/src/javafx/scene/control/Control.java ! javafx-ui-controls/src/javafx/scene/control/PopupControl.java ! javafx-ui-controls/src/javafx/scene/control/cell/PropertyValueFactory.java ! javafx-ui-controls/src/javafx/scene/control/cell/TreeItemPropertyValueFactory.java ! javafx-ui-controls/test/javafx/scene/control/ControlTest.java From John_Smith at symantec.com Mon Jun 10 17:11:01 2013 From: John_Smith at symantec.com (John Smith) Date: Mon, 10 Jun 2013 17:11:01 -0700 Subject: Tooltip is interfering with mouseEntered/mouseExited events In-Reply-To: References: Message-ID: <411E73D23DEC4C46BA48F2B6D8BF3D22167D41B8D4@TUS1XCHEVSPIN34.SYMC.SYMANTEC.COM> A somewhat related inconvenience I have with tooltips is that if you put a tooltip on a button, then hover the mouse so that the tooltip shows up, you can't click to activate the button unless you move the mouse pixel to left or top because the resultant click will go to the tooltip and not to the button. It's especially strange on Modena, because there the tooltip has a rounded corner, so you visibly aren't clicking on the tooltip, though you are clicking in the tooltip's rectangular bounds. Some examples of how other apps handle tooltips: In NetBeans the tooltip shows up below the button rather than at the mouse position - this has the advantage of not obscuring the thing which the tooltip is providing information on. Intellij Idea is similar, except that it's tooltip is a callout has with a little triangular area which overlaps the thing the tooltip is for. If you click in the overlapped area, the underlying node still takes the expected action. Microsoft apps like Outlook show tooltips below the things they are providing info on (or above if there is not enough screen area below to show the tooltip). -----Original Message----- From: openjfx-dev-bounces at openjdk.java.net [mailto:openjfx-dev-bounces at openjdk.java.net] On Behalf Of Pedro Duque Vieira Sent: Monday, June 10, 2013 2:42 PM To: OpenJFX Mailing List Subject: Tooltip is interfering with mouseEntered/mouseExited events Hi, I have a toolbar composed by a couple of buttons. The toolbar fades away when the mouse exits. The problem is that I have tooltips set up with the toolbar and sometimes they appear under the mouse which triggers a mouseExit event that makes the toolbar fade-away. My point is maybe the tooltips should be viewed by the API as a component that is part of the other component which they are set upon. In this situation I'm getting random mouse exits depending when whether the tooltip appears below the mouse or not. Cheers, -- Pedro Duque Vieira From mark.howe at oracle.com Mon Jun 10 17:42:45 2013 From: mark.howe at oracle.com (Mark Howe) Date: Mon, 10 Jun 2013 17:42:45 -0700 Subject: Tracking down an NPE In-Reply-To: References: Message-ID: On Jun 10, 2013, at 3:38 PM, Daniel Zwolenski wrote: > Cool, thanks - so the native packager requires that every one of the JARs > used in the app (even the third party ones not built as part of the app) > have a manifest in them? That's going to be very nasty. > That was fixed in August, for both fx2 and fx8 (I'm only looking at the oracle repos), should only require the manifest for the main jar. > Regarding getting the javafx-ant jars into a repo, I started down this road > a while back and have now access to the OSS repo for groupID > 'net.java.openjdk.openjfx'. > > I gave up actually deploying it when I realised there was a different > javafx-ant.jar for each native platform. I wasn't able to build them all > (and the Windows build was patchy at best anyway). This should be easier now, the native launcher for the windows (launcher-win) build no longer uses Visual Studio project, it's now just part of the ant script (fx8 only). Mark > > Happy to work with you on getting them into that repo if you want. Just let > me know where you're up to with it and what you need. > > > > > On Tue, Jun 11, 2013 at 8:27 AM, Danno Ferrin wrote: > >> At least one of your jars does not have a manifest: >> >> https://javafx-jira.kenai.com/browse/RT-24143 >> >> I'm tempted to get the JFX78 builds auto-deploying at least the javafx-ant >> jar to some repo so the build plugins can use JavaFX 8 deployment code on >> Java 7. >> >> >> On Mon, Jun 10, 2013 at 4:13 PM, Daniel Zwolenski wrote: >> >>> Any chance someone from Oracle could tell me what the line of code is in >>> com.sun.javafx.tools.packager.bundlers.BundleParams at line 390? >>> >>> Someone is getting a NullPointer on this line when using the maven plugin >>> and I can't work out why. The line number is different in the Sun code vs >>> the open sourced one. >>> >>> Cheers, >>> Dan >>> >> >> From hang.vo at oracle.com Mon Jun 10 18:06:15 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 11 Jun 2013 01:06:15 +0000 Subject: hg: openjfx/8/graphics/rt: [TEST-ONLY] Disable failing unit test as a workaround for RT-31042 Message-ID: <20130611010633.452D548112@hg.openjdk.java.net> Changeset: b7d5ab1bf17f Author: kcr Date: 2013-06-10 17:51 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/b7d5ab1bf17f [TEST-ONLY] Disable failing unit test as a workaround for RT-31042 ! javafx-ui-common/test/unit/com/sun/javafx/css/parser/CSSParserTest.java From krueger at lesspain.de Mon Jun 10 23:23:08 2013 From: krueger at lesspain.de (=?UTF-8?Q?Robert_Kr=C3=BCger?=) Date: Tue, 11 Jun 2013 08:23:08 +0200 Subject: Status or JDK/JFX8 builds for arm Linux In-Reply-To: <50B5FFDB-0B19-48E5-A5DE-92E781A0CB33@oracle.com> References: <91BDAA89-559C-4A4F-8DE4-ADF34E7E92B3@oracle.com> <50B5FFDB-0B19-48E5-A5DE-92E781A0CB33@oracle.com> Message-ID: On Mon, Jun 10, 2013 at 8:28 PM, Daniel Blaukopf wrote: > > > On 10 ???? 2013, at 19:16, Richard Bair wrote: > >> There should now be weekly builds going out. > > Not yet but stay tuned. > >> Daniel do you have a link to where those are? > > The December snapshot is still the latest. It won't be long before an update. > > Daniel >> >> Richard >> >> On Jun 8, 2013, at 9:22 AM, Robert Kr?ger wrote: >> >>> Hi, >>> >>> I would like to check out how well JFX8 works on the Raspberry Pi and >>> I only found the build from December. Is there a place were one can >>> find more up-to-date builds or do I have to build it myself? >>> >>> Thanks, >>> >>> Robert >> Great, thanks for the info! Will you announce it on this list? From hang.vo at oracle.com Tue Jun 11 00:18:17 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 11 Jun 2013 07:18:17 +0000 Subject: hg: openjfx/8/graphics/rt: RT-17666 Webview and HTMLEditor should support printing their content Message-ID: <20130611071838.19EDF48118@hg.openjdk.java.net> Changeset: 17fa39d79a6f Author: peterz Date: 2013-06-11 11:14 +0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/17fa39d79a6f RT-17666 Webview and HTMLEditor should support printing their content ! webview/native/Source/WebCore/mapfile-macosx ! webview/native/Source/WebCore/mapfile-vers ! webview/native/Source/WebCore/platform/java/WebPage.cpp ! webview/native/Source/WebCore/platform/java/WebPage.h ! webview/src/com/sun/javafx/scene/web/skin/HTMLEditorSkin.java ! webview/src/com/sun/webkit/WebPage.java ! webview/src/javafx/scene/web/HTMLEditor.java ! webview/src/javafx/scene/web/WebEngine.java From hang.vo at oracle.com Tue Jun 11 03:51:29 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 11 Jun 2013 10:51:29 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130611105202.8AB7A48128@hg.openjdk.java.net> Changeset: 06aad33a6e6b Author: Martin Sladecek Date: 2013-06-11 12:39 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/06aad33a6e6b RT-30902 FlowPane, TilePane and HBox may not handle the baseline correctly ! javafx-ui-common/src/javafx/scene/layout/AnchorPane.java ! javafx-ui-common/src/javafx/scene/layout/BorderPane.java ! javafx-ui-common/src/javafx/scene/layout/FlowPane.java ! javafx-ui-common/src/javafx/scene/layout/GridPane.java ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-common/src/javafx/scene/layout/TilePane.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java ! javafx-ui-common/test/unit/javafx/scene/layout/GridPaneTest.java ! javafx-ui-common/test/unit/javafx/scene/layout/RegionTest.java Changeset: f236bb3f7fe6 Author: Martin Sladecek Date: 2013-06-11 12:40 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/f236bb3f7fe6 Automated merge with file:///home/martin/work/jfx-80-sync/rt ! javafx-ui-common/src/javafx/scene/layout/Region.java From zonski at gmail.com Tue Jun 11 05:27:51 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Tue, 11 Jun 2013 22:27:51 +1000 Subject: NullPointer in BaseGraphics.drawTextureVO Message-ID: Can anyone tell me what might cause the exception below in Prism? It's from an app that captures video via a native library (LTI-CIVIL) and then converts that image to JFX display via: BufferedImage buffImage = AWTImageConverter.toBufferedImage(image); jfxImage = javafx.scene.image.Image.impl_fromExternalImage(buffImage); previewView.setImage(jfxImage); java.lang.NullPointerException at com.sun.prism.impl.BaseGraphics.drawTextureVO(BaseGraphics.java:365) at com.sun.prism.impl.BaseGraphics.drawTexture(BaseGraphics.java:334) at com.sun.prism.impl.ps.BaseShaderGraphics.drawTexture(BaseShaderGraphics.java:103) at com.sun.javafx.sg.prism.NGImageView.renderContent(NGImageView.java:315) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) at com.sun.javafx.tk.quantum.PaintRunnable.doPaint(PaintRunnable.java:214) at com.sun.javafx.tk.quantum.PaintRunnable.paintImpl(PaintRunnable.java:145) at com.sun.javafx.tk.quantum.PaintRunnable.run(PaintRunnable.java:349) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178) at com.sun.prism.render.RenderJob.run(RenderJob.java:29) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:101) at java.lang.Thread.run(Thread.java:722) From martin.sladecek at oracle.com Tue Jun 11 05:47:18 2013 From: martin.sladecek at oracle.com (Martin Sladecek) Date: Tue, 11 Jun 2013 05:47:18 -0700 (PDT) Subject: [API Review]: Add "margin" property to node and make it styleable from CSS Message-ID: <51B71C56.3070806@oracle.com> Hi, JIRA issue: https://javafx-jira.kenai.com/browse/RT-27785 This API change is about adding marginProperty() to Node that would be then used by layout Panes instead of the current constraints (static methods getMargin/setMargin). The getMargin/setMargin on these Panes will just delegate to the property. Unfortunately, it's not possible to update Region.layoutInArea and Region.positionInArea methods to use child.getMargin() internally, as there's an overloaded method (in both cases) that already doesn't have Margin in it's parameters and uses Insets.EMPTY instead. Changing this to child.getMargin() might cause backward incompatibility issues. Thanks, -Martin From lehmann at media-interactive.de Tue Jun 11 06:00:13 2013 From: lehmann at media-interactive.de (Werner Lehmann) Date: Tue, 11 Jun 2013 15:00:13 +0200 Subject: NullPointer in BaseGraphics.drawTextureVO In-Reply-To: References: Message-ID: <51B71F5D.1090303@media-interactive.de> Is this the same as SwingFXUtils.toFXImage? On 11.06.2013 14:27, Daniel Zwolenski wrote: > BufferedImage buffImage = AWTImageConverter.toBufferedImage(image); > jfxImage = javafx.scene.image.Image.impl_fromExternalImage(buffImage); > previewView.setImage(jfxImage); From tbee at tbee.org Tue Jun 11 06:01:31 2013 From: tbee at tbee.org (Tom Eugelink) Date: Tue, 11 Jun 2013 15:01:31 +0200 Subject: [API Review]: Add "margin" property to node and make it styleable from CSS In-Reply-To: <51B71C56.3070806@oracle.com> References: <51B71C56.3070806@oracle.com> Message-ID: <51B71FAB.2000309@tbee.org> I know I'm reiterating, but just to keep the point alive; personally I would still prefer to have such information placed in an explicit layout constraint class. node.setMargin(x); layout.getChildren().add(node); vs layout.add(node, new Constraint().margin(x)); It also prevents the Node class from bloating. On 2013-06-11 14:47, Martin Sladecek wrote: > Hi, > > JIRA issue: https://javafx-jira.kenai.com/browse/RT-27785 > This API change is about adding marginProperty() to Node that would be then used by layout Panes instead of the current constraints (static methods getMargin/setMargin). The getMargin/setMargin on these Panes will just delegate to the property. > > Unfortunately, it's not possible to update Region.layoutInArea and Region.positionInArea methods to use child.getMargin() internally, as there's an overloaded method (in both cases) that already doesn't have Margin in it's parameters and uses Insets.EMPTY instead. Changing this to child.getMargin() might cause backward incompatibility issues. > > Thanks, > -Martin From kevin.rushforth at oracle.com Tue Jun 11 06:10:47 2013 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Tue, 11 Jun 2013 06:10:47 -0700 Subject: NullPointer in BaseGraphics.drawTextureVO In-Reply-To: References: Message-ID: <51B721D7.9030206@oracle.com> Is this from FX 2.2.x or FX 8? The stack trace suggests an earlier version of FX. The only thing I can think of off hand is that the HW texture couldn't be created, probably because you ran out of resources. There are a few issues relating to this, which we believe are fixed in FX 8 with the implementation of RT-25323. -- Kevin Daniel Zwolenski wrote: > Can anyone tell me what might cause the exception below in Prism? > > It's from an app that captures video via a native library (LTI-CIVIL) and > then converts that image to JFX display via: > > BufferedImage buffImage = AWTImageConverter.toBufferedImage(image); > jfxImage = javafx.scene.image.Image.impl_fromExternalImage(buffImage); > previewView.setImage(jfxImage); > > > java.lang.NullPointerException > at com.sun.prism.impl.BaseGraphics.drawTextureVO(BaseGraphics.java:365) > at com.sun.prism.impl.BaseGraphics.drawTexture(BaseGraphics.java:334) > at > com.sun.prism.impl.ps.BaseShaderGraphics.drawTexture(BaseShaderGraphics.java:103) > at com.sun.javafx.sg.prism.NGImageView.renderContent(NGImageView.java:315) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) > at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) > at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) > at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) > at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) > at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) > at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) > at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) > at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) > at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) > at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) > at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) > at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) > at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) > at com.sun.javafx.tk.quantum.PaintRunnable.doPaint(PaintRunnable.java:214) > at com.sun.javafx.tk.quantum.PaintRunnable.paintImpl(PaintRunnable.java:145) > at com.sun.javafx.tk.quantum.PaintRunnable.run(PaintRunnable.java:349) > at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) > at > java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351) > at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178) > at com.sun.prism.render.RenderJob.run(RenderJob.java:29) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) > at > com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:101) > at java.lang.Thread.run(Thread.java:722) > From kevin.rushforth at oracle.com Tue Jun 11 06:18:21 2013 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Tue, 11 Jun 2013 06:18:21 -0700 Subject: NullPointer in BaseGraphics.drawTextureVO In-Reply-To: <51B71F5D.1090303@media-interactive.de> References: <51B71F5D.1090303@media-interactive.de> Message-ID: <51B7239D.4060109@oracle.com> I missed the fact that this is using the non-public impl_fromExternalImage() method. This was replaced in FX 2.2 by SwingFXUtils.toFXImage as Werner mentions and has been removed from FX 8 entirely. One more thing to check is that jfxImage is non-null, although it is still more likely than not that you are running out of resources. -- Kevin Werner Lehmann wrote: > Is this the same as SwingFXUtils.toFXImage? > > On 11.06.2013 14:27, Daniel Zwolenski wrote: >> BufferedImage buffImage = AWTImageConverter.toBufferedImage(image); >> jfxImage = >> javafx.scene.image.Image.impl_fromExternalImage(buffImage); >> previewView.setImage(jfxImage); From daniel.blaukopf at oracle.com Tue Jun 11 06:21:09 2013 From: daniel.blaukopf at oracle.com (Daniel Blaukopf) Date: Tue, 11 Jun 2013 16:21:09 +0300 Subject: Status or JDK/JFX8 builds for arm Linux In-Reply-To: References: <91BDAA89-559C-4A4F-8DE4-ADF34E7E92B3@oracle.com> <50B5FFDB-0B19-48E5-A5DE-92E781A0CB33@oracle.com> Message-ID: <51B72445.3070009@oracle.com> From zonski at gmail.com Tue Jun 11 06:25:52 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Tue, 11 Jun 2013 23:25:52 +1000 Subject: NullPointer in BaseGraphics.drawTextureVO In-Reply-To: <51B721D7.9030206@oracle.com> References: <51B721D7.9030206@oracle.com> Message-ID: This is an older version, probably JFX from around jdk1.7.0_02. I'm running it now on jdk1.7.0_21 to see what happens (takes about an hour to get to the point of failure, which is why I didn't pick it up when I wrote the code originally). Unfortunately chunks of the system are broken when it runs on this newer code. Lots of backwards compatibility breaks, especially visual ones with CSS that just make it screwy. This is an old project and I don't really want to be touching this code but they have this video capture bug which is killing everything. I take it there's no way to avoid the resources issue in the old JFX, it's just a plain and simple bug? On Tue, Jun 11, 2013 at 11:10 PM, Kevin Rushforth < kevin.rushforth at oracle.com> wrote: > Is this from FX 2.2.x or FX 8? The stack trace suggests an earlier version > of FX. The only thing I can think of off hand is that the HW texture > couldn't be created, probably because you ran out of resources. There are a > few issues relating to this, which we believe are fixed in FX 8 with the > implementation of RT-25323. > > -- Kevin > > > > Daniel Zwolenski wrote: > >> Can anyone tell me what might cause the exception below in Prism? >> >> It's from an app that captures video via a native library (LTI-CIVIL) and >> then converts that image to JFX display via: >> >> BufferedImage buffImage = AWTImageConverter.**toBufferedImage(image); >> jfxImage = javafx.scene.image.Image.impl_** >> fromExternalImage(buffImage); >> previewView.setImage(jfxImage)**; >> >> >> java.lang.NullPointerException >> at com.sun.prism.impl.**BaseGraphics.drawTextureVO(** >> BaseGraphics.java:365) >> at com.sun.prism.impl.**BaseGraphics.drawTexture(**BaseGraphics.java:334) >> at >> com.sun.prism.impl.ps.**BaseShaderGraphics.**drawTexture(** >> BaseShaderGraphics.java:103) >> at com.sun.javafx.sg.prism.**NGImageView.renderContent(** >> NGImageView.java:315) >> at com.sun.javafx.sg.prism.**NGNode.doRender(NGNode.java:**185) >> at com.sun.javafx.sg.prism.**NGNode.doRender(NGNode.java:**39) >> at com.sun.javafx.sg.BaseNode.**render(BaseNode.java:1139) >> at com.sun.javafx.sg.prism.**NGGroup.renderContent(NGGroup.**java:205) >> at com.sun.javafx.sg.prism.**NGRegion.renderContent(**NGRegion.java:420) >> at com.sun.javafx.sg.prism.**NGNode.doRender(NGNode.java:**185) >> at com.sun.javafx.sg.prism.**NGNode.doRender(NGNode.java:**39) >> at com.sun.javafx.sg.BaseNode.**render(BaseNode.java:1139) >> at com.sun.javafx.sg.prism.**NGGroup.renderContent(NGGroup.**java:205) >> at com.sun.javafx.sg.prism.**NGRegion.renderContent(**NGRegion.java:420) >> at com.sun.javafx.sg.prism.**NGNode.doRender(NGNode.java:**185) >> at com.sun.javafx.sg.prism.**NGNode.doRender(NGNode.java:**39) >> at com.sun.javafx.sg.BaseNode.**render(BaseNode.java:1139) >> at com.sun.javafx.sg.prism.**NGGroup.renderContent(NGGroup.**java:205) >> at com.sun.javafx.sg.prism.**NGRegion.renderContent(**NGRegion.java:420) >> at com.sun.javafx.sg.prism.**NGNode.doRender(NGNode.java:**185) >> at com.sun.javafx.sg.prism.**NGNode.doRender(NGNode.java:**39) >> at com.sun.javafx.sg.BaseNode.**render(BaseNode.java:1139) >> at com.sun.javafx.sg.prism.**NGGroup.renderContent(NGGroup.**java:205) >> at com.sun.javafx.sg.prism.**NGRegion.renderContent(**NGRegion.java:420) >> at com.sun.javafx.sg.prism.**NGNode.doRender(NGNode.java:**185) >> at com.sun.javafx.sg.prism.**NGNode.doRender(NGNode.java:**39) >> at com.sun.javafx.sg.BaseNode.**render(BaseNode.java:1139) >> at com.sun.javafx.tk.quantum.**PaintRunnable.doPaint(** >> PaintRunnable.java:214) >> at com.sun.javafx.tk.quantum.**PaintRunnable.paintImpl(** >> PaintRunnable.java:145) >> at com.sun.javafx.tk.quantum.**PaintRunnable.run(** >> PaintRunnable.java:349) >> at java.util.concurrent.**Executors$RunnableAdapter.** >> call(Executors.java:471) >> at >> java.util.concurrent.**FutureTask$Sync.**innerRunAndReset(FutureTask.** >> java:351) >> at java.util.concurrent.**FutureTask.runAndReset(**FutureTask.java:178) >> at com.sun.prism.render.**RenderJob.run(RenderJob.java:**29) >> at >> java.util.concurrent.**ThreadPoolExecutor.runWorker(** >> ThreadPoolExecutor.java:1110) >> at >> java.util.concurrent.**ThreadPoolExecutor$Worker.run(** >> ThreadPoolExecutor.java:603) >> at >> com.sun.javafx.tk.quantum.**QuantumRenderer$**PipelineRunnable.run(** >> QuantumRenderer.java:101) >> at java.lang.Thread.run(Thread.**java:722) >> >> > From martin.sladecek at oracle.com Tue Jun 11 06:36:27 2013 From: martin.sladecek at oracle.com (Martin Sladecek) Date: Tue, 11 Jun 2013 15:36:27 +0200 Subject: [API Review]: Add "margin" property to node and make it styleable from CSS In-Reply-To: <51B71FAB.2000309@tbee.org> References: <51B71C56.3070806@oracle.com> <51B71FAB.2000309@tbee.org> Message-ID: <51B727DB.8050209@oracle.com> On 06/11/2013 03:01 PM, Tom Eugelink wrote: > > I know I'm reiterating, but just to keep the point alive; personally I > would still prefer to have such information placed in an explicit > layout constraint class. > > node.setMargin(x); layout.getChildren().add(node); > vs > layout.add(node, new Constraint().margin(x)); > > It also prevents the Node class from bloating. Means new *Constraint class and new "add" method for each layout *Pane class. Also one of the nice side-effects of having this as a property is that we can style it using "-fx-margin" CSS property. Regards, -Martin From tbee at tbee.org Tue Jun 11 06:49:22 2013 From: tbee at tbee.org (Tom Eugelink) Date: Tue, 11 Jun 2013 15:49:22 +0200 Subject: [API Review]: Add "margin" property to node and make it styleable from CSS In-Reply-To: <51B727DB.8050209@oracle.com> References: <51B71C56.3070806@oracle.com> <51B71FAB.2000309@tbee.org> <51B727DB.8050209@oracle.com> Message-ID: <51B72AE2.3000704@tbee.org> On 2013-06-11 15:36, Martin Sladecek wrote: > Means new *Constraint class and new "add" method for each layout *Pane class. Also one of the nice side-effects of having this as a property is that we can style it using "-fx-margin" CSS property. Yup, constraint classes with values that are relevant for / supported by the used layout. The one layout may support totally different layout parameters than another. By adding this to the node, basically all layout must be modified to support this. Tom From kevin.rushforth at oracle.com Tue Jun 11 07:55:34 2013 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Tue, 11 Jun 2013 07:55:34 -0700 Subject: NullPointer in BaseGraphics.drawTextureVO In-Reply-To: References: <51B721D7.9030206@oracle.com> Message-ID: <51B73A66.6050305@oracle.com> > I take it there's no way to avoid the resources issue in the old JFX, > it's just a plain and simple bug? I don't know of a way to completely avoid it. As far as we know there aren't any actual leaks in the more recent FX 2.2.x texture code, but the resource disposal is not deterministic and if you hit the limit of texture memory it does not recover gracefully (or at all). Jim might have more insight, since he implemented the new texture management system for FX 8.; -- Kevin Daniel Zwolenski wrote: > This is an older version, probably JFX from around jdk1.7.0_02. > > I'm running it now on jdk1.7.0_21 to see what happens (takes about an > hour to get to the point of failure, which is why I didn't pick it up > when I wrote the code originally). > > Unfortunately chunks of the system are broken when it runs on this > newer code. Lots of backwards compatibility breaks, especially visual > ones with CSS that just make it screwy. This is an old project and I > don't really want to be touching this code but they have this video > capture bug which is killing everything. > > I take it there's no way to avoid the resources issue in the old JFX, > it's just a plain and simple bug? > > > > On Tue, Jun 11, 2013 at 11:10 PM, Kevin Rushforth > > wrote: > > Is this from FX 2.2.x or FX 8? The stack trace suggests an earlier > version of FX. The only thing I can think of off hand is that the > HW texture couldn't be created, probably because you ran out of > resources. There are a few issues relating to this, which we > believe are fixed in FX 8 with the implementation of RT-25323. > > -- Kevin > > > > Daniel Zwolenski wrote: > > Can anyone tell me what might cause the exception below in Prism? > > It's from an app that captures video via a native library > (LTI-CIVIL) and > then converts that image to JFX display via: > > BufferedImage buffImage = > AWTImageConverter.toBufferedImage(image); > jfxImage = > javafx.scene.image.Image.impl_fromExternalImage(buffImage); > previewView.setImage(jfxImage); > > > java.lang.NullPointerException > at > com.sun.prism.impl.BaseGraphics.drawTextureVO(BaseGraphics.java:365) > at > com.sun.prism.impl.BaseGraphics.drawTexture(BaseGraphics.java:334) > at > com.sun.prism.impl.ps > .BaseShaderGraphics.drawTexture(BaseShaderGraphics.java:103) > at > com.sun.javafx.sg.prism.NGImageView.renderContent(NGImageView.java:315) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) > at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) > at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) > at > com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) > at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) > at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) > at > com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) > at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) > at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) > at > com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) > at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) > at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) > at > com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) > at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) > at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) > at > com.sun.javafx.tk.quantum.PaintRunnable.doPaint(PaintRunnable.java:214) > at > com.sun.javafx.tk.quantum.PaintRunnable.paintImpl(PaintRunnable.java:145) > at > com.sun.javafx.tk.quantum.PaintRunnable.run(PaintRunnable.java:349) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) > at > java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351) > at > java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178) > at com.sun.prism.render.RenderJob.run(RenderJob.java:29) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) > at > com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:101) > at java.lang.Thread.run(Thread.java:722) > > > From David.Hill at Oracle.com Tue Jun 11 08:42:54 2013 From: David.Hill at Oracle.com (David Hill) Date: Tue, 11 Jun 2013 11:42:54 -0400 Subject: Update on the FullScreen ESC API proposal. Message-ID: <51B7457E.60301@Oracle.com> Richard has proposed an API for the FullScreen/ESC/Overlay issue in https://javafx-jira.kenai.com/browse/RT-15314 The proposal is pasted below, please consider watching/updating in the jira with comments. Dave /** * Specifies what KeyCombination will allow the user to exit full screen mode. * A value of KeyCombination.NO_MATCH will not match any KeyEvent and will make it so * the user is not able to escape from Full Screen mode. A value of null means that * the default platform specific key combination should be used. */ public final void setFullScreenExitKeyCombination(KeyCombination keyCombination); public final KeyCombination getFullScreenExitKeyCombination(); public final ObjectProperty fullScreenExitKeyProperty(); /** * Specifies the text to show when a user enters full screen mode, usually used * to indicate the way a user should go about exiting out of full screen mode. A * value of null will result in the default per-locale message being displayed. If set * to the empty string, then no message will be displayed. */ public final void setFullScreenExitHint(String value); public final String getFullScreenExitHint(); public final BooleanProperty fullScreenExitHintProperty(); We would also add (as the JavaDocs above indicate) a NO_MATCH public static final KeyCombination to KeyCombination, which would be a KeyCombination who's "match" always returns false, thereby never matching anything. This API allows you to solve the following use cases in, what I think, is a pretty minimally invasive manner: * I want to customize what key is used to exit * stage.setFullScreenExitKeyCombination(new KeyCharacterCombination("w", KeyCombination.CONTROL_DOWN)); Note that this should also play into the default exit hint text, such that it should now say "CTRL+W" instead of "ESC" * I want to customize the displayed hint * stage.setFullScreenExitHint("Don't even think about leaving this game!"); * I want to show my own exit hint * stage.setFullScreenExitHint(""); // then in your own code construct your own message * I want to hide the exit hint but still allow the user to exit * stage.setFullScreenExitHint(""); * I want to disallow the user from exiting full screen * stage.setFullScreenExitKeyCombination(KeyCombination.NO_MATCH); * I want to restore the default exit hint * stage.setFullScreenExitHint("Some hint"); stage.setFullScreenExitHint(null); // restore to default Changing either property would result in a SecurityException when necessary by an installed SecurityManager. Note that we could also have a command line property: -Djavafx.fullScreenExitEnabled=false which would ignore these settings and turn off exiting in all cases. I'm not sure that it is important to have a system property for this with proper API also being available, so I would opt to just go with the API for now and add the system property later if we want? Alternatively we could go with -Djavafx.stage.fullScreenDefault=disabled or some other way to specify that the default behavior is disabled, but if a specific stage has provided a different default key combination / hint then we'll use that instead. Or we could add API to Application later which would be applicable to all Stages. But for now I would start with just the API on Stage and see how far that takes us. David Hill Java Embedded Development One of the keys to happiness is a bad memory. -- Rita Mae Brown From lehmann at media-interactive.de Tue Jun 11 09:21:59 2013 From: lehmann at media-interactive.de (Werner Lehmann) Date: Tue, 11 Jun 2013 18:21:59 +0200 Subject: Update on the FullScreen ESC API proposal. In-Reply-To: <51B7457E.60301@Oracle.com> References: <51B7457E.60301@Oracle.com> Message-ID: <51B74EA7.4060202@media-interactive.de> The only usecase possibly missing is: - customize the hint while still naming the key combination, and - keep the default key combination. In this case you wouldn't know the default key combination since the docs do not guarantee it to be ESC and you couldn't put it in the customized hint. If the combination property was set to whatever the default is instead of null (maybe a platform specific combination), we wouldn't need NO_MATCH and that little problem goes away. Ok, a null combination would then turn it off. Not a showstopper for me, just wanted to mention it. Werner On 11.06.2013 17:42, David Hill wrote: > * I want to customize the displayed hint * > stage.setFullScreenExitHint("Don't even think about leaving this game!"); From hang.vo at oracle.com Tue Jun 11 13:49:11 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 11 Jun 2013 20:49:11 +0000 Subject: hg: openjfx/8/graphics/rt: Implement mesh skinning for triangle meshes using maya files as input. Message-ID: <20130611204931.E74C84814B@hg.openjdk.java.net> Changeset: 4b1d8b929927 Author: axlee at AXLEE-LAP Date: 2013-06-11 12:10 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/4b1d8b929927 Implement mesh skinning for triangle meshes using maya files as input. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/shape3d/SkinningTriangleMesh.java From hang.vo at oracle.com Tue Jun 11 14:08:31 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 11 Jun 2013 21:08:31 +0000 Subject: hg: openjfx/8/controls/rt: 70 new changesets Message-ID: <20130611212303.0BFB54814E@hg.openjdk.java.net> Changeset: 572b1ec2e971 Author: hudson Date: 2013-06-06 19:44 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/572b1ec2e971 Added tag 8.0-b93 for changeset 40836a4b4d85 ! .hgtags Changeset: 51ca8a8468e9 Author: mv157916 Date: 2013-06-08 21:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/51ca8a8468e9 RT-31017: Update the JDK build number to b93 in rt/build.properties file in the JavaFX 8 Master forest. ! build.properties Changeset: 4fcbd4317b9b Author: David Grieve Date: 2013-06-11 14:17 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/4fcbd4317b9b Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt Changeset: eb4b66ebb62c Author: Yao Wang Date: 2013-06-04 14:21 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/eb4b66ebb62c RT-29890 Rendering Artifact on Cylinder and Sphere ! javafx-ui-common/src/javafx/scene/shape/Cylinder.java ! javafx-ui-common/src/javafx/scene/shape/Sphere.java Changeset: 06fc41c8f8b1 Author: Alexander Kouznetsov Date: 2013-06-04 15:10 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/06fc41c8f8b1 3DViewer: Improved optimizer to remove only middle KeyValues of a repeating sequences ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 3efe9d22038b Author: Alexander Kouznetsov Date: 2013-06-04 15:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/3efe9d22038b 3DViewer: Not comparing interpolators or KeyValues before fix for RT-30891 is in. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 6b3080191250 Author: dmasada Date: 2013-06-04 15:39 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/6b3080191250 RT-30913 Add Modena and 3DViewer to automated build ! apps/build.xml ! apps/experiments/3DViewer/build.xml ! apps/experiments/Modena/build.xml ! apps/experiments/Modena/nbproject/project.properties + apps/experiments/build.xml Changeset: 39089954dc77 Author: "Jasper Potts" Date: 2013-06-04 13:14 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/39089954dc77 3D Viewer App: Added optimize and Java Source export ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/javasource/JavaSourceExporter.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Importer3D.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/ContentModel.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/main.fxml Changeset: 597c09e7d90d Author: "Jasper Potts" Date: 2013-06-04 16:59 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/597c09e7d90d 3D Viewer App: Added timeline controls and display screen ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/ContentModel.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/TimelineController.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/TimelineDisplay.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/main.fxml ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/viewer.css + apps/experiments/3DViewer/src/test/java/com/javafx/experiments/exporters/javasource/JavaSourceExporterTestApp.java Changeset: 1b69050a634b Author: "Jasper Potts" Date: 2013-06-04 16:59 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/1b69050a634b Merge ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 4d270a8b1c08 Author: Martin Sladecek Date: 2013-06-05 11:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/4d270a8b1c08 [JAVADOC] RT-30848 Missing documentation of Region.layoutInArea + since tag to Parent#requestParentLayout ! javafx-ui-common/src/javafx/scene/Parent.java ! javafx-ui-common/src/javafx/scene/layout/Region.java Changeset: 1960366c3157 Author: Martin Sladecek Date: 2013-06-05 11:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/1960366c3157 Automated merge with file:///home/martin/work/jfx-80-sync/rt Changeset: d8cc9c99d9f4 Author: Martin Sladecek Date: 2013-06-05 11:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/d8cc9c99d9f4 Automated merge with file:///home/martin/work/jfx-80-sync/rt Changeset: 8bebc4d79bfe Author: Martin Sladecek Date: 2013-06-05 13:43 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/8bebc4d79bfe RT-30831 Unsorted mode in the SortedList ! javafx-beans/src/javafx/collections/transformation/SortedList.java ! javafx-beans/test/javafx/collections/SortedListTest.java Changeset: 82df4606a165 Author: Martin Sladecek Date: 2013-06-05 13:43 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/82df4606a165 merge Changeset: 411a75a54143 Author: Martin Soch Date: 2013-06-05 15:10 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/411a75a54143 SW pipeline: fix for performance regression in image rendering (RT-30710) ! prism-sw-native/src/JPiscesRenderer.c ! prism-sw-native/src/PiscesBlit.c Changeset: bb8e96b8b2b3 Author: Martin Soch Date: 2013-06-05 15:14 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/bb8e96b8b2b3 SW pipeline: removing default comments from SWArgbPreTexture class ! prism-sw/src/com/sun/prism/sw/SWArgbPreTexture.java Changeset: 54446b832921 Author: Martin Soch Date: 2013-06-05 15:16 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/54446b832921 merge Changeset: cfc2addd8247 Author: Radko Najman Date: 2013-06-05 15:39 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/cfc2addd8247 Layouts - getChildren() optimization ! javafx-ui-common/src/javafx/scene/layout/AnchorPane.java ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/StackPane.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java Changeset: 18e84f5dbf41 Author: kcr Date: 2013-06-05 09:53 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/18e84f5dbf41 RT-30916 Winlauncher.cpp failing to compile with Gradle Contributed-by: Mark Howe Reviewed-by: ngthomas, kcr ! deploy/packager/native/windows/WinLauncher.cpp Changeset: 786c1575aac2 Author: snorthov Date: 2013-06-05 13:19 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/786c1575aac2 [COSMETIC CHANGE ONLY] workaround for Eclipse compiler ! javafx-beans/src/javafx/collections/transformation/SortedList.java Changeset: c549e432383d Author: Felipe Heidrich Date: 2013-06-05 11:39 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/c549e432383d RT-30862: Animated text leaves cheese on the scene ! prism-common/src/com/sun/prism/impl/GlyphCache.java Changeset: dc90699e1820 Author: snorthov Date: 2013-06-05 14:55 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/dc90699e1820 [COSMETIC CHANGE ONLY] workaround for Eclipse compiler ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/TimelineController.java Changeset: a8528aa93120 Author: Alexander Kouznetsov Date: 2013-06-05 11:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/a8528aa93120 Fix for RT-30891 Interpolators don't implement equals. Reviewed-by: Martin ! javafx-anim/src/com/sun/scenario/animation/NumberTangentInterpolator.java ! javafx-anim/src/com/sun/scenario/animation/SplineInterpolator.java ! javafx-anim/src/javafx/animation/Interpolator.java ! javafx-anim/test/unit/com/sun/scenario/animation/NumberTangentInterpolatorTest.java + javafx-anim/test/unit/com/sun/scenario/animation/SplineInterpolatorTest.java Changeset: 63bf3c13723a Author: Alexander Kouznetsov Date: 2013-06-05 12:19 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/63bf3c13723a Automated merge with ssh://jfxsrc.sfbay.sun.com//javafx/8.0/scrum/graphics/jfx/rt/ Changeset: 4f4bc0128afe Author: snorthov Date: 2013-06-05 16:28 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/4f4bc0128afe RT-13813: Full screen overlay warning needs to be MT safe ! javafx-ui-common/src/com/sun/javafx/tk/Toolkit.java ! javafx-ui-common/src/javafx/scene/Scene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/AbstractPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/GlassStage.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/OverlayWarning.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumToolkit.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/WindowStage.java Changeset: 1725cd8784b0 Author: rbair Date: 2013-06-05 14:35 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/1725cd8784b0 RT-30954: Open Source javafx-accessible ! generator.gradle ! glass/build-closed.xml + javafx-accessible/build-closed.xml + javafx-accessible/build.xml + javafx-accessible/nbproject/project.xml + javafx-accessible/project.properties + javafx-accessible/src/com/sun/javafx/accessible/providers/Accessible.java + javafx-accessible/src/com/sun/javafx/accessible/providers/AccessibleProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/AccessibleStageProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/ExpandCollapseProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/GridItemProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/GridProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/InvokeProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/RangeValueProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/SelectionItemProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/SelectionProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/ToggleProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/ValueProvider.java + javafx-accessible/src/com/sun/javafx/accessible/utils/ControlTypeIds.java + javafx-accessible/src/com/sun/javafx/accessible/utils/EventIds.java + javafx-accessible/src/com/sun/javafx/accessible/utils/ExpandCollapseState.java + javafx-accessible/src/com/sun/javafx/accessible/utils/NavigateDirection.java + javafx-accessible/src/com/sun/javafx/accessible/utils/OrientationType.java + javafx-accessible/src/com/sun/javafx/accessible/utils/PatternIds.java + javafx-accessible/src/com/sun/javafx/accessible/utils/PropertyIds.java + javafx-accessible/src/com/sun/javafx/accessible/utils/ProviderOptions.java + javafx-accessible/src/com/sun/javafx/accessible/utils/Rect.java + javafx-accessible/src/com/sun/javafx/accessible/utils/ToggleState.java ! javafx-ui-common/build-closed.xml ! javafx-ui-common/project.properties ! javafx-ui-controls/build-closed.xml ! javafx-ui-quantum/build-closed.xml ! javafx-ui-quantum/project.properties ! test-stub-toolkit/build-closed.xml ! test-stub-toolkit/project.properties Changeset: fc584651b922 Author: snorthov Date: 2013-06-05 18:29 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/fc584651b922 Backed out of changeset 3837:4f4bc0128afe ! javafx-ui-common/src/com/sun/javafx/tk/Toolkit.java ! javafx-ui-common/src/javafx/scene/Scene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/AbstractPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/GlassStage.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/OverlayWarning.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumToolkit.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/WindowStage.java Changeset: 9d3e54202b29 Author: snorthov Date: 2013-06-05 18:30 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/9d3e54202b29 Merge with fc584651b922c9a366c874dba602382c5b78daef Changeset: d9e00fa40ee1 Author: snorthov Date: 2013-06-05 18:58 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/d9e00fa40ee1 fix .classpath ! .classpath Changeset: f44e9ccc9d15 Author: Richard Bair Date: 2013-06-05 16:25 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/f44e9ccc9d15 RT-30955 JDK-8015656 causes gradle build breakage ! gradleBuildSrc/build.gradle Changeset: e7050b44101a Author: Chien Yang Date: 2013-06-06 09:32 +0800 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/e7050b44101a Fix to RT-30340: Functional regression in Charts.Scatter benchmark on embedded since h995 of graphics scrum Reviewed by Kevin ! prism-common/src/com/sun/prism/impl/BaseGraphics.java Changeset: 7ac411e54de3 Author: Richard Bair Date: 2013-06-05 19:08 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/7ac411e54de3 RT-30499: Rename groovy/com/sun/javafx/build package to something without "build" in the name Summary: renamed package to "gradle". - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CCTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CompileHLSLTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CompileResourceTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/JavaHeaderTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/LinkTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/NativeCompileTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/CCTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/CompileHLSLTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/CompileResourceTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/JavaHeaderTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/LinkTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/NativeCompileTask.groovy Changeset: 0049b4190d1b Author: Chien Yang Date: 2013-06-06 10:13 +0800 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/0049b4190d1b Fix to RT-30594: Evaluate the restriction set on Mesh's indexBuffer (see RT-30448) Reviewed by Kevin ! javafx-ui-common/src/javafx/scene/shape/TriangleMesh.java ! prism-common/src/com/sun/prism/impl/BaseMesh.java ! prism-d3d-native/src/D3DContext.cc ! prism-d3d-native/src/D3DMesh.cc ! prism-d3d-native/src/D3DMesh.h ! prism-d3d/src/com/sun/prism/d3d/D3DContext.java ! prism-d3d/src/com/sun/prism/d3d/D3DMesh.java ! prism-es2-native/src/GLContext.c ! prism-es2-native/src/PrismES2Defs.h ! prism-es2/src/com/sun/prism/es2/ES2Context.java ! prism-es2/src/com/sun/prism/es2/ES2Mesh.java ! prism-es2/src/com/sun/prism/es2/GLContext.java Changeset: 7fc4181950e2 Author: Petr Pchelko Date: 2013-06-06 11:34 +0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/7fc4181950e2 RT-28963: Mac: DragEvent.getScreenY() returns incorrect value on drag drop Reviewed-by: anthony ! glass/glass-lib-macosx/src/GlassViewDelegate.m Changeset: c228567fe494 Author: Alexander Kouznetsov Date: 2013-06-06 00:59 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/c228567fe494 FXMLExport: Updated to the latest version of TriangleMesh API. Fixed children doubling. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/fxml/FXMLExporter.java Changeset: 443a9ce81b2c Author: Alexander Kouznetsov Date: 2013-06-06 01:00 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/443a9ce81b2c MayaImporter: Removed unnecessary handler from Timeline KeyFrames. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/MayaImporter.java Changeset: 83751683c863 Author: Alexander Kouznetsov Date: 2013-06-06 01:02 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/83751683c863 3DViewer optimizer: clean up repeating points and texCoords. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: e91e20387c16 Author: Alexander Kouznetsov Date: 2013-06-06 01:03 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/e91e20387c16 3DViewer: Fixed NPE in Timeline Controller ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/TimelineController.java Changeset: 8c43df1ae523 Author: Eva Krejcirova Date: 2013-06-06 13:24 +0100 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/8c43df1ae523 RT-30804: Fixed partial arm cross build ! javafx-builders/build-closed.xml ! javafx-builders/project.properties Changeset: 721b2775dbfc Author: Pavel Safrata Date: 2013-06-06 15:19 +0100 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/721b2775dbfc RT-30668: fixed and cleaned ClipboardContent API. ! javafx-ui-common/src/javafx/scene/input/ClipboardContent.java ! javafx-ui-common/test/unit/javafx/scene/input/ClipboardContentTest.java Changeset: 9a7bc40eca11 Author: snorthov Date: 2013-06-06 11:03 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/9a7bc40eca11 [COSMETIC CHANGE ONLY] workaround for Eclipse compiler [verified with Martin] ! javafx-beans/test/javafx/collections/SortedListTest.java Changeset: 9975ebce5940 Author: Martin Sladecek Date: 2013-06-06 17:25 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/9975ebce5940 Fix for RT-30947, RT-30915, RT-30936 ! javafx-ui-common/src/javafx/scene/Parent.java Changeset: 2c24c839cc30 Author: Martin Sladecek Date: 2013-06-06 17:26 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/2c24c839cc30 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt Changeset: 2095f12bf331 Author: Artem Ananiev Date: 2013-06-06 19:46 +0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/2095f12bf331 RT-30579: Still cannot rely on Thread.setDefaultUncaughtExceptionHandler() to work with JavaFX App Thread. Reviewed-by: Kevin Rushforth, Steve Northover ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumToolkit.java + tests/glass/ExceptionHandler/test/com/sun/glass/ui/DefaultExceptionHandlerTest.java ! tests/glass/build.xml Changeset: df5ed39ad4a7 Author: snorthov Date: 2013-06-06 12:48 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/df5ed39ad4a7 RT-30791: Quantum Cleanup: Make embedded rendering use the standard locking and scene state mechanism - javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedScene.java + javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedState.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/GlassScene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/SceneState.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/UploadingPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/ViewScene.java ! prism-common/src/com/sun/prism/PresentableState.java ! prism-j2d/src/com/sun/prism/j2d/J2DPresentable.java ! prism-sw/src/com/sun/prism/sw/SWPresentable.java Changeset: 3181efc5d5ed Author: Alexander Kouznetsov Date: 2013-06-06 12:07 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/3181efc5d5ed 3DViewer: Refactoring in Optimizer ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: bb68d69e00ca Author: Alexander Kouznetsov Date: 2013-06-06 15:45 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/bb68d69e00ca MayaImport: Skipping frames with negative time. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java Changeset: 005e04319ded Author: Alexander Kouznetsov Date: 2013-06-06 15:55 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/005e04319ded 3DViewer optimizer: refactoring, added KeyFrame, KeyValue analysis. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: bf02e9d55b85 Author: Alexander Kouznetsov Date: 2013-06-06 17:06 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/bf02e9d55b85 3DViewer optimizer: removes all bad faces from the mesh. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 1c34cffdaf7d Author: Alexander Kouznetsov Date: 2013-06-06 18:13 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/1c34cffdaf7d 3DViewer MayaLoader: skipping empty meshes ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java Changeset: 53248a630305 Author: Martin Sladecek Date: 2013-06-07 08:36 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/53248a630305 Unified reports of null reference in SelectBinding on "info" level. ! javafx-beans/src/com/sun/javafx/binding/SelectBinding.java Changeset: b4fa1e830511 Author: Martin Sladecek Date: 2013-06-07 08:36 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/b4fa1e830511 Automated merge with file:///home/martin/work/jfx-80-sync/rt Changeset: b91199dd018a Author: Alexander Kouznetsov Date: 2013-06-07 04:25 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/b91199dd018a 3DViewer Optimizer: Fixed nasty sinking text bug. Added DISCRETE_ONLY mode. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 148e27736eb6 Author: Artem Ananiev Date: 2013-06-07 16:30 +0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/148e27736eb6 RT-30983: Quantum cleanup: remove ToolkitInterface Reviewed-by: Kevin Rushforth, Steve Northover + javafx-ui-common/src/com/sun/javafx/tk/CompletionListener.java ! javafx-ui-common/src/com/sun/javafx/tk/DummyToolkit.java + javafx-ui-common/src/com/sun/javafx/tk/RenderJob.java ! javafx-ui-common/src/com/sun/javafx/tk/Toolkit.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedScene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PaintCollector.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PaintRenderJob.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumRenderer.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumToolkit.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/ViewScene.java - prism-common/src/com/sun/prism/render/CompletionListener.java - prism-common/src/com/sun/prism/render/RenderJob.java - prism-common/src/com/sun/prism/render/ToolkitInterface.java ! test-stub-toolkit/src/com/sun/javafx/pgstub/StubToolkit.java ! webview/src/com/sun/javafx/webkit/prism/PrismInvoker.java Changeset: c601f830bb33 Author: "Jasper Potts" Date: 2013-06-07 13:58 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/c601f830bb33 3D Viewer App: Working on JavaSourceExporter for demos ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/javasource/JavaSourceExporter.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java Changeset: a62bc4209f53 Author: Alexander Kouznetsov Date: 2013-06-07 17:55 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/a62bc4209f53 3DViewer: Reverted hack of CullFace caused every maya file to appear all black. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java Changeset: e6d790912c2e Author: Alexander Kouznetsov Date: 2013-06-07 18:02 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/e6d790912c2e 3DViewer: Implemented settings and state persistence between sessions ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Importer3D.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/ContentModel.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/Jfx3dViewerApp.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/OldTestViewer.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SessionManager.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SettingsController.java Changeset: 5e0dfe90b7f2 Author: David Hill Date: 2013-06-08 10:28 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/5e0dfe90b7f2 RT-30508 adding native cross tool support ! build.gradle ! gradleBuildSrc/armv6hf.gradle ! gradleBuildSrc/armv6sf.gradle Changeset: 2e517d892d1f Author: David Hill Date: 2013-06-08 23:22 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/2e517d892d1f RT-30508 re-enabling swing building until Builders/JMX is addressed. ! build.gradle Changeset: cc71d4e40388 Author: Petr Pchelko Date: 2013-06-10 17:15 +0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/cc71d4e40388 RT-23876 Mac: Context Menus not working in applet Reviewed-by: anthony ! glass/glass-lib-macosx/src/GlassWindow.m Changeset: f6b05e9c2b72 Author: kcr Date: 2013-06-10 08:58 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/f6b05e9c2b72 Gradle: add .gradle directories to .hgignore ! .hgignore Changeset: 29272e7e00ee Author: kcr Date: 2013-06-10 11:37 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/29272e7e00ee Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CCTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CompileHLSLTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CompileResourceTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/JavaHeaderTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/LinkTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/NativeCompileTask.groovy - javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedPainter.java - prism-common/src/com/sun/prism/render/CompletionListener.java - prism-common/src/com/sun/prism/render/RenderJob.java - prism-common/src/com/sun/prism/render/ToolkitInterface.java Changeset: 57b3705ef8cb Author: David Grieve Date: 2013-06-07 14:59 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/57b3705ef8cb RT-30985: associate strings for deserialization with stylesheet ! javafx-ui-common/src/com/sun/javafx/css/Rule.java ! javafx-ui-common/src/com/sun/javafx/css/Stylesheet.java Changeset: 4e76bc7f72ef Author: Felipe Heidrich Date: 2013-06-10 16:32 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/4e76bc7f72ef RT-29523: Upgrade to use PlatformLogger.Level instead of primitive int type ! glass/glass/src/com/sun/glass/ui/accessible/AccessibleLogger.java ! glass/glass/src/com/sun/glass/ui/lens/LensApplication.java ! glass/glass/src/com/sun/glass/ui/lens/LensClipboardDelegate.java ! glass/glass/src/com/sun/glass/ui/lens/LensDnDClipboard.java ! glass/glass/src/com/sun/glass/ui/lens/LensLogger.java ! glass/glass/src/com/sun/glass/ui/lens/LensSystemClipboard.java ! glass/glass/src/com/sun/glass/ui/lens/LensWindow.java ! javafx-beans/src/com/sun/javafx/binding/SelectBinding.java ! javafx-beans/test/com/sun/javafx/binding/SelectBindingTest.java ! javafx-ui-common/src/com/sun/javafx/accessible/AccessibleNode.java ! javafx-ui-common/src/com/sun/javafx/accessible/AccessibleStage.java ! javafx-ui-common/src/com/sun/javafx/css/StyleConverterImpl.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/src/com/sun/javafx/css/converters/EnumConverter.java ! javafx-ui-common/src/com/sun/javafx/css/parser/CSSParser.java ! javafx-ui-common/src/com/sun/javafx/scene/layout/region/Margins.java ! javafx-ui-common/src/com/sun/javafx/scene/traversal/ContainerTabOrder.java ! javafx-ui-common/src/com/sun/javafx/scene/traversal/Hueristic2D.java ! javafx-ui-common/src/com/sun/javafx/scene/traversal/TraversalEngine.java ! javafx-ui-common/src/com/sun/javafx/scene/traversal/WeightedClosestCorner.java ! javafx-ui-common/src/javafx/scene/CssStyleHelper.java ! javafx-ui-common/src/javafx/scene/Node.java ! javafx-ui-common/src/javafx/scene/Parent.java ! javafx-ui-common/src/javafx/scene/Scene.java ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/accessible/AccessibleCheckBox.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/accessible/AccessibleControl.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/behavior/ListCellBehavior.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/behavior/TreeCellBehavior.java ! javafx-ui-controls/src/javafx/scene/control/Control.java ! javafx-ui-controls/src/javafx/scene/control/PopupControl.java ! javafx-ui-controls/src/javafx/scene/control/cell/PropertyValueFactory.java ! javafx-ui-controls/src/javafx/scene/control/cell/TreeItemPropertyValueFactory.java ! javafx-ui-controls/test/javafx/scene/control/ControlTest.java Changeset: b7d5ab1bf17f Author: kcr Date: 2013-06-10 17:51 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/b7d5ab1bf17f [TEST-ONLY] Disable failing unit test as a workaround for RT-31042 ! javafx-ui-common/test/unit/com/sun/javafx/css/parser/CSSParserTest.java Changeset: 17fa39d79a6f Author: peterz Date: 2013-06-11 11:14 +0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/17fa39d79a6f RT-17666 Webview and HTMLEditor should support printing their content ! webview/native/Source/WebCore/mapfile-macosx ! webview/native/Source/WebCore/mapfile-vers ! webview/native/Source/WebCore/platform/java/WebPage.cpp ! webview/native/Source/WebCore/platform/java/WebPage.h ! webview/src/com/sun/javafx/scene/web/skin/HTMLEditorSkin.java ! webview/src/com/sun/webkit/WebPage.java ! webview/src/javafx/scene/web/HTMLEditor.java ! webview/src/javafx/scene/web/WebEngine.java Changeset: 06aad33a6e6b Author: Martin Sladecek Date: 2013-06-11 12:39 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/06aad33a6e6b RT-30902 FlowPane, TilePane and HBox may not handle the baseline correctly ! javafx-ui-common/src/javafx/scene/layout/AnchorPane.java ! javafx-ui-common/src/javafx/scene/layout/BorderPane.java ! javafx-ui-common/src/javafx/scene/layout/FlowPane.java ! javafx-ui-common/src/javafx/scene/layout/GridPane.java ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-common/src/javafx/scene/layout/TilePane.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java ! javafx-ui-common/test/unit/javafx/scene/layout/GridPaneTest.java ! javafx-ui-common/test/unit/javafx/scene/layout/RegionTest.java Changeset: f236bb3f7fe6 Author: Martin Sladecek Date: 2013-06-11 12:40 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/f236bb3f7fe6 Automated merge with file:///home/martin/work/jfx-80-sync/rt ! javafx-ui-common/src/javafx/scene/layout/Region.java Changeset: 2ab564af5a33 Author: David Grieve Date: 2013-06-11 16:49 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/2ab564af5a33 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt ! javafx-ui-common/src/javafx/scene/Parent.java From zonski at gmail.com Tue Jun 11 15:10:21 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Wed, 12 Jun 2013 08:10:21 +1000 Subject: NullPointer in BaseGraphics.drawTextureVO In-Reply-To: <51B73A66.6050305@oracle.com> References: <51B721D7.9030206@oracle.com> <51B73A66.6050305@oracle.com> Message-ID: Thanks for the feedback, Running it on jdk1.7.0_21-32bit I don't see that error any more (though I am still having camera capture issues when integrating LTI CIVIL into JFX - still trying to narrow down where the fault lies). I do get this error however, but it seems to recover from it. java.lang.NullPointerException at com.sun.prism.impl.BaseResourceFactory.clearTextureCache(BaseResourceFactory.java:47) at com.sun.prism.impl.BaseResourceFactory.getCachedTexture(BaseResourceFactory.java:102) at com.sun.javafx.sg.prism.NGImageView.renderContent(NGImageView.java:115) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187) at com.sun.javafx.sg.prism.NGImageView.doRender(NGImageView.java:97) at com.sun.javafx.sg.prism.NGImageView.doRender(NGImageView.java:20) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204) at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204) at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204) at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204) at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204) at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) at com.sun.javafx.sg.prism.NodeEffectInput.getImageDataForBoundedNode(NodeEffectInput.java:192) at com.sun.javafx.sg.prism.NodeEffectInput.filter(NodeEffectInput.java:85) at com.sun.scenario.effect.FilterEffect.filter(FilterEffect.java:167) at com.sun.scenario.effect.Offset.filter(Offset.java:161) at com.sun.scenario.effect.Merge.filter(Merge.java:147) at com.sun.scenario.effect.DelegateEffect.filter(DelegateEffect.java:68) at com.sun.scenario.effect.impl.prism.PrEffectHelper.render(PrEffectHelper.java:156) at com.sun.javafx.sg.prism.NGNode$EffectFilter.render(NGNode.java:748) at com.sun.javafx.sg.prism.NGNode.renderEffect(NGNode.java:494) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204) at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204) at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204) at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204) at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145) at com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:117) at com.sun.javafx.tk.quantum.AbstractPainter.paintImpl(AbstractPainter.java:181) at com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:73) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178) at com.sun.prism.render.RenderJob.run(RenderJob.java:37) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:98) at java.lang.Thread.run(Thread.java:722) On Wed, Jun 12, 2013 at 12:55 AM, Kevin Rushforth < kevin.rushforth at oracle.com> wrote: > ** > > I take it there's no way to avoid the resources issue in the old JFX, it's > just a plain and simple bug? > > > I don't know of a way to completely avoid it. As far as we know there > aren't any actual leaks in the more recent FX 2.2.x texture code, but the > resource disposal is not deterministic and if you hit the limit of texture > memory it does not recover gracefully (or at all). > > Jim might have more insight, since he implemented the new texture > management system for FX 8.; > > > -- Kevin > > > > Daniel Zwolenski wrote: > > This is an older version, probably JFX from around jdk1.7.0_02. > > I'm running it now on jdk1.7.0_21 to see what happens (takes about an > hour to get to the point of failure, which is why I didn't pick it up when > I wrote the code originally). > > Unfortunately chunks of the system are broken when it runs on this newer > code. Lots of backwards compatibility breaks, especially visual ones with > CSS that just make it screwy. This is an old project and I don't really > want to be touching this code but they have this video capture bug which is > killing everything. > > I take it there's no way to avoid the resources issue in the old JFX, > it's just a plain and simple bug? > > > > On Tue, Jun 11, 2013 at 11:10 PM, Kevin Rushforth < > kevin.rushforth at oracle.com> wrote: > >> Is this from FX 2.2.x or FX 8? The stack trace suggests an earlier >> version of FX. The only thing I can think of off hand is that the HW >> texture couldn't be created, probably because you ran out of resources. >> There are a few issues relating to this, which we believe are fixed in FX 8 >> with the implementation of RT-25323. >> >> -- Kevin >> >> >> >> Daniel Zwolenski wrote: >> >>> Can anyone tell me what might cause the exception below in Prism? >>> >>> It's from an app that captures video via a native library (LTI-CIVIL) and >>> then converts that image to JFX display via: >>> >>> BufferedImage buffImage = AWTImageConverter.toBufferedImage(image); >>> jfxImage = >>> javafx.scene.image.Image.impl_fromExternalImage(buffImage); >>> previewView.setImage(jfxImage); >>> >>> >>> java.lang.NullPointerException >>> at com.sun.prism.impl.BaseGraphics.drawTextureVO(BaseGraphics.java:365) >>> at com.sun.prism.impl.BaseGraphics.drawTexture(BaseGraphics.java:334) >>> at >>> com.sun.prism.impl.ps >>> .BaseShaderGraphics.drawTexture(BaseShaderGraphics.java:103) >>> at >>> com.sun.javafx.sg.prism.NGImageView.renderContent(NGImageView.java:315) >>> at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) >>> at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) >>> at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) >>> at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) >>> at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) >>> at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) >>> at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) >>> at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) >>> at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) >>> at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) >>> at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) >>> at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) >>> at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) >>> at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) >>> at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) >>> at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) >>> at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) >>> at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) >>> at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:205) >>> at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420) >>> at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:185) >>> at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39) >>> at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1139) >>> at >>> com.sun.javafx.tk.quantum.PaintRunnable.doPaint(PaintRunnable.java:214) >>> at >>> com.sun.javafx.tk.quantum.PaintRunnable.paintImpl(PaintRunnable.java:145) >>> at com.sun.javafx.tk.quantum.PaintRunnable.run(PaintRunnable.java:349) >>> at >>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) >>> at >>> >>> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351) >>> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178) >>> at com.sun.prism.render.RenderJob.run(RenderJob.java:29) >>> at >>> >>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) >>> at >>> >>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) >>> at >>> >>> com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:101) >>> at java.lang.Thread.run(Thread.java:722) >>> >>> >> > From hang.vo at oracle.com Tue Jun 11 16:48:25 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 11 Jun 2013 23:48:25 +0000 Subject: hg: openjfx/8/graphics/rt: Modena: Fixed ModenaTest Message-ID: <20130611234849.0FBA04815D@hg.openjdk.java.net> Changeset: 70720b02efd2 Author: Alexander Kouznetsov Date: 2013-06-11 16:34 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/70720b02efd2 Modena: Fixed ModenaTest ! apps/experiments/Modena/src/modena/Modena.java From hang.vo at oracle.com Tue Jun 11 17:51:52 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 12 Jun 2013 00:51:52 +0000 Subject: hg: openjfx/8/graphics/rt: Fix RT-27828 - Canvas GraphicsContext polygon/line primitives ignore translation Message-ID: <20130612005221.A0CAD48161@hg.openjdk.java.net> Changeset: 134fbe9f883e Author: flar Date: 2013-06-11 17:37 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/134fbe9f883e Fix RT-27828 - Canvas GraphicsContext polygon/line primitives ignore translation ! javafx-ui-common/src/javafx/scene/canvas/GraphicsContext.java From hang.vo at oracle.com Tue Jun 11 21:44:59 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 12 Jun 2013 04:44:59 +0000 Subject: hg: openjfx/2u/dev/rt: Added tag 2.2.40-b28 for changeset fac50f983ffa Message-ID: <20130612044501.A4E7148168@hg.openjdk.java.net> Changeset: 6b5ccbc93d06 Author: hudson Date: 2013-06-05 13:23 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/6b5ccbc93d06 Added tag 2.2.40-b28 for changeset fac50f983ffa ! .hgtags From hang.vo at oracle.com Wed Jun 12 01:19:06 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 12 Jun 2013 08:19:06 +0000 Subject: hg: openjfx/8/controls/rt: Temporarily re-enable requests for second layout while layouting (effectively disabled by RT-30363 fix), until there's a fix for RT-31016 Message-ID: <20130612081927.45FC44816F@hg.openjdk.java.net> Changeset: 7203a2531ae9 Author: Martin Sladecek Date: 2013-06-12 10:07 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/7203a2531ae9 Temporarily re-enable requests for second layout while layouting (effectively disabled by RT-30363 fix), until there's a fix for RT-31016 ! javafx-ui-common/src/javafx/scene/Parent.java From milan.kubec at oracle.com Wed Jun 12 07:12:38 2013 From: milan.kubec at oracle.com (Milan Kubec) Date: Wed, 12 Jun 2013 16:12:38 +0200 Subject: FXML version number In-Reply-To: References: <51B19E88.4080203@oracle.com> Message-ID: <51B881D6.3070605@oracle.com> Hello, evolution of FXML is meant to be backward compatible. Any change in fx: namespace (no plans yet) will increase fxml version, but FXMLLoader of version 2 will load fxml of version 1 and 2, of course. On the other hand FXMLLoader of version 1 (e.g. JavaFX 2.2.21) won't be able to load new feature of version 2 (e.g. JavaFX 9.0). FXML version of 2 will only be required if given fxml file would use new feature of fx: namespace. Versioning is mainly meant for authoring tools like SceneBuilder or NetBeans IDE. Milan Dne 8.6.2013 0:43, Daniel Zwolenski napsal(a): > I think marking the FXML version is a good idea, but not sure what the > implications of an incompatibility are though if it is in the > backwards direction? > > There definitely will be version compatibility issues in FXML, but any > backwards compatibility issues will break running apps that are web > deployed when the JRE auto-updates on users. If the loader barfs when > it hits an incompatibility issue it just means those failures will be > more in your face. > > If a running, web-deployed app has FXML that is an older version but > just happens not to be using the broken bits then the loader failing > at this point is highly undesirable. > > > On Fri, Jun 7, 2013 at 6:49 PM, Milan Kubec > wrote: > > Hello, > I have implemented simple versioning for FXML documents in > FXMLLoader, but without support in tools it won't be very useful. > I have agreed with NetBeans and Scene Builder folks that they will > include support for versioning too. Support means that they will > produce document with two XML namespaces - one defines version of > fx: prefixed elements and attributes (xmlns:fx; it's already > there, just the version is appended) and the other of actual > JavaFX API used to produce document (xmlns; default, no prefix). > The first will be checked, because wrong version can cause > failure. The latter is only informational, no strict checking of > version is possible, but tools can suggest to upgrade runtime, > translate document etc. > > JavaFX API version is stored in System Properties as > "javafx.version". The open question is still where and how to > store fxml version in code. I think that we could have also > property for this purpose, e.g. "fxml.version" in System > Properties. So far it's part of FXMLLoader API, which is probably > not very fortunate. What do you think? > > Issue details: https://javafx-jira.kenai.com/browse/RT-28599 > > Milan > > From hang.vo at oracle.com Wed Jun 12 09:06:35 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 12 Jun 2013 16:06:35 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130612160716.427B148190@hg.openjdk.java.net> Changeset: a91e720cf889 Author: Daniel Blaukopf Date: 2013-06-12 18:49 +0300 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/a91e720cf889 RT-30607 Add an method PlatformImpl.isContextual2DNavigation ! javafx-ui-common/src/com/sun/javafx/application/PlatformImpl.java Changeset: 38ea1b34fb8b Author: David Hill Date: 2013-06-12 12:01 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/38ea1b34fb8b RT-30239 report Lens exceptions ! glass/glass-lib-lens/src/LensApplication.c ! glass/glass-lib-lens/src/LensCommon.h ! glass/glass/src/com/sun/glass/ui/lens/LensApplication.java ! glass/glass/src/com/sun/glass/ui/lens/LensWindow.java From hang.vo at oracle.com Wed Jun 12 09:34:10 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 12 Jun 2013 16:34:10 +0000 Subject: hg: openjfx/8/graphics/rt: 13 new changesets Message-ID: <20130612163658.969B548193@hg.openjdk.java.net> Changeset: 479da853570b Author: David Grieve Date: 2013-06-06 08:36 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/479da853570b RT-30976: lazy load listener and add listener to backing set on first call to addListener. Reviewed by Martin ! javafx-beans/src/javafx/collections/FXCollections.java Changeset: 9605455a5abe Author: Martin Sladecek Date: 2013-06-06 17:25 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/9605455a5abe Fix for RT-30947, RT-30915, RT-30936 ! javafx-ui-common/src/javafx/scene/Parent.java Changeset: 6d73ef304a85 Author: jgiles Date: 2013-06-04 16:18 +1200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/6d73ef304a85 RT-29420: VBox Popup width is computed wrong in JavaFX 8.0.0-b83 ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/ListViewSkin.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/VirtualContainerBase.java ! javafx-ui-controls/test/javafx/scene/control/ListViewTest.java Changeset: ece9e054a7cd Author: jgiles Date: 2013-06-06 08:35 +1200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/ece9e054a7cd Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/VirtualContainerBase.java Changeset: 59cdebd030e2 Author: jgiles Date: 2013-06-06 13:15 +1200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/59cdebd030e2 RT-29923: Cell with null initial value cannot be edited because the empty property is true Also, a lot of unit tests for the classes extending from Cell (some of which are @Ignored as they currently fail and need further analysis) ! javafx-ui-controls/src/javafx/scene/control/ListCell.java ! javafx-ui-controls/src/javafx/scene/control/TableCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableCell.java ! javafx-ui-controls/test/javafx/scene/control/ListCellTest.java ! javafx-ui-controls/test/javafx/scene/control/TableCellTest.java + javafx-ui-controls/test/javafx/scene/control/TreeCellTest.java + javafx-ui-controls/test/javafx/scene/control/TreeTableCellTest.java + javafx-ui-controls/test/javafx/scene/control/TreeTableRowTest.java Changeset: 812c58a5dbab Author: jgiles Date: 2013-06-06 14:51 +1200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/812c58a5dbab RT-30604: Memory leak in TreeTableView ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TableRowSkin.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TableRowSkinBase.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TreeTableRowSkin.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TreeTableViewSkin.java Changeset: 3b5502de0286 Author: jgiles Date: 2013-06-07 10:04 +1200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/3b5502de0286 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt Changeset: b8fb9136fbcb Author: David Grieve Date: 2013-06-07 14:59 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/b8fb9136fbcb RT-30985: associate strings for deserialization with stylesheet ! javafx-ui-common/src/com/sun/javafx/css/Rule.java ! javafx-ui-common/src/com/sun/javafx/css/Stylesheet.java Changeset: 69bd40665e68 Author: David Grieve Date: 2013-06-07 15:01 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/69bd40665e68 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt Changeset: 4fcbd4317b9b Author: David Grieve Date: 2013-06-11 14:17 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/4fcbd4317b9b Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt Changeset: 2ab564af5a33 Author: David Grieve Date: 2013-06-11 16:49 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/2ab564af5a33 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt ! javafx-ui-common/src/javafx/scene/Parent.java Changeset: 7203a2531ae9 Author: Martin Sladecek Date: 2013-06-12 10:07 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/7203a2531ae9 Temporarily re-enable requests for second layout while layouting (effectively disabled by RT-30363 fix), until there's a fix for RT-31016 ! javafx-ui-common/src/javafx/scene/Parent.java Changeset: 45a2dd0b03d9 Author: jgodinez Date: 2013-06-12 09:15 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/45a2dd0b03d9 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt From hang.vo at oracle.com Wed Jun 12 11:06:27 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 12 Jun 2013 18:06:27 +0000 Subject: hg: openjfx/8/controls/rt: RT-30938 : ProgressIndicator progress is not updating - pushing fix from David Message-ID: <20130612180656.3DA6248197@hg.openjdk.java.net> Changeset: 749a762daa51 Author: mickf Date: 2013-06-12 18:45 +0100 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/749a762daa51 RT-30938 : ProgressIndicator progress is not updating - pushing fix from David ! javafx-ui-common/src/com/sun/javafx/css/CompoundSelector.java From tobi at ultramixer.com Wed Jun 12 12:37:11 2013 From: tobi at ultramixer.com (Tobias Bley) Date: Wed, 12 Jun 2013 21:37:11 +0200 Subject: Fwd: hg: openjfx/8/graphics/rt: Making variable static to avoid problems when statically linked with jdk8u mobile. References: <20130603114919.6368048EDE@hg.openjdk.java.net> Message-ID: Hey, what is jdk8u mobile? Anfang der weitergeleiteten Nachricht: > Von: hang.vo at oracle.com > Betreff: hg: openjfx/8/graphics/rt: Making variable static to avoid problems when statically linked with jdk8u mobile. > Datum: 3. Juni 2013 13:49:06 MESZ > An: openjfx-dev at openjdk.java.net > > Changeset: 129d59d5a79b > Author: Oldrich Maticka > Date: 2013-06-03 13:34 +0200 > URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/129d59d5a79b > > Making variable static to avoid problems when statically linked with jdk8u mobile. > > ! javafx-iio-native/src/jpegloader.c > From hang.vo at oracle.com Wed Jun 12 13:48:59 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 12 Jun 2013 20:48:59 +0000 Subject: hg: openjfx/8/controls/rt: 4 new changesets Message-ID: <20130612204958.4636F481A1@hg.openjdk.java.net> Changeset: 1fbbc9191ba0 Author: David Grieve Date: 2013-06-12 10:14 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/1fbbc9191ba0 RT-30892: rework calculated value cache for better css performance ! javafx-ui-common/src/com/sun/javafx/css/BitSet.java ! javafx-ui-common/src/com/sun/javafx/css/CalculatedValue.java ! javafx-ui-common/src/com/sun/javafx/css/ParsedValueImpl.java ! javafx-ui-common/src/com/sun/javafx/css/StyleCache.java ! javafx-ui-common/src/com/sun/javafx/css/StyleCacheEntry.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/src/javafx/scene/CssStyleHelper.java ! javafx-ui-common/src/javafx/scene/Node.java ! javafx-ui-controls/src/javafx/scene/control/Labeled.java Changeset: 07be64d67626 Author: David Grieve Date: 2013-06-12 10:26 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/07be64d67626 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/src/javafx/scene/CssStyleHelper.java ! javafx-ui-common/src/javafx/scene/Node.java Changeset: 1ec38d2759eb Author: David Grieve Date: 2013-06-12 16:30 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/1ec38d2759eb [UNIT TEST] resolve unit test failures related to RT-30892 ! javafx-ui-common/src/com/sun/javafx/css/CompoundSelector.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/src/javafx/scene/CssStyleHelper.java ! javafx-ui-common/test/unit/com/sun/javafx/css/HonorDeveloperSettingsTest.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/LabeledText.java ! javafx-ui-controls/test/com/sun/javafx/scene/control/skin/LabeledTextTest.java Changeset: eaea57901d09 Author: David Grieve Date: 2013-06-12 16:32 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/eaea57901d09 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt From pedro.duquevieira at gmail.com Wed Jun 12 14:38:27 2013 From: pedro.duquevieira at gmail.com (Pedro Duque Vieira) Date: Wed, 12 Jun 2013 22:38:27 +0100 Subject: Tooltip is interfering with mouseEntered/mouseExited events In-Reply-To: <411E73D23DEC4C46BA48F2B6D8BF3D22167D41B8D4@TUS1XCHEVSPIN34.SYMC.SYMANTEC.COM> References: <411E73D23DEC4C46BA48F2B6D8BF3D22167D41B8D4@TUS1XCHEVSPIN34.SYMC.SYMANTEC.COM> Message-ID: The problem gets worse because tooltip is not a node (why?) so you cannot easily know if the mouse is hover a tooltip or not. Does someone know how to see if a mouse is hover a tooltip? On Tue, Jun 11, 2013 at 1:11 AM, John Smith wrote: > A somewhat related inconvenience I have with tooltips is that if you put a > tooltip on a button, then hover the mouse so that the tooltip shows up, you > can't click to activate the button unless you move the mouse pixel to left > or top because the resultant click will go to the tooltip and not to the > button. It's especially strange on Modena, because there the tooltip has a > rounded corner, so you visibly aren't clicking on the tooltip, though you > are clicking in the tooltip's rectangular bounds. > > Some examples of how other apps handle tooltips: > In NetBeans the tooltip shows up below the button rather than at the mouse > position - this has the advantage of not obscuring the thing which the > tooltip is providing information on. > Intellij Idea is similar, except that it's tooltip is a callout has with a > little triangular area which overlaps the thing the tooltip is for. If you > click in the overlapped area, the underlying node still takes the expected > action. > Microsoft apps like Outlook show tooltips below the things they are > providing info on (or above if there is not enough screen area below to > show the tooltip). > > -----Original Message----- > From: openjfx-dev-bounces at openjdk.java.net [mailto: > openjfx-dev-bounces at openjdk.java.net] On Behalf Of Pedro Duque Vieira > Sent: Monday, June 10, 2013 2:42 PM > To: OpenJFX Mailing List > Subject: Tooltip is interfering with mouseEntered/mouseExited events > > Hi, > > I have a toolbar composed by a couple of buttons. The toolbar fades away > when the mouse exits. The problem is that I have tooltips set up with the > toolbar and sometimes they appear under the mouse which triggers a > mouseExit event that makes the toolbar fade-away. > > My point is maybe the tooltips should be viewed by the API as a component > that is part of the other component which they are set upon. > > In this situation I'm getting random mouse exits depending when whether > the tooltip appears below the mouse or not. > > Cheers, > > -- > Pedro Duque Vieira > -- Pedro Duque Vieira From pedro.duquevieira at gmail.com Wed Jun 12 15:00:35 2013 From: pedro.duquevieira at gmail.com (Pedro Duque Vieira) Date: Wed, 12 Jun 2013 23:00:35 +0100 Subject: How to see when a scene gets shown? Message-ID: Hi, On my swing/javafx app - javafx scene embedded in a swing app, I need to know when the scene gets shown to the user or becomes visible. Or when the same happens to a node. I've glanced through the API but have not found a way to do it. Does anyone know how? Cheers, -- Pedro Duque Vieira From hang.vo at oracle.com Wed Jun 12 16:06:18 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Wed, 12 Jun 2013 23:06:18 +0000 Subject: hg: openjfx/8/graphics/rt: [OBSOLETE-CLEANUP] Remove spurious .hgignore file Message-ID: <20130612230640.92127481A4@hg.openjdk.java.net> Changeset: 2d3bfe9dfa63 Author: kcr Date: 2013-06-12 15:52 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/2d3bfe9dfa63 [OBSOLETE-CLEANUP] Remove spurious .hgignore file - javafx-fxml/.hgignore From zonski at gmail.com Wed Jun 12 18:57:08 2013 From: zonski at gmail.com (Daniel Zwolenski) Date: Thu, 13 Jun 2013 11:57:08 +1000 Subject: FXML version number In-Reply-To: <51B881D6.3070605@oracle.com> References: <51B19E88.4080203@oracle.com> <51B881D6.3070605@oracle.com> Message-ID: I guess there's the FXML namespace and directives to the Loader as one consideration, which I think is what you're focusing on here. The other issue though is changes to the classes that the FXML references. For example when Builders go, suddenly a whole lot of FXML files will suddenly become invalid. Are there any plans for version management at this level, and if not could/should there be? On 13/06/2013, at 12:12 AM, Milan Kubec wrote: > Hello, > evolution of FXML is meant to be backward compatible. Any change in fx: > namespace (no plans yet) will increase fxml version, but FXMLLoader of > version 2 will load fxml of version 1 and 2, of course. On the other > hand FXMLLoader of version 1 (e.g. JavaFX 2.2.21) won't be able to load > new feature of version 2 (e.g. JavaFX 9.0). FXML version of 2 will only > be required if given fxml file would use new feature of fx: namespace. > > Versioning is mainly meant for authoring tools like SceneBuilder or > NetBeans IDE. > > Milan > > > Dne 8.6.2013 0:43, Daniel Zwolenski napsal(a): >> I think marking the FXML version is a good idea, but not sure what the >> implications of an incompatibility are though if it is in the >> backwards direction? >> >> There definitely will be version compatibility issues in FXML, but any >> backwards compatibility issues will break running apps that are web >> deployed when the JRE auto-updates on users. If the loader barfs when >> it hits an incompatibility issue it just means those failures will be >> more in your face. >> >> If a running, web-deployed app has FXML that is an older version but >> just happens not to be using the broken bits then the loader failing >> at this point is highly undesirable. >> >> >> On Fri, Jun 7, 2013 at 6:49 PM, Milan Kubec > > wrote: >> >> Hello, >> I have implemented simple versioning for FXML documents in >> FXMLLoader, but without support in tools it won't be very useful. >> I have agreed with NetBeans and Scene Builder folks that they will >> include support for versioning too. Support means that they will >> produce document with two XML namespaces - one defines version of >> fx: prefixed elements and attributes (xmlns:fx; it's already >> there, just the version is appended) and the other of actual >> JavaFX API used to produce document (xmlns; default, no prefix). >> The first will be checked, because wrong version can cause >> failure. The latter is only informational, no strict checking of >> version is possible, but tools can suggest to upgrade runtime, >> translate document etc. >> >> JavaFX API version is stored in System Properties as >> "javafx.version". The open question is still where and how to >> store fxml version in code. I think that we could have also >> property for this purpose, e.g. "fxml.version" in System >> Properties. So far it's part of FXMLLoader API, which is probably >> not very fortunate. What do you think? >> >> Issue details: https://javafx-jira.kenai.com/browse/RT-28599 >> >> Milan >> >> > From hang.vo at oracle.com Thu Jun 13 01:46:03 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 13 Jun 2013 08:46:03 +0000 Subject: hg: openjfx/2u/dev/rt: RT-31045 GridPane may take an abnormally long time to be rendered Message-ID: <20130613084606.81309481B9@hg.openjdk.java.net> Changeset: 69bec44a5f3a Author: Martin Sladecek Date: 2013-06-13 08:58 +0200 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/69bec44a5f3a RT-31045 GridPane may take an abnormally long time to be rendered Backported growOrShrinkRowHeights & growOrShrinkColumnWidths methods from GridPane in 8.0 ! javafx-ui-common/src/javafx/scene/layout/GridPane.java From hang.vo at oracle.com Thu Jun 13 01:19:00 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 13 Jun 2013 08:19:00 +0000 Subject: hg: openjfx/8/controls/rt: RT-31016 javafx.scene.control.TableView: column headers shoud appear Message-ID: <20130613081923.521D9481B6@hg.openjdk.java.net> Changeset: 76a7ba878acd Author: Martin Sladecek Date: 2013-06-13 10:13 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/76a7ba878acd RT-31016 javafx.scene.control.TableView: column headers shoud appear RT-30363 Region calls requestLayout too aggressively ! javafx-ui-common/src/javafx/scene/Parent.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/NestedTableColumnHeader.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TableColumnHeader.java From lehmann at media-interactive.de Thu Jun 13 02:33:13 2013 From: lehmann at media-interactive.de (Werner Lehmann) Date: Thu, 13 Jun 2013 11:33:13 +0200 Subject: How to see when a scene gets shown? In-Reply-To: References: Message-ID: <51B991D9.6080903@media-interactive.de> Pedro, I have had cases where I would use a Node.sceneProperty listener to delay some initializations which depend on a scene. It is not exactly what you are asking but maybe this is one of those cases, too. Werner On 13.06.2013 00:00, Pedro Duque Vieira wrote: > Hi, > > On my swing/javafx app - javafx scene embedded in a swing app, I need to > know when the scene gets shown to the user or becomes visible. Or when the > same happens to a node. > > I've glanced through the API but have not found a way to do it. Does anyone > know how? From hang.vo at oracle.com Thu Jun 13 04:49:25 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 13 Jun 2013 11:49:25 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130613115004.5B79E481BF@hg.openjdk.java.net> Changeset: 3544b9b5265d Author: Martin Sladecek Date: 2013-06-13 13:39 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/3544b9b5265d RT-31031 Memory leak due to remaining strong references caused by property binding ! javafx-beans/src/javafx/beans/property/BooleanPropertyBase.java ! javafx-beans/src/javafx/beans/property/DoublePropertyBase.java ! javafx-beans/src/javafx/beans/property/FloatPropertyBase.java ! javafx-beans/src/javafx/beans/property/IntegerPropertyBase.java ! javafx-beans/src/javafx/beans/property/ListPropertyBase.java ! javafx-beans/src/javafx/beans/property/LongPropertyBase.java ! javafx-beans/src/javafx/beans/property/MapPropertyBase.java ! javafx-beans/src/javafx/beans/property/ObjectPropertyBase.java ! javafx-beans/src/javafx/beans/property/SetPropertyBase.java ! javafx-beans/src/javafx/beans/property/StringPropertyBase.java Changeset: 851f2823c6de Author: Martin Sladecek Date: 2013-06-13 13:41 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/851f2823c6de merge - javafx-fxml/.hgignore From hang.vo at oracle.com Thu Jun 13 05:07:39 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 13 Jun 2013 12:07:39 +0000 Subject: hg: openjfx/8/graphics/rt: RT-31065 Not obvious what units are used in prism.printallocs summaries Message-ID: <20130613120751.51895481C1@hg.openjdk.java.net> Changeset: 494931dfcb1f Author: Daniel Blaukopf Date: 2013-06-13 15:01 +0300 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/494931dfcb1f RT-31065 Not obvious what units are used in prism.printallocs summaries ! prism-common/src/com/sun/prism/impl/PrismTrace.java From pedro.duquevieira at gmail.com Thu Jun 13 05:19:52 2013 From: pedro.duquevieira at gmail.com (Pedro Duque Vieira) Date: Thu, 13 Jun 2013 13:19:52 +0100 Subject: How to see when a scene gets shown? Message-ID: Hi Werner, Thanks for your input but unfortunately this is not the case. I want something to happen as soon as the app gets shown to the user. Everything is already attached to a scene but the scene has not yet become "live". I remember java3D had an event that you could listen to, I think it was called something like "isLive" for when a scene was shown. Thanks, regards, > Pedro, > I have had cases where I would use a Node.sceneProperty listener to > delay some initializations which depend on a scene. It is not exactly > what you are asking but maybe this is one of those cases, too. > Werner On 13.06.2013 00:00, Pedro Duque Vieira wrote: > Hi, > > On my swing/javafx app - javafx scene embedded in a swing app, I need to > know when the scene gets shown to the user or becomes visible. Or when the > same happens to a node. > > I've glanced through the API but have not found a way to do it. Does anyone > know how? -- Pedro Duque Vieira From david.grieve at oracle.com Thu Jun 13 06:11:41 2013 From: david.grieve at oracle.com (David Grieve) Date: Thu, 13 Jun 2013 09:11:41 -0400 Subject: How to see when a scene gets shown? In-Reply-To: References: Message-ID: <9247C775-26FA-4AAD-AE31-EFC6B93863D9@oracle.com> Get the window of the scene and add a handler for the onShownProperty via the setOnShown method. Add a listener to the Scene's windowProperty and add/remove your handler there. On Jun 13, 2013, at 8:19 AM, Pedro Duque Vieira wrote: > Hi Werner, > > Thanks for your input but unfortunately this is not the case. > I want something to happen as soon as the app gets shown to the user. > Everything is already attached to a scene but the scene has not yet become > "live". > > I remember java3D had an event that you could listen to, I think it was > called something like "isLive" for when a scene was shown. > > Thanks, regards, > > > >> Pedro, >> I have had cases where I would use a Node.sceneProperty listener to >> delay some initializations which depend on a scene. It is not exactly >> what you are asking but maybe this is one of those cases, too. >> Werner > > > On 13.06.2013 00:00, Pedro Duque Vieira wrote: >> Hi, >> >> On my swing/javafx app - javafx scene embedded in a swing app, I need to >> know when the scene gets shown to the user or becomes visible. Or when the >> same happens to a node. >> >> I've glanced through the API but have not found a way to do it. Does > anyone >> know how? > > -- > Pedro Duque Vieira From hang.vo at oracle.com Thu Jun 13 06:19:09 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 13 Jun 2013 13:19:09 +0000 Subject: hg: openjfx/8/controls/rt: RT-31042: fix NPE from Declaration found by running CSSParserTest Message-ID: <20130613132020.8C84C481C2@hg.openjdk.java.net> Changeset: 29f85364846e Author: David Grieve Date: 2013-06-13 09:04 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/29f85364846e RT-31042: fix NPE from Declaration found by running CSSParserTest ! javafx-ui-common/src/com/sun/javafx/css/Stylesheet.java ! javafx-ui-common/test/unit/com/sun/javafx/css/parser/CSSParserTest.java From hang.vo at oracle.com Thu Jun 13 07:07:44 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 13 Jun 2013 14:07:44 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30239 fixing variable Message-ID: <20130613140803.14D4B481C6@hg.openjdk.java.net> Changeset: f262a166a312 Author: David Hill Date: 2013-06-13 09:52 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/f262a166a312 RT-30239 fixing variable ! glass/glass-lib-lens/src/LensApplication.c From pedro.duquevieira at gmail.com Thu Jun 13 07:22:11 2013 From: pedro.duquevieira at gmail.com (Pedro Duque Vieira) Date: Thu, 13 Jun 2013 15:22:11 +0100 Subject: How to see when a scene gets shown? In-Reply-To: <9247C775-26FA-4AAD-AE31-EFC6B93863D9@oracle.com> References: <9247C775-26FA-4AAD-AE31-EFC6B93863D9@oracle.com> Message-ID: Hi David, But does that work for a scene that's embeded in a JXPanel? I would think there is no window in this case or is JXPanel the window? Thanks. Regards, On Thu, Jun 13, 2013 at 2:11 PM, David Grieve wrote: > Get the window of the scene and add a handler for the onShownProperty via > the setOnShown method. Add a listener to the Scene's windowProperty and > add/remove your handler there. > > On Jun 13, 2013, at 8:19 AM, Pedro Duque Vieira < > pedro.duquevieira at gmail.com> wrote: > > > Hi Werner, > > > > Thanks for your input but unfortunately this is not the case. > > I want something to happen as soon as the app gets shown to the user. > > Everything is already attached to a scene but the scene has not yet > become > > "live". > > > > I remember java3D had an event that you could listen to, I think it was > > called something like "isLive" for when a scene was shown. > > > > Thanks, regards, > > > > > > > >> Pedro, > >> I have had cases where I would use a Node.sceneProperty listener to > >> delay some initializations which depend on a scene. It is not exactly > >> what you are asking but maybe this is one of those cases, too. > >> Werner > > > > > > On 13.06.2013 00:00, Pedro Duque Vieira wrote: > >> Hi, > >> > >> On my swing/javafx app - javafx scene embedded in a swing app, I need to > >> know when the scene gets shown to the user or becomes visible. Or when > the > >> same happens to a node. > >> > >> I've glanced through the API but have not found a way to do it. Does > > anyone > >> know how? > > > > -- > > Pedro Duque Vieira > > -- Pedro Duque Vieira From lehmann at media-interactive.de Thu Jun 13 07:26:22 2013 From: lehmann at media-interactive.de (Werner Lehmann) Date: Thu, 13 Jun 2013 16:26:22 +0200 Subject: How to see when a scene gets shown? In-Reply-To: <9247C775-26FA-4AAD-AE31-EFC6B93863D9@oracle.com> References: <9247C775-26FA-4AAD-AE31-EFC6B93863D9@oracle.com> Message-ID: <51B9D68E.3070708@media-interactive.de> Yes, that's what I meant before: > sceneProperty().addListener(new InvalidationListener() { > @Override > public void invalidated(Observable arg0) > { > Scene s = getScene(); > if (s != null) > { > s.windowProperty().addListener(new InvalidationListener() { > @Override > public void invalidated(Observable arg0) > { > if (getScene() != null && getScene().getWindow() != null) > { ... > } > } > }); > } > } > }); By the way, this is part of a workaround to hide a popup when the window underneath (a JFrame) is moved. AutoHide won't work with JFXPanel involved. Werner On 13.06.2013 15:11, David Grieve wrote: > Get the window of the scene and add a handler for the onShownProperty > via the setOnShown method. Add a listener to the Scene's > windowProperty and add/remove your handler there. From hang.vo at oracle.com Thu Jun 13 08:04:16 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 13 Jun 2013 15:04:16 +0000 Subject: hg: openjfx/2u/master/rt: Added tag 2.2.40-b29 for changeset 6b5ccbc93d06 Message-ID: <20130613150419.F0926481C9@hg.openjdk.java.net> Changeset: 061182f5d237 Author: hudson Date: 2013-06-12 16:44 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/master/rt/rev/061182f5d237 Added tag 2.2.40-b29 for changeset 6b5ccbc93d06 ! .hgtags From hang.vo at oracle.com Thu Jun 13 08:28:21 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 13 Jun 2013 15:28:21 +0000 Subject: hg: openjfx/8/graphics/rt: Partial RT-31067: exclude doc-files/** from src dirs to avoid duplicate files Message-ID: <20130613152842.C22AA481CC@hg.openjdk.java.net> Changeset: 7ddf8864be99 Author: kcr Date: 2013-06-13 07:56 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/7ddf8864be99 Partial RT-31067: exclude doc-files/** from src dirs to avoid duplicate files ! generator.gradle From artem.ananiev at oracle.com Thu Jun 13 09:43:15 2013 From: artem.ananiev at oracle.com (Artem Ananiev) Date: Thu, 13 Jun 2013 20:43:15 +0400 Subject: How to see when a scene gets shown? In-Reply-To: References: <9247C775-26FA-4AAD-AE31-EFC6B93863D9@oracle.com> Message-ID: <51B9F6A3.6010708@oracle.com> On 6/13/2013 6:22 PM, Pedro Duque Vieira wrote: > Hi David, > > But does that work for a scene that's embeded in a JXPanel? I would think > there is no window in this case or is JXPanel the window? There is a window. It's not a regular top-level window, though. It's implicitly shown/hidden by JFXPanel, when it's assigned a scene. Please, take a look at JFXPanel.setSceneImpl(), it's pretty small and clear. Thanks, Artem > Thanks. Regards, > > On Thu, Jun 13, 2013 at 2:11 PM, David Grieve wrote: > >> Get the window of the scene and add a handler for the onShownProperty via >> the setOnShown method. Add a listener to the Scene's windowProperty and >> add/remove your handler there. >> >> On Jun 13, 2013, at 8:19 AM, Pedro Duque Vieira < >> pedro.duquevieira at gmail.com> wrote: >> >>> Hi Werner, >>> >>> Thanks for your input but unfortunately this is not the case. >>> I want something to happen as soon as the app gets shown to the user. >>> Everything is already attached to a scene but the scene has not yet >> become >>> "live". >>> >>> I remember java3D had an event that you could listen to, I think it was >>> called something like "isLive" for when a scene was shown. >>> >>> Thanks, regards, >>> >>> >>> >>>> Pedro, >>>> I have had cases where I would use a Node.sceneProperty listener to >>>> delay some initializations which depend on a scene. It is not exactly >>>> what you are asking but maybe this is one of those cases, too. >>>> Werner >>> >>> >>> On 13.06.2013 00:00, Pedro Duque Vieira wrote: >>>> Hi, >>>> >>>> On my swing/javafx app - javafx scene embedded in a swing app, I need to >>>> know when the scene gets shown to the user or becomes visible. Or when >> the >>>> same happens to a node. >>>> >>>> I've glanced through the API but have not found a way to do it. Does >>> anyone >>>> know how? >>> >>> -- >>> Pedro Duque Vieira >> >> > > From hang.vo at oracle.com Thu Jun 13 10:05:28 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 13 Jun 2013 17:05:28 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30239/RT-31080 fix lens method lookup for reportException Message-ID: <20130613170556.2054D481D2@hg.openjdk.java.net> Changeset: f2b4cebf34b8 Author: David Hill Date: 2013-06-13 12:47 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/f2b4cebf34b8 RT-30239/RT-31080 fix lens method lookup for reportException ! glass/glass-lib-lens/src/LensApplication.c From hang.vo at oracle.com Thu Jun 13 11:18:40 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 13 Jun 2013 18:18:40 +0000 Subject: hg: openjfx/8/graphics/rt: RT-29523: Upgrade to use PlatformLogger.Level instead of primitive int type - LensLogger.c fix Message-ID: <20130613181858.E6EBF481D5@hg.openjdk.java.net> Changeset: 80f981125495 Author: Felipe Heidrich Date: 2013-06-13 11:04 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/80f981125495 RT-29523: Upgrade to use PlatformLogger.Level instead of primitive int type - LensLogger.c fix ! glass/glass-lib-lens/src/LensLogger.c From hjohn at xs4all.nl Thu Jun 13 16:41:17 2013 From: hjohn at xs4all.nl (John Hendrikx) Date: Fri, 14 Jun 2013 01:41:17 +0200 Subject: Docs for Binding lacking? Message-ID: <51BA589D.502@xs4all.nl> Hi List, I'm having a hard time to find good documentation on some aspects of bind and bindDirectional. I found several forum posts, some books and lots of examples, but none really touch upon the subject of references between bindings and garbage collection. Would it be possible to enhance the javadocs a bit or create a tutorial for this? Things that are unclear for me (until I test by trail and error), so correct me if I got something wrong: 1) Garbage collection of bindings; basically, X.bind(Y) will result in X's lifecycle to be bound to Y. If Y is a long-lived object, and X is a short-lived frequently replaced object, then many instances of X will be left around consuming memory (and CPU cycles on every Y update) until Y dies. A single forgotten binding of this type can result in whole UI graphs to be locked in memory. The same does not occur with bindBidirectional. The javadocs describe this type of binding as "bind with inverse", which sounds to me it is mere short-hand for doing X.bind(Y) + Y.bind(X), if that were allowed, resulting in both X and Y's lifecycles to be bound to each other. Yet, that's not what happens. With a bidirectional binding, either X or Y can go out of scope, and the binding dies with it, which is a very nice feature and an important consideration when choosing the type of binding that it deserves some mention in the docs. Using bind() seems to be the default that is used everywhere, because it is short and nice -- I'm however thinking my life would have been much easier had I used bindBidirectional as the "default" binding everywhere in my code -- I'm pretty sure most of the bindings I did in the past could have been bidirectional without any consequence. In complex cases with many unidirectional bindings (that maybe could have been bidirectional without impacting the result), I resorted to using a helper class that keeps track of all the bindings created so they can all be unbound with a single call to avoid creating somekind of memory leak. 2) For bi directional bindings, it is unclear which value will be the final result of the two bound properties (especially confusing in Bindings.bindBidirectional). X.bind(Y) will mean X takes the value of Y as the direction of the binding enforces it. X.bindBidirectional(Y) or Bindings.bindBidirectional(X, Y) have no direction and it is unclear whether, initially, the result will be the value of X or the value of Y. --John From jonathan.giles at oracle.com Thu Jun 13 16:53:19 2013 From: jonathan.giles at oracle.com (Jonathan Giles) Date: Fri, 14 Jun 2013 11:53:19 +1200 Subject: Docs for Binding lacking? In-Reply-To: <51BA589D.502@xs4all.nl> References: <51BA589D.502@xs4all.nl> Message-ID: <51BA5B6F.7000007@oracle.com> I'm not involved in the development of the binding API, so I'll leave a full response to the professionals, but you may be interested in this jira that was just resolved yesterday by Martin: https://javafx-jira.kenai.com/browse/RT-31031 -- Jonathan On 14/06/2013 11:41 a.m., John Hendrikx wrote: > Hi List, > > I'm having a hard time to find good documentation on some aspects of > bind and bindDirectional. I found several forum posts, some books and > lots of examples, but none really touch upon the subject of references > between bindings and garbage collection. > > Would it be possible to enhance the javadocs a bit or create a > tutorial for this? Things that are unclear for me (until I test by > trail and error), so correct me if I got something wrong: > > 1) Garbage collection of bindings; basically, X.bind(Y) will result in > X's lifecycle to be bound to Y. If Y is a long-lived object, and X is > a short-lived frequently replaced object, then many instances of X > will be left around consuming memory (and CPU cycles on every Y > update) until Y dies. A single forgotten binding of this type can > result in whole UI graphs to be locked in memory. > > The same does not occur with bindBidirectional. The javadocs describe > this type of binding as "bind with inverse", which sounds to me it is > mere short-hand for doing X.bind(Y) + Y.bind(X), if that were allowed, > resulting in both X and Y's lifecycles to be bound to each other. > Yet, that's not what happens. With a bidirectional binding, either X > or Y can go out of scope, and the binding dies with it, which is a > very nice feature and an important consideration when choosing the > type of binding that it deserves some mention in the docs. > > Using bind() seems to be the default that is used everywhere, because > it is short and nice -- I'm however thinking my life would have been > much easier had I used bindBidirectional as the "default" binding > everywhere in my code -- I'm pretty sure most of the bindings I did in > the past could have been bidirectional without any consequence. In > complex cases with many unidirectional bindings (that maybe could have > been bidirectional without impacting the result), I resorted to using > a helper class that keeps track of all the bindings created so they > can all be unbound with a single call to avoid creating somekind of > memory leak. > > 2) For bi directional bindings, it is unclear which value will be the > final result of the two bound properties (especially confusing in > Bindings.bindBidirectional). X.bind(Y) will mean X takes the value of > Y as the direction of the binding enforces it. X.bindBidirectional(Y) > or Bindings.bindBidirectional(X, Y) have no direction and it is > unclear whether, initially, the result will be the value of X or the > value of Y. > > --John > From hang.vo at oracle.com Thu Jun 13 16:49:22 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Thu, 13 Jun 2013 23:49:22 +0000 Subject: hg: openjfx/8/master/rt: 80 new changesets Message-ID: <20130614000632.3FB4A481E7@hg.openjdk.java.net> Changeset: 51ca8a8468e9 Author: mv157916 Date: 2013-06-08 21:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/51ca8a8468e9 RT-31017: Update the JDK build number to b93 in rt/build.properties file in the JavaFX 8 Master forest. ! build.properties Changeset: eb4b66ebb62c Author: Yao Wang Date: 2013-06-04 14:21 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/eb4b66ebb62c RT-29890 Rendering Artifact on Cylinder and Sphere ! javafx-ui-common/src/javafx/scene/shape/Cylinder.java ! javafx-ui-common/src/javafx/scene/shape/Sphere.java Changeset: 06fc41c8f8b1 Author: Alexander Kouznetsov Date: 2013-06-04 15:10 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/06fc41c8f8b1 3DViewer: Improved optimizer to remove only middle KeyValues of a repeating sequences ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 3efe9d22038b Author: Alexander Kouznetsov Date: 2013-06-04 15:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/3efe9d22038b 3DViewer: Not comparing interpolators or KeyValues before fix for RT-30891 is in. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 6b3080191250 Author: dmasada Date: 2013-06-04 15:39 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/6b3080191250 RT-30913 Add Modena and 3DViewer to automated build ! apps/build.xml ! apps/experiments/3DViewer/build.xml ! apps/experiments/Modena/build.xml ! apps/experiments/Modena/nbproject/project.properties + apps/experiments/build.xml Changeset: 39089954dc77 Author: "Jasper Potts" Date: 2013-06-04 13:14 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/39089954dc77 3D Viewer App: Added optimize and Java Source export ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/javasource/JavaSourceExporter.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Importer3D.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/ContentModel.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/main.fxml Changeset: 597c09e7d90d Author: "Jasper Potts" Date: 2013-06-04 16:59 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/597c09e7d90d 3D Viewer App: Added timeline controls and display screen ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/ContentModel.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/TimelineController.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/TimelineDisplay.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/main.fxml ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/viewer.css + apps/experiments/3DViewer/src/test/java/com/javafx/experiments/exporters/javasource/JavaSourceExporterTestApp.java Changeset: 1b69050a634b Author: "Jasper Potts" Date: 2013-06-04 16:59 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/1b69050a634b Merge ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 4d270a8b1c08 Author: Martin Sladecek Date: 2013-06-05 11:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/4d270a8b1c08 [JAVADOC] RT-30848 Missing documentation of Region.layoutInArea + since tag to Parent#requestParentLayout ! javafx-ui-common/src/javafx/scene/Parent.java ! javafx-ui-common/src/javafx/scene/layout/Region.java Changeset: 1960366c3157 Author: Martin Sladecek Date: 2013-06-05 11:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/1960366c3157 Automated merge with file:///home/martin/work/jfx-80-sync/rt Changeset: d8cc9c99d9f4 Author: Martin Sladecek Date: 2013-06-05 11:08 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/d8cc9c99d9f4 Automated merge with file:///home/martin/work/jfx-80-sync/rt Changeset: 8bebc4d79bfe Author: Martin Sladecek Date: 2013-06-05 13:43 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/8bebc4d79bfe RT-30831 Unsorted mode in the SortedList ! javafx-beans/src/javafx/collections/transformation/SortedList.java ! javafx-beans/test/javafx/collections/SortedListTest.java Changeset: 82df4606a165 Author: Martin Sladecek Date: 2013-06-05 13:43 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/82df4606a165 merge Changeset: 411a75a54143 Author: Martin Soch Date: 2013-06-05 15:10 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/411a75a54143 SW pipeline: fix for performance regression in image rendering (RT-30710) ! prism-sw-native/src/JPiscesRenderer.c ! prism-sw-native/src/PiscesBlit.c Changeset: bb8e96b8b2b3 Author: Martin Soch Date: 2013-06-05 15:14 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/bb8e96b8b2b3 SW pipeline: removing default comments from SWArgbPreTexture class ! prism-sw/src/com/sun/prism/sw/SWArgbPreTexture.java Changeset: 54446b832921 Author: Martin Soch Date: 2013-06-05 15:16 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/54446b832921 merge Changeset: cfc2addd8247 Author: Radko Najman Date: 2013-06-05 15:39 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/cfc2addd8247 Layouts - getChildren() optimization ! javafx-ui-common/src/javafx/scene/layout/AnchorPane.java ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/StackPane.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java Changeset: 18e84f5dbf41 Author: kcr Date: 2013-06-05 09:53 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/18e84f5dbf41 RT-30916 Winlauncher.cpp failing to compile with Gradle Contributed-by: Mark Howe Reviewed-by: ngthomas, kcr ! deploy/packager/native/windows/WinLauncher.cpp Changeset: 786c1575aac2 Author: snorthov Date: 2013-06-05 13:19 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/786c1575aac2 [COSMETIC CHANGE ONLY] workaround for Eclipse compiler ! javafx-beans/src/javafx/collections/transformation/SortedList.java Changeset: c549e432383d Author: Felipe Heidrich Date: 2013-06-05 11:39 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/c549e432383d RT-30862: Animated text leaves cheese on the scene ! prism-common/src/com/sun/prism/impl/GlyphCache.java Changeset: dc90699e1820 Author: snorthov Date: 2013-06-05 14:55 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/dc90699e1820 [COSMETIC CHANGE ONLY] workaround for Eclipse compiler ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/TimelineController.java Changeset: a8528aa93120 Author: Alexander Kouznetsov Date: 2013-06-05 11:12 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/a8528aa93120 Fix for RT-30891 Interpolators don't implement equals. Reviewed-by: Martin ! javafx-anim/src/com/sun/scenario/animation/NumberTangentInterpolator.java ! javafx-anim/src/com/sun/scenario/animation/SplineInterpolator.java ! javafx-anim/src/javafx/animation/Interpolator.java ! javafx-anim/test/unit/com/sun/scenario/animation/NumberTangentInterpolatorTest.java + javafx-anim/test/unit/com/sun/scenario/animation/SplineInterpolatorTest.java Changeset: 63bf3c13723a Author: Alexander Kouznetsov Date: 2013-06-05 12:19 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/63bf3c13723a Automated merge with ssh://jfxsrc.sfbay.sun.com//javafx/8.0/scrum/graphics/jfx/rt/ Changeset: 4f4bc0128afe Author: snorthov Date: 2013-06-05 16:28 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/4f4bc0128afe RT-13813: Full screen overlay warning needs to be MT safe ! javafx-ui-common/src/com/sun/javafx/tk/Toolkit.java ! javafx-ui-common/src/javafx/scene/Scene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/AbstractPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/GlassStage.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/OverlayWarning.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumToolkit.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/WindowStage.java Changeset: 1725cd8784b0 Author: rbair Date: 2013-06-05 14:35 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/1725cd8784b0 RT-30954: Open Source javafx-accessible ! generator.gradle ! glass/build-closed.xml + javafx-accessible/build-closed.xml + javafx-accessible/build.xml + javafx-accessible/nbproject/project.xml + javafx-accessible/project.properties + javafx-accessible/src/com/sun/javafx/accessible/providers/Accessible.java + javafx-accessible/src/com/sun/javafx/accessible/providers/AccessibleProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/AccessibleStageProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/ExpandCollapseProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/GridItemProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/GridProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/InvokeProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/RangeValueProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/SelectionItemProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/SelectionProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/ToggleProvider.java + javafx-accessible/src/com/sun/javafx/accessible/providers/ValueProvider.java + javafx-accessible/src/com/sun/javafx/accessible/utils/ControlTypeIds.java + javafx-accessible/src/com/sun/javafx/accessible/utils/EventIds.java + javafx-accessible/src/com/sun/javafx/accessible/utils/ExpandCollapseState.java + javafx-accessible/src/com/sun/javafx/accessible/utils/NavigateDirection.java + javafx-accessible/src/com/sun/javafx/accessible/utils/OrientationType.java + javafx-accessible/src/com/sun/javafx/accessible/utils/PatternIds.java + javafx-accessible/src/com/sun/javafx/accessible/utils/PropertyIds.java + javafx-accessible/src/com/sun/javafx/accessible/utils/ProviderOptions.java + javafx-accessible/src/com/sun/javafx/accessible/utils/Rect.java + javafx-accessible/src/com/sun/javafx/accessible/utils/ToggleState.java ! javafx-ui-common/build-closed.xml ! javafx-ui-common/project.properties ! javafx-ui-controls/build-closed.xml ! javafx-ui-quantum/build-closed.xml ! javafx-ui-quantum/project.properties ! test-stub-toolkit/build-closed.xml ! test-stub-toolkit/project.properties Changeset: fc584651b922 Author: snorthov Date: 2013-06-05 18:29 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/fc584651b922 Backed out of changeset 3837:4f4bc0128afe ! javafx-ui-common/src/com/sun/javafx/tk/Toolkit.java ! javafx-ui-common/src/javafx/scene/Scene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/AbstractPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/GlassStage.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/OverlayWarning.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumToolkit.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/WindowStage.java Changeset: 9d3e54202b29 Author: snorthov Date: 2013-06-05 18:30 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/9d3e54202b29 Merge with fc584651b922c9a366c874dba602382c5b78daef Changeset: d9e00fa40ee1 Author: snorthov Date: 2013-06-05 18:58 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/d9e00fa40ee1 fix .classpath ! .classpath Changeset: f44e9ccc9d15 Author: Richard Bair Date: 2013-06-05 16:25 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/f44e9ccc9d15 RT-30955 JDK-8015656 causes gradle build breakage ! gradleBuildSrc/build.gradle Changeset: e7050b44101a Author: Chien Yang Date: 2013-06-06 09:32 +0800 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/e7050b44101a Fix to RT-30340: Functional regression in Charts.Scatter benchmark on embedded since h995 of graphics scrum Reviewed by Kevin ! prism-common/src/com/sun/prism/impl/BaseGraphics.java Changeset: 7ac411e54de3 Author: Richard Bair Date: 2013-06-05 19:08 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/7ac411e54de3 RT-30499: Rename groovy/com/sun/javafx/build package to something without "build" in the name Summary: renamed package to "gradle". - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CCTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CompileHLSLTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CompileResourceTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/JavaHeaderTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/LinkTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/NativeCompileTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/CCTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/CompileHLSLTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/CompileResourceTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/JavaHeaderTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/LinkTask.groovy + gradleBuildSrc/src/main/groovy/com/sun/javafx/gradle/NativeCompileTask.groovy Changeset: 0049b4190d1b Author: Chien Yang Date: 2013-06-06 10:13 +0800 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/0049b4190d1b Fix to RT-30594: Evaluate the restriction set on Mesh's indexBuffer (see RT-30448) Reviewed by Kevin ! javafx-ui-common/src/javafx/scene/shape/TriangleMesh.java ! prism-common/src/com/sun/prism/impl/BaseMesh.java ! prism-d3d-native/src/D3DContext.cc ! prism-d3d-native/src/D3DMesh.cc ! prism-d3d-native/src/D3DMesh.h ! prism-d3d/src/com/sun/prism/d3d/D3DContext.java ! prism-d3d/src/com/sun/prism/d3d/D3DMesh.java ! prism-es2-native/src/GLContext.c ! prism-es2-native/src/PrismES2Defs.h ! prism-es2/src/com/sun/prism/es2/ES2Context.java ! prism-es2/src/com/sun/prism/es2/ES2Mesh.java ! prism-es2/src/com/sun/prism/es2/GLContext.java Changeset: 7fc4181950e2 Author: Petr Pchelko Date: 2013-06-06 11:34 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/7fc4181950e2 RT-28963: Mac: DragEvent.getScreenY() returns incorrect value on drag drop Reviewed-by: anthony ! glass/glass-lib-macosx/src/GlassViewDelegate.m Changeset: c228567fe494 Author: Alexander Kouznetsov Date: 2013-06-06 00:59 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/c228567fe494 FXMLExport: Updated to the latest version of TriangleMesh API. Fixed children doubling. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/fxml/FXMLExporter.java Changeset: 443a9ce81b2c Author: Alexander Kouznetsov Date: 2013-06-06 01:00 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/443a9ce81b2c MayaImporter: Removed unnecessary handler from Timeline KeyFrames. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/MayaImporter.java Changeset: 83751683c863 Author: Alexander Kouznetsov Date: 2013-06-06 01:02 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/83751683c863 3DViewer optimizer: clean up repeating points and texCoords. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: e91e20387c16 Author: Alexander Kouznetsov Date: 2013-06-06 01:03 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/e91e20387c16 3DViewer: Fixed NPE in Timeline Controller ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/TimelineController.java Changeset: 8c43df1ae523 Author: Eva Krejcirova Date: 2013-06-06 13:24 +0100 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/8c43df1ae523 RT-30804: Fixed partial arm cross build ! javafx-builders/build-closed.xml ! javafx-builders/project.properties Changeset: 721b2775dbfc Author: Pavel Safrata Date: 2013-06-06 15:19 +0100 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/721b2775dbfc RT-30668: fixed and cleaned ClipboardContent API. ! javafx-ui-common/src/javafx/scene/input/ClipboardContent.java ! javafx-ui-common/test/unit/javafx/scene/input/ClipboardContentTest.java Changeset: 9a7bc40eca11 Author: snorthov Date: 2013-06-06 11:03 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/9a7bc40eca11 [COSMETIC CHANGE ONLY] workaround for Eclipse compiler [verified with Martin] ! javafx-beans/test/javafx/collections/SortedListTest.java Changeset: 9975ebce5940 Author: Martin Sladecek Date: 2013-06-06 17:25 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/9975ebce5940 Fix for RT-30947, RT-30915, RT-30936 ! javafx-ui-common/src/javafx/scene/Parent.java Changeset: 2c24c839cc30 Author: Martin Sladecek Date: 2013-06-06 17:26 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/2c24c839cc30 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx////rt Changeset: 2095f12bf331 Author: Artem Ananiev Date: 2013-06-06 19:46 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/2095f12bf331 RT-30579: Still cannot rely on Thread.setDefaultUncaughtExceptionHandler() to work with JavaFX App Thread. Reviewed-by: Kevin Rushforth, Steve Northover ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumToolkit.java + tests/glass/ExceptionHandler/test/com/sun/glass/ui/DefaultExceptionHandlerTest.java ! tests/glass/build.xml Changeset: df5ed39ad4a7 Author: snorthov Date: 2013-06-06 12:48 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/df5ed39ad4a7 RT-30791: Quantum Cleanup: Make embedded rendering use the standard locking and scene state mechanism - javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedScene.java + javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedState.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/GlassScene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/SceneState.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/UploadingPainter.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/ViewScene.java ! prism-common/src/com/sun/prism/PresentableState.java ! prism-j2d/src/com/sun/prism/j2d/J2DPresentable.java ! prism-sw/src/com/sun/prism/sw/SWPresentable.java Changeset: 3181efc5d5ed Author: Alexander Kouznetsov Date: 2013-06-06 12:07 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/3181efc5d5ed 3DViewer: Refactoring in Optimizer ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: bb68d69e00ca Author: Alexander Kouznetsov Date: 2013-06-06 15:45 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/bb68d69e00ca MayaImport: Skipping frames with negative time. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java Changeset: 005e04319ded Author: Alexander Kouznetsov Date: 2013-06-06 15:55 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/005e04319ded 3DViewer optimizer: refactoring, added KeyFrame, KeyValue analysis. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: bf02e9d55b85 Author: Alexander Kouznetsov Date: 2013-06-06 17:06 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/bf02e9d55b85 3DViewer optimizer: removes all bad faces from the mesh. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 1c34cffdaf7d Author: Alexander Kouznetsov Date: 2013-06-06 18:13 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/1c34cffdaf7d 3DViewer MayaLoader: skipping empty meshes ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java Changeset: 53248a630305 Author: Martin Sladecek Date: 2013-06-07 08:36 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/53248a630305 Unified reports of null reference in SelectBinding on "info" level. ! javafx-beans/src/com/sun/javafx/binding/SelectBinding.java Changeset: b4fa1e830511 Author: Martin Sladecek Date: 2013-06-07 08:36 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/b4fa1e830511 Automated merge with file:///home/martin/work/jfx-80-sync/rt Changeset: b91199dd018a Author: Alexander Kouznetsov Date: 2013-06-07 04:25 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/b91199dd018a 3DViewer Optimizer: Fixed nasty sinking text bug. Added DISCRETE_ONLY mode. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Optimizer.java Changeset: 148e27736eb6 Author: Artem Ananiev Date: 2013-06-07 16:30 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/148e27736eb6 RT-30983: Quantum cleanup: remove ToolkitInterface Reviewed-by: Kevin Rushforth, Steve Northover + javafx-ui-common/src/com/sun/javafx/tk/CompletionListener.java ! javafx-ui-common/src/com/sun/javafx/tk/DummyToolkit.java + javafx-ui-common/src/com/sun/javafx/tk/RenderJob.java ! javafx-ui-common/src/com/sun/javafx/tk/Toolkit.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedScene.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PaintCollector.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PaintRenderJob.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumRenderer.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumToolkit.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/ViewScene.java - prism-common/src/com/sun/prism/render/CompletionListener.java - prism-common/src/com/sun/prism/render/RenderJob.java - prism-common/src/com/sun/prism/render/ToolkitInterface.java ! test-stub-toolkit/src/com/sun/javafx/pgstub/StubToolkit.java ! webview/src/com/sun/javafx/webkit/prism/PrismInvoker.java Changeset: c601f830bb33 Author: "Jasper Potts" Date: 2013-06-07 13:58 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/c601f830bb33 3D Viewer App: Working on JavaSourceExporter for demos ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/exporters/javasource/JavaSourceExporter.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java Changeset: a62bc4209f53 Author: Alexander Kouznetsov Date: 2013-06-07 17:55 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/a62bc4209f53 3DViewer: Reverted hack of CullFace caused every maya file to appear all black. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java Changeset: e6d790912c2e Author: Alexander Kouznetsov Date: 2013-06-07 18:02 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/e6d790912c2e 3DViewer: Implemented settings and state persistence between sessions ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Importer3D.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/ContentModel.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/Jfx3dViewerApp.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/MainController.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/OldTestViewer.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SessionManager.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SettingsController.java Changeset: 5e0dfe90b7f2 Author: David Hill Date: 2013-06-08 10:28 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/5e0dfe90b7f2 RT-30508 adding native cross tool support ! build.gradle ! gradleBuildSrc/armv6hf.gradle ! gradleBuildSrc/armv6sf.gradle Changeset: 2e517d892d1f Author: David Hill Date: 2013-06-08 23:22 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/2e517d892d1f RT-30508 re-enabling swing building until Builders/JMX is addressed. ! build.gradle Changeset: cc71d4e40388 Author: Petr Pchelko Date: 2013-06-10 17:15 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/cc71d4e40388 RT-23876 Mac: Context Menus not working in applet Reviewed-by: anthony ! glass/glass-lib-macosx/src/GlassWindow.m Changeset: f6b05e9c2b72 Author: kcr Date: 2013-06-10 08:58 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/f6b05e9c2b72 Gradle: add .gradle directories to .hgignore ! .hgignore Changeset: 29272e7e00ee Author: kcr Date: 2013-06-10 11:37 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/29272e7e00ee Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CCTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CompileHLSLTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/CompileResourceTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/JavaHeaderTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/LinkTask.groovy - gradleBuildSrc/src/main/groovy/com/sun/javafx/build/NativeCompileTask.groovy - javafx-ui-quantum/src/com/sun/javafx/tk/quantum/EmbeddedPainter.java - prism-common/src/com/sun/prism/render/CompletionListener.java - prism-common/src/com/sun/prism/render/RenderJob.java - prism-common/src/com/sun/prism/render/ToolkitInterface.java Changeset: 57b3705ef8cb Author: David Grieve Date: 2013-06-07 14:59 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/57b3705ef8cb RT-30985: associate strings for deserialization with stylesheet ! javafx-ui-common/src/com/sun/javafx/css/Rule.java ! javafx-ui-common/src/com/sun/javafx/css/Stylesheet.java Changeset: 4e76bc7f72ef Author: Felipe Heidrich Date: 2013-06-10 16:32 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/4e76bc7f72ef RT-29523: Upgrade to use PlatformLogger.Level instead of primitive int type ! glass/glass/src/com/sun/glass/ui/accessible/AccessibleLogger.java ! glass/glass/src/com/sun/glass/ui/lens/LensApplication.java ! glass/glass/src/com/sun/glass/ui/lens/LensClipboardDelegate.java ! glass/glass/src/com/sun/glass/ui/lens/LensDnDClipboard.java ! glass/glass/src/com/sun/glass/ui/lens/LensLogger.java ! glass/glass/src/com/sun/glass/ui/lens/LensSystemClipboard.java ! glass/glass/src/com/sun/glass/ui/lens/LensWindow.java ! javafx-beans/src/com/sun/javafx/binding/SelectBinding.java ! javafx-beans/test/com/sun/javafx/binding/SelectBindingTest.java ! javafx-ui-common/src/com/sun/javafx/accessible/AccessibleNode.java ! javafx-ui-common/src/com/sun/javafx/accessible/AccessibleStage.java ! javafx-ui-common/src/com/sun/javafx/css/StyleConverterImpl.java ! javafx-ui-common/src/com/sun/javafx/css/StyleManager.java ! javafx-ui-common/src/com/sun/javafx/css/converters/EnumConverter.java ! javafx-ui-common/src/com/sun/javafx/css/parser/CSSParser.java ! javafx-ui-common/src/com/sun/javafx/scene/layout/region/Margins.java ! javafx-ui-common/src/com/sun/javafx/scene/traversal/ContainerTabOrder.java ! javafx-ui-common/src/com/sun/javafx/scene/traversal/Hueristic2D.java ! javafx-ui-common/src/com/sun/javafx/scene/traversal/TraversalEngine.java ! javafx-ui-common/src/com/sun/javafx/scene/traversal/WeightedClosestCorner.java ! javafx-ui-common/src/javafx/scene/CssStyleHelper.java ! javafx-ui-common/src/javafx/scene/Node.java ! javafx-ui-common/src/javafx/scene/Parent.java ! javafx-ui-common/src/javafx/scene/Scene.java ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/accessible/AccessibleCheckBox.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/accessible/AccessibleControl.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/behavior/ListCellBehavior.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/behavior/TreeCellBehavior.java ! javafx-ui-controls/src/javafx/scene/control/Control.java ! javafx-ui-controls/src/javafx/scene/control/PopupControl.java ! javafx-ui-controls/src/javafx/scene/control/cell/PropertyValueFactory.java ! javafx-ui-controls/src/javafx/scene/control/cell/TreeItemPropertyValueFactory.java ! javafx-ui-controls/test/javafx/scene/control/ControlTest.java Changeset: b7d5ab1bf17f Author: kcr Date: 2013-06-10 17:51 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/b7d5ab1bf17f [TEST-ONLY] Disable failing unit test as a workaround for RT-31042 ! javafx-ui-common/test/unit/com/sun/javafx/css/parser/CSSParserTest.java Changeset: 17fa39d79a6f Author: peterz Date: 2013-06-11 11:14 +0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/17fa39d79a6f RT-17666 Webview and HTMLEditor should support printing their content ! webview/native/Source/WebCore/mapfile-macosx ! webview/native/Source/WebCore/mapfile-vers ! webview/native/Source/WebCore/platform/java/WebPage.cpp ! webview/native/Source/WebCore/platform/java/WebPage.h ! webview/src/com/sun/javafx/scene/web/skin/HTMLEditorSkin.java ! webview/src/com/sun/webkit/WebPage.java ! webview/src/javafx/scene/web/HTMLEditor.java ! webview/src/javafx/scene/web/WebEngine.java Changeset: 06aad33a6e6b Author: Martin Sladecek Date: 2013-06-11 12:39 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/06aad33a6e6b RT-30902 FlowPane, TilePane and HBox may not handle the baseline correctly ! javafx-ui-common/src/javafx/scene/layout/AnchorPane.java ! javafx-ui-common/src/javafx/scene/layout/BorderPane.java ! javafx-ui-common/src/javafx/scene/layout/FlowPane.java ! javafx-ui-common/src/javafx/scene/layout/GridPane.java ! javafx-ui-common/src/javafx/scene/layout/HBox.java ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-common/src/javafx/scene/layout/TilePane.java ! javafx-ui-common/src/javafx/scene/layout/VBox.java ! javafx-ui-common/test/unit/javafx/scene/layout/GridPaneTest.java ! javafx-ui-common/test/unit/javafx/scene/layout/RegionTest.java Changeset: f236bb3f7fe6 Author: Martin Sladecek Date: 2013-06-11 12:40 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/f236bb3f7fe6 Automated merge with file:///home/martin/work/jfx-80-sync/rt ! javafx-ui-common/src/javafx/scene/layout/Region.java Changeset: 479da853570b Author: David Grieve Date: 2013-06-06 08:36 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/479da853570b RT-30976: lazy load listener and add listener to backing set on first call to addListener. Reviewed by Martin ! javafx-beans/src/javafx/collections/FXCollections.java Changeset: 9605455a5abe Author: Martin Sladecek Date: 2013-06-06 17:25 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/9605455a5abe Fix for RT-30947, RT-30915, RT-30936 ! javafx-ui-common/src/javafx/scene/Parent.java Changeset: 6d73ef304a85 Author: jgiles Date: 2013-06-04 16:18 +1200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/6d73ef304a85 RT-29420: VBox Popup width is computed wrong in JavaFX 8.0.0-b83 ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/ListViewSkin.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/VirtualContainerBase.java ! javafx-ui-controls/test/javafx/scene/control/ListViewTest.java Changeset: ece9e054a7cd Author: jgiles Date: 2013-06-06 08:35 +1200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/ece9e054a7cd Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/VirtualContainerBase.java Changeset: 59cdebd030e2 Author: jgiles Date: 2013-06-06 13:15 +1200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/59cdebd030e2 RT-29923: Cell with null initial value cannot be edited because the empty property is true Also, a lot of unit tests for the classes extending from Cell (some of which are @Ignored as they currently fail and need further analysis) ! javafx-ui-controls/src/javafx/scene/control/ListCell.java ! javafx-ui-controls/src/javafx/scene/control/TableCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeCell.java ! javafx-ui-controls/src/javafx/scene/control/TreeTableCell.java ! javafx-ui-controls/test/javafx/scene/control/ListCellTest.java ! javafx-ui-controls/test/javafx/scene/control/TableCellTest.java + javafx-ui-controls/test/javafx/scene/control/TreeCellTest.java + javafx-ui-controls/test/javafx/scene/control/TreeTableCellTest.java + javafx-ui-controls/test/javafx/scene/control/TreeTableRowTest.java Changeset: 812c58a5dbab Author: jgiles Date: 2013-06-06 14:51 +1200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/812c58a5dbab RT-30604: Memory leak in TreeTableView ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TableRowSkin.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TableRowSkinBase.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TreeTableRowSkin.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TreeTableViewSkin.java Changeset: 3b5502de0286 Author: jgiles Date: 2013-06-07 10:04 +1200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/3b5502de0286 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt Changeset: b8fb9136fbcb Author: David Grieve Date: 2013-06-07 14:59 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/b8fb9136fbcb RT-30985: associate strings for deserialization with stylesheet ! javafx-ui-common/src/com/sun/javafx/css/Rule.java ! javafx-ui-common/src/com/sun/javafx/css/Stylesheet.java Changeset: 69bd40665e68 Author: David Grieve Date: 2013-06-07 15:01 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/69bd40665e68 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt Changeset: 4fcbd4317b9b Author: David Grieve Date: 2013-06-11 14:17 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/4fcbd4317b9b Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt Changeset: 2ab564af5a33 Author: David Grieve Date: 2013-06-11 16:49 -0400 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/2ab564af5a33 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt ! javafx-ui-common/src/javafx/scene/Parent.java Changeset: 7203a2531ae9 Author: Martin Sladecek Date: 2013-06-12 10:07 +0200 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/7203a2531ae9 Temporarily re-enable requests for second layout while layouting (effectively disabled by RT-30363 fix), until there's a fix for RT-31016 ! javafx-ui-common/src/javafx/scene/Parent.java Changeset: 40f2b2f80bde Author: hudson Date: 2013-06-13 13:50 -0700 URL: http://hg.openjdk.java.net/openjfx/8/master/rt/rev/40f2b2f80bde Added tag 8.0-b94 for changeset 7203a2531ae9 ! .hgtags From milan.kubec at oracle.com Fri Jun 14 00:48:32 2013 From: milan.kubec at oracle.com (Milan Kubec) Date: Fri, 14 Jun 2013 09:48:32 +0200 Subject: FXML version number In-Reply-To: References: <51B19E88.4080203@oracle.com> <51B881D6.3070605@oracle.com> Message-ID: <51BACAD0.4000707@oracle.com> Well, changes in classes referenced by FXML is a bit different story. This "API" is in fact defined by classpath that is available to FXMLLoader. And assuring compatibility on this level is more about JavaFX API backward compatibility, e.g. Scene in JavaFX 8.0 API should be signature compatible with Scene from JavaFX 2.2.21 API. FXML file will just store a hint in form of default XML namespace saying version of JavaFX API the document was created with (or last modified - depending on authoring tools; see the issue for the namespace definition). And builders are completly different story. Builders were created for developers convenience and builders are not used in FXML directly (you don't create but ), they are in fact "implementation detail" of class creation when loading FXML file. So deprecation and possible removal of builders should not be problem for developers using FXML, it must be transparent for them. Builders are used to create classes that do not have any other means of creating their instance. And we are working on solution with using constructor annotations for mapping constructor arguments to instance properties, which would allow to create an instance of class which e.g. doesn't have default constructor. Milan Dne 13.6.2013 3:57, Daniel Zwolenski napsal(a): > I guess there's the FXML namespace and directives to the Loader as one consideration, which I think is what you're focusing on here. > > The other issue though is changes to the classes that the FXML references. For example when Builders go, suddenly a whole lot of FXML files will suddenly become invalid. > > Are there any plans for version management at this level, and if not could/should there be? > > > > On 13/06/2013, at 12:12 AM, Milan Kubec wrote: > >> Hello, >> evolution of FXML is meant to be backward compatible. Any change in fx: >> namespace (no plans yet) will increase fxml version, but FXMLLoader of >> version 2 will load fxml of version 1 and 2, of course. On the other >> hand FXMLLoader of version 1 (e.g. JavaFX 2.2.21) won't be able to load >> new feature of version 2 (e.g. JavaFX 9.0). FXML version of 2 will only >> be required if given fxml file would use new feature of fx: namespace. >> >> Versioning is mainly meant for authoring tools like SceneBuilder or >> NetBeans IDE. >> >> Milan >> >> >> Dne 8.6.2013 0:43, Daniel Zwolenski napsal(a): >>> I think marking the FXML version is a good idea, but not sure what the >>> implications of an incompatibility are though if it is in the >>> backwards direction? >>> >>> There definitely will be version compatibility issues in FXML, but any >>> backwards compatibility issues will break running apps that are web >>> deployed when the JRE auto-updates on users. If the loader barfs when >>> it hits an incompatibility issue it just means those failures will be >>> more in your face. >>> >>> If a running, web-deployed app has FXML that is an older version but >>> just happens not to be using the broken bits then the loader failing >>> at this point is highly undesirable. >>> >>> >>> On Fri, Jun 7, 2013 at 6:49 PM, Milan Kubec >> > wrote: >>> >>> Hello, >>> I have implemented simple versioning for FXML documents in >>> FXMLLoader, but without support in tools it won't be very useful. >>> I have agreed with NetBeans and Scene Builder folks that they will >>> include support for versioning too. Support means that they will >>> produce document with two XML namespaces - one defines version of >>> fx: prefixed elements and attributes (xmlns:fx; it's already >>> there, just the version is appended) and the other of actual >>> JavaFX API used to produce document (xmlns; default, no prefix). >>> The first will be checked, because wrong version can cause >>> failure. The latter is only informational, no strict checking of >>> version is possible, but tools can suggest to upgrade runtime, >>> translate document etc. >>> >>> JavaFX API version is stored in System Properties as >>> "javafx.version". The open question is still where and how to >>> store fxml version in code. I think that we could have also >>> property for this purpose, e.g. "fxml.version" in System >>> Properties. So far it's part of FXMLLoader API, which is probably >>> not very fortunate. What do you think? >>> >>> Issue details: https://javafx-jira.kenai.com/browse/RT-28599 >>> >>> Milan >>> >>> From hang.vo at oracle.com Fri Jun 14 04:08:35 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Fri, 14 Jun 2013 11:08:35 +0000 Subject: hg: openjfx/8/graphics/rt: 4 new changesets Message-ID: <20130614110940.57852481FA@hg.openjdk.java.net> Changeset: d46e80b8f6de Author: tb115823 Date: 2013-06-14 10:49 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/d46e80b8f6de Support for overlays (WebView) require to remove NativeActivity and changes how opengl surface is managed. ! glass/glass-lib-lens/Android.mk + glass/glass-lib-lens/AndroidManifest.xml - glass/glass-lib-lens/src/android/Main.c - glass/glass-lib-lens/src/android/Main.h + glass/glass-lib-lens/src/android/android.c + glass/glass-lib-lens/src/android/android.h + glass/glass-lib-lens/src/android/com_oracle_dalvik_FXActivity.h + glass/glass-lib-lens/src/android/com_oracle_dalvik_FXActivity_InternalSurfaceView.h ! glass/glass-lib-lens/src/input/android/androidInput.c ! glass/glass-lib-lens/src/input/android/androidInput.h + glass/glass-lib-lens/src/input/android/androidLens.c + glass/glass-lib-lens/src/input/android/androidLens.h ! glass/glass-lib-lens/src/wm/screen/androidScreen.c + javafx-android/activity/AndroidManifest.xml + javafx-android/activity/ant.properties ! javafx-android/activity/build.xml + javafx-android/activity/nbandroid/private.properties + javafx-android/activity/src/com/oracle/dalvik/FXActivity.java + javafx-android/activity/src/com/oracle/dalvik/InternalWebView.java + javafx-android/vmlauncher/AndroidManifest.xml + javafx-android/vmlauncher/vmlauncher-jni/nbproject/configurations.xml + javafx-android/vmlauncher/vmlauncher-jni/nbproject/project.xml ! prism-es2-native/src/eglfb/wrapped_egl.c Changeset: 2866de7835d4 Author: tb115823 Date: 2013-06-14 10:49 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/2866de7835d4 Changed overlay positioning overlay with layout not transform x,y. It caused some repaint problems of WebView. ! javafx-android/activity/build.xml ! javafx-android/activity/project.properties ! javafx-android/activity/src/com/oracle/dalvik/FXActivity.java ! javafx-android/activity/src/com/oracle/dalvik/InternalWebView.java Changeset: 8bcd616caaf1 Author: tb115823 Date: 2013-06-14 10:49 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/8bcd616caaf1 javafx-android updated copyrights. ! glass/glass-lib-lens/src/android/com_oracle_dalvik_FXActivity.h ! glass/glass-lib-lens/src/android/com_oracle_dalvik_FXActivity_InternalSurfaceView.h ! glass/glass-lib-lens/src/input/android/androidLens.c ! glass/glass-lib-lens/src/input/android/androidLens.h ! javafx-android/activity/src/com/oracle/dalvik/FXActivity.java ! javafx-android/activity/src/com/oracle/dalvik/InternalWebView.java Changeset: 48be0e1be803 Author: tb115823 Date: 2013-06-14 10:49 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/48be0e1be803 Android: glass remove some unnecessary logs. ! glass/glass-lib-lens/src/android/android.c From krueger at lesspain.de Fri Jun 14 08:08:32 2013 From: krueger at lesspain.de (=?UTF-8?Q?Robert_Kr=C3=BCger?=) Date: Fri, 14 Jun 2013 17:08:32 +0200 Subject: Experience with piecewise migration Swing -> JFX Message-ID: Hi, we're currently in the process of migrating our Swing application from Apple JDK 6 to OpenJDK 8 hoping to be able to ship it bundled with OpenJDK 8 in the coming months. In addition to that we're seriously considering a Migration of the UI to JFX and it appears very tempting to do this component-wise, i.e. using JFXPanel. I have read and understood http://docs.oracle.com/javafx/2/swing/swing-fx-interoperability.htm but wanted to ask if someone has followed this route and could share their experience regarding caveats of this. How well does it work for a non-trivial application? What are the hidden problems one should be aware of (other than having 2 UI threads). Thanks in advance, Robert From swpalmer at gmail.com Fri Jun 14 08:33:12 2013 From: swpalmer at gmail.com (Scott Palmer) Date: Fri, 14 Jun 2013 11:33:12 -0400 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: References: Message-ID: Things that I ran into: On Fri, Jun 14, 2013 at 11:08 AM, Robert Kr?ger wrote: > Hi, > > we're currently in the process of migrating our Swing application from > Apple JDK 6 to OpenJDK 8 hoping to be able to ship it bundled with > OpenJDK 8 in the coming months. In addition to that we're seriously > considering a Migration of the UI to JFX and it appears very tempting > to do this component-wise, i.e. using JFXPanel. > > I have read and understood > http://docs.oracle.com/javafx/2/swing/swing-fx-interoperability.htm > but wanted to ask if someone has followed this route and could share > their experience regarding caveats of this. How well does it work for > a non-trivial application? What are the hidden problems one should be > aware of (other than having 2 UI threads). > > Thanks in advance, > > Robert > From krueger at lesspain.de Fri Jun 14 08:44:45 2013 From: krueger at lesspain.de (=?UTF-8?Q?Robert_Kr=C3=BCger?=) Date: Fri, 14 Jun 2013 17:44:45 +0200 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: References: Message-ID: Meaning, no problems at all or did you accidentally hit the send button? On Fri, Jun 14, 2013 at 5:33 PM, Scott Palmer wrote: > Things that I ran into: > > > > On Fri, Jun 14, 2013 at 11:08 AM, Robert Kr?ger wrote: >> >> Hi, >> >> we're currently in the process of migrating our Swing application from >> Apple JDK 6 to OpenJDK 8 hoping to be able to ship it bundled with >> OpenJDK 8 in the coming months. In addition to that we're seriously >> considering a Migration of the UI to JFX and it appears very tempting >> to do this component-wise, i.e. using JFXPanel. >> >> I have read and understood >> http://docs.oracle.com/javafx/2/swing/swing-fx-interoperability.htm >> but wanted to ask if someone has followed this route and could share >> their experience regarding caveats of this. How well does it work for >> a non-trivial application? What are the hidden problems one should be >> aware of (other than having 2 UI threads). >> >> Thanks in advance, >> >> Robert > > From swpalmer at gmail.com Fri Jun 14 08:46:18 2013 From: swpalmer at gmail.com (Scott Palmer) Date: Fri, 14 Jun 2013 11:46:18 -0400 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: References: Message-ID: Argh! I'm not sure how that spontaneously sent... I ran into issues with Drag and Drop. You can drag an arbitrary Java object from Swing and drop it in JavaFX, but you can't drag the same thing from JavaFX, objects that start off in JavaFX must be Serializable to be placed on the DragBoard. There are JavaFX controls that cover *most* of the Swing controls.. but they are not 1:1. There is no equivalent to FormattedTextField for example. SplitPane behaves differently from the Swing equivalent. Tooltips work differently and can't be placed on MenuItems in JavaFX. There are a lot of little things to do with different behaviour that come up that you need to work around, and there are still plenty of bugs. Hopefully many of those issues will be resolved for JavaFX 8's release. It all depends on your specific use cases though. We started with a single JFXPanel in our app because we wanted to use it as core part ofthe UI in our otherwise Swing app. Then we implemented a lot of dialogs that were basically JDialog + JFXPanel so that we could easily migrate the whole dialog to a pure JavaFX UI without a lot of fuss. For our main UI that had a JFXPanel embedded among other Swing controls we just went from that to 100% JavaFX for the whole app rather than introducing many JFXPanels inside one JFrame. Regards, Scott On Fri, Jun 14, 2013 at 11:33 AM, Scott Palmer wrote: > Things that I ran into: > > > > On Fri, Jun 14, 2013 at 11:08 AM, Robert Kr?ger wrote: > >> Hi, >> >> we're currently in the process of migrating our Swing application from >> Apple JDK 6 to OpenJDK 8 hoping to be able to ship it bundled with >> OpenJDK 8 in the coming months. In addition to that we're seriously >> considering a Migration of the UI to JFX and it appears very tempting >> to do this component-wise, i.e. using JFXPanel. >> >> I have read and understood >> http://docs.oracle.com/javafx/2/swing/swing-fx-interoperability.htm >> but wanted to ask if someone has followed this route and could share >> their experience regarding caveats of this. How well does it work for >> a non-trivial application? What are the hidden problems one should be >> aware of (other than having 2 UI threads). >> >> Thanks in advance, >> >> Robert >> > > From hang.vo at oracle.com Fri Jun 14 09:48:28 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Fri, 14 Jun 2013 16:48:28 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130614164907.01DB84820D@hg.openjdk.java.net> Changeset: 06379693010c Author: snorthov Date: 2013-06-14 12:35 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/06379693010c Eclipse support for gradle ! build.gradle ! gradle.properties Changeset: 7b91dcc804d1 Author: snorthov Date: 2013-06-14 12:37 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/7b91dcc804d1 fix .classpath ! .classpath From hang.vo at oracle.com Fri Jun 14 11:48:24 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Fri, 14 Jun 2013 18:48:24 +0000 Subject: hg: openjfx/8/graphics/rt: 3 new changesets Message-ID: <20130614184919.8650448211@hg.openjdk.java.net> Changeset: 167de3b30be4 Author: Yao Wang Date: 2013-06-14 11:31 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/167de3b30be4 RT-30714 NPE when MeshView is added to scene without mesh set. ! javafx-ui-common/src/javafx/scene/shape/MeshView.java Changeset: a78bb53afc13 Author: kcr Date: 2013-06-14 11:35 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/a78bb53afc13 Gradle: added task in gradle.generator to delete existing files from rt after copying them, both as a way to verify whether there are any leftover files (see RT-31067) and also to eventually help with the repo reorganization. ! generator.gradle Changeset: cdb1f5109fe0 Author: kcr Date: 2013-06-14 11:35 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/cdb1f5109fe0 Partial RT-31067: Gradle: added 3DViewer to gradle.generator ! generator.gradle From John_Smith at symantec.com Fri Jun 14 12:51:23 2013 From: John_Smith at symantec.com (John Smith) Date: Fri, 14 Jun 2013 12:51:23 -0700 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: References: Message-ID: <411E73D23DEC4C46BA48F2B6D8BF3D22167D756C66@TUS1XCHEVSPIN34.SYMC.SYMANTEC.COM> +1 to all Scott wrote. > There are JavaFX controls that cover *most* of the Swing controls.. but they are not 1:1. There is no equivalent to FormattedTextField for example. SplitPane behaves differently from the Swing equivalent. There are some 3rd party efforts to bridge some of the gaps between the Swing and JavaFX core functionality. For instance JIDE software just released a sleek FormattedTextField control (and other functionality): http://www.jidesoft.com/blog/2013/06/06/jidefx-beta-release/ And the jfxtras project http://jfxtras.org/ and http://fxexperience.com/controlsfx/ provide further such additions such as spinner controls, dialog boxes, etc. There is a decent list of these 3rd party tools at: http://www.oracle.com/technetwork/java/javafx/community/3rd-party-1844355.html There is a big difference between the scope of what a company like Jide provide in their standard swing toolkit (http://www.jidesoft.com/) and what they currently provide for JavaFX, so if you want something sophisticated like a pivot table that you don't want to write yourself, you need to use the Swing JFXPanel (or HTML via WebView) wrapping approach. Note that JavaFX 8 introduces a Swing node so that you can embed Swing components in a JavaFX application - as that is pre-release software currently, nobody has used it yet for a commercial app. However, for piecewise migration of a large Swing application, the existing JFXPanel should be more relevant. Regards, John -----Original Message----- From: openjfx-dev-bounces at openjdk.java.net [mailto:openjfx-dev-bounces at openjdk.java.net] On Behalf Of Scott Palmer Sent: Friday, June 14, 2013 8:46 AM To: Robert Kr?ger Cc: openjfx-dev at openjdk.java.net Subject: Re: Experience with piecewise migration Swing -> JFX Argh! I'm not sure how that spontaneously sent... I ran into issues with Drag and Drop. You can drag an arbitrary Java object from Swing and drop it in JavaFX, but you can't drag the same thing from JavaFX, objects that start off in JavaFX must be Serializable to be placed on the DragBoard. There are JavaFX controls that cover *most* of the Swing controls.. but they are not 1:1. There is no equivalent to FormattedTextField for example. SplitPane behaves differently from the Swing equivalent. Tooltips work differently and can't be placed on MenuItems in JavaFX. There are a lot of little things to do with different behaviour that come up that you need to work around, and there are still plenty of bugs. Hopefully many of those issues will be resolved for JavaFX 8's release. It all depends on your specific use cases though. We started with a single JFXPanel in our app because we wanted to use it as core part ofthe UI in our otherwise Swing app. Then we implemented a lot of dialogs that were basically JDialog + JFXPanel so that we could easily migrate the whole dialog to a pure JavaFX UI without a lot of fuss. For our main UI that had a JFXPanel embedded among other Swing controls we just went from that to 100% JavaFX for the whole app rather than introducing many JFXPanels inside one JFrame. Regards, Scott On Fri, Jun 14, 2013 at 11:33 AM, Scott Palmer wrote: > Things that I ran into: > > > > On Fri, Jun 14, 2013 at 11:08 AM, Robert Kr?ger wrote: > >> Hi, >> >> we're currently in the process of migrating our Swing application >> from Apple JDK 6 to OpenJDK 8 hoping to be able to ship it bundled >> with OpenJDK 8 in the coming months. In addition to that we're >> seriously considering a Migration of the UI to JFX and it appears >> very tempting to do this component-wise, i.e. using JFXPanel. >> >> I have read and understood >> http://docs.oracle.com/javafx/2/swing/swing-fx-interoperability.htm >> but wanted to ask if someone has followed this route and could share >> their experience regarding caveats of this. How well does it work for >> a non-trivial application? What are the hidden problems one should be >> aware of (other than having 2 UI threads). >> >> Thanks in advance, >> >> Robert >> > > From hang.vo at oracle.com Fri Jun 14 15:05:54 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Fri, 14 Jun 2013 22:05:54 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130614220628.A5E3448218@hg.openjdk.java.net> Changeset: 6be523c22ac3 Author: kcr Date: 2013-06-14 11:43 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/6be523c22ac3 RT-30531: Gradle: add a -PSKIP_JAVADOC flag to skip building javadoc ! build.gradle Changeset: 59ccd686cb15 Author: kcr Date: 2013-06-14 14:58 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/59ccd686cb15 Gradle: fix typo in description ! generator.gradle From pedro.duquevieira at gmail.com Fri Jun 14 15:17:06 2013 From: pedro.duquevieira at gmail.com (Pedro Duque Vieira) Date: Fri, 14 Jun 2013 23:17:06 +0100 Subject: Tooltip is interfering with mouseEntered/mouseExited events In-Reply-To: References: <411E73D23DEC4C46BA48F2B6D8BF3D22167D41B8D4@TUS1XCHEVSPIN34.SYMC.SYMANTEC.COM> Message-ID: Sorry to insist but the question has not been answered yet. Does someone know how to see if a mouse is hover a tooltip? Or if there is a specific component beneath the mouse and under the tooltip? Cheers, On Wed, Jun 12, 2013 at 10:38 PM, Pedro Duque Vieira < pedro.duquevieira at gmail.com> wrote: > The problem gets worse because tooltip is not a node (why?) so you cannot > easily know if the mouse is hover a tooltip or not. > > Does someone know how to see if a mouse is hover a tooltip? > > > On Tue, Jun 11, 2013 at 1:11 AM, John Smith wrote: > >> A somewhat related inconvenience I have with tooltips is that if you put >> a tooltip on a button, then hover the mouse so that the tooltip shows up, >> you can't click to activate the button unless you move the mouse pixel to >> left or top because the resultant click will go to the tooltip and not to >> the button. It's especially strange on Modena, because there the tooltip >> has a rounded corner, so you visibly aren't clicking on the tooltip, though >> you are clicking in the tooltip's rectangular bounds. >> >> Some examples of how other apps handle tooltips: >> In NetBeans the tooltip shows up below the button rather than at the >> mouse position - this has the advantage of not obscuring the thing which >> the tooltip is providing information on. >> Intellij Idea is similar, except that it's tooltip is a callout has with >> a little triangular area which overlaps the thing the tooltip is for. If >> you click in the overlapped area, the underlying node still takes the >> expected action. >> Microsoft apps like Outlook show tooltips below the things they are >> providing info on (or above if there is not enough screen area below to >> show the tooltip). >> >> -----Original Message----- >> From: openjfx-dev-bounces at openjdk.java.net [mailto: >> openjfx-dev-bounces at openjdk.java.net] On Behalf Of Pedro Duque Vieira >> Sent: Monday, June 10, 2013 2:42 PM >> To: OpenJFX Mailing List >> Subject: Tooltip is interfering with mouseEntered/mouseExited events >> >> Hi, >> >> I have a toolbar composed by a couple of buttons. The toolbar fades away >> when the mouse exits. The problem is that I have tooltips set up with the >> toolbar and sometimes they appear under the mouse which triggers a >> mouseExit event that makes the toolbar fade-away. >> >> My point is maybe the tooltips should be viewed by the API as a component >> that is part of the other component which they are set upon. >> >> In this situation I'm getting random mouse exits depending when whether >> the tooltip appears below the mouse or not. >> >> Cheers, >> >> -- >> Pedro Duque Vieira >> > > > > -- > Pedro Duque Vieira > -- Pedro Duque Vieira From jonathan.giles at oracle.com Fri Jun 14 15:37:22 2013 From: jonathan.giles at oracle.com (Jonathan Giles) Date: Sat, 15 Jun 2013 10:37:22 +1200 Subject: Tooltip is interfering with mouseEntered/mouseExited events In-Reply-To: References: <411E73D23DEC4C46BA48F2B6D8BF3D22167D41B8D4@TUS1XCHEVSPIN34.SYMC.SYMANTEC.COM> Message-ID: <51BB9B22.8090303@oracle.com> Stepping back slightly, the concern I've raised previously with regard to the modena tooltip is its positioning under the mouse. I think the first thing that should be discussed is whether we can relocate that popup such that it is slightly shifted downwards and to the right so that it doesn't appear directly under the mouse pointer. I think with this resolved the other issues no longer matter - is this correct? -- Jonathan On 15/06/2013 10:17 a.m., Pedro Duque Vieira wrote: > Sorry to insist but the question has not been answered yet. > > Does someone know how to see if a mouse is hover a tooltip? Or if there is > a specific component beneath the mouse and under the tooltip? > > Cheers, > > On Wed, Jun 12, 2013 at 10:38 PM, Pedro Duque Vieira < > pedro.duquevieira at gmail.com> wrote: > >> The problem gets worse because tooltip is not a node (why?) so you cannot >> easily know if the mouse is hover a tooltip or not. >> >> Does someone know how to see if a mouse is hover a tooltip? >> >> >> On Tue, Jun 11, 2013 at 1:11 AM, John Smith wrote: >> >>> A somewhat related inconvenience I have with tooltips is that if you put >>> a tooltip on a button, then hover the mouse so that the tooltip shows up, >>> you can't click to activate the button unless you move the mouse pixel to >>> left or top because the resultant click will go to the tooltip and not to >>> the button. It's especially strange on Modena, because there the tooltip >>> has a rounded corner, so you visibly aren't clicking on the tooltip, though >>> you are clicking in the tooltip's rectangular bounds. >>> >>> Some examples of how other apps handle tooltips: >>> In NetBeans the tooltip shows up below the button rather than at the >>> mouse position - this has the advantage of not obscuring the thing which >>> the tooltip is providing information on. >>> Intellij Idea is similar, except that it's tooltip is a callout has with >>> a little triangular area which overlaps the thing the tooltip is for. If >>> you click in the overlapped area, the underlying node still takes the >>> expected action. >>> Microsoft apps like Outlook show tooltips below the things they are >>> providing info on (or above if there is not enough screen area below to >>> show the tooltip). >>> >>> -----Original Message----- >>> From: openjfx-dev-bounces at openjdk.java.net [mailto: >>> openjfx-dev-bounces at openjdk.java.net] On Behalf Of Pedro Duque Vieira >>> Sent: Monday, June 10, 2013 2:42 PM >>> To: OpenJFX Mailing List >>> Subject: Tooltip is interfering with mouseEntered/mouseExited events >>> >>> Hi, >>> >>> I have a toolbar composed by a couple of buttons. The toolbar fades away >>> when the mouse exits. The problem is that I have tooltips set up with the >>> toolbar and sometimes they appear under the mouse which triggers a >>> mouseExit event that makes the toolbar fade-away. >>> >>> My point is maybe the tooltips should be viewed by the API as a component >>> that is part of the other component which they are set upon. >>> >>> In this situation I'm getting random mouse exits depending when whether >>> the tooltip appears below the mouse or not. >>> >>> Cheers, >>> >>> -- >>> Pedro Duque Vieira >>> >> >> >> -- >> Pedro Duque Vieira >> > > From krueger at lesspain.de Sat Jun 15 01:52:14 2013 From: krueger at lesspain.de (=?UTF-8?Q?Robert_Kr=C3=BCger?=) Date: Sat, 15 Jun 2013 10:52:14 +0200 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: References: Message-ID: On Fri, Jun 14, 2013 at 5:46 PM, Scott Palmer wrote: > Argh! I'm not sure how that spontaneously sent... > > I ran into issues with Drag and Drop. You can drag an arbitrary Java object > from Swing and drop it in JavaFX, but you can't drag the same thing from > JavaFX, objects that start off in JavaFX must be Serializable to be placed > on the DragBoard. but I guess the standard flavors (dragging files between the two worlds) do not cause problems. Right now we mostly have D&D for files. > > There are JavaFX controls that cover *most* of the Swing controls.. but they > are not 1:1. There is no equivalent to FormattedTextField for example. > SplitPane behaves differently from the Swing equivalent. Tooltips work > differently and can't be placed on MenuItems in JavaFX. > > There are a lot of little things to do with different behaviour that come up > that you need to work around, and there are still plenty of bugs. Hopefully > many of those issues will be resolved for JavaFX 8's release. It all > depends on your specific use cases though. yes, regarding UI complexity we should be a not-so-difficult case as most of the dialogs are rather straight-forward with standard controls like JList, JCombobox, JTable, JTextfield etc.. > > We started with a single JFXPanel in our app because we wanted to use it as > core part ofthe UI in our otherwise Swing app. Then we implemented a lot of > dialogs that were basically JDialog + JFXPanel so that we could easily > migrate the whole dialog to a pure JavaFX UI without a lot of fuss. For our > main UI that had a JFXPanel embedded among other Swing controls we just went > from that to 100% JavaFX for the whole app rather than introducing many > JFXPanels inside one JFrame. That is more or less the strategy we are thinking about: - Migrate simple Dialogs to JFX-only - Migrate application mainframe by replacing individual panels by JFX impls until we can move to a JFX-only main frame. My main concern was, if the mixing of the two technologies within one JFrame/JDialog for the first phase of the migration was a no-go. Thanks a lot for sharing your experience! From krueger at lesspain.de Sat Jun 15 01:55:48 2013 From: krueger at lesspain.de (=?UTF-8?Q?Robert_Kr=C3=BCger?=) Date: Sat, 15 Jun 2013 10:55:48 +0200 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: <411E73D23DEC4C46BA48F2B6D8BF3D22167D756C66@TUS1XCHEVSPIN34.SYMC.SYMANTEC.COM> References: <411E73D23DEC4C46BA48F2B6D8BF3D22167D756C66@TUS1XCHEVSPIN34.SYMC.SYMANTEC.COM> Message-ID: On Fri, Jun 14, 2013 at 9:51 PM, John Smith wrote: > +1 to all Scott wrote. > >> There are JavaFX controls that cover *most* of the Swing controls.. but they are not 1:1. There is no equivalent to FormattedTextField for example. SplitPane behaves differently from the Swing equivalent. > > There are some 3rd party efforts to bridge some of the gaps between the Swing and JavaFX core functionality. > For instance JIDE software just released a sleek FormattedTextField control (and other functionality): http://www.jidesoft.com/blog/2013/06/06/jidefx-beta-release/ > And the jfxtras project http://jfxtras.org/ and http://fxexperience.com/controlsfx/ provide further such additions such as spinner controls, dialog boxes, etc. > > There is a decent list of these 3rd party tools at: > http://www.oracle.com/technetwork/java/javafx/community/3rd-party-1844355.html > > There is a big difference between the scope of what a company like Jide provide in their standard swing toolkit (http://www.jidesoft.com/) and what they currently provide for JavaFX, so if you want something sophisticated like a pivot table that you don't want to write yourself, you need to use the Swing JFXPanel (or HTML via WebView) wrapping approach. > Note that JavaFX 8 introduces a Swing node so that you can embed Swing components in a JavaFX application - as that is pre-release software currently, nobody has used it yet for a commercial app. However, for piecewise migration of a large Swing application, the existing JFXPanel should be more relevant. > > Regards, > John Thank you! I will check out the links. As far as fancy controls are concerned, we should probably not need much beyond the standard controls and some stuff that we custom-coded in Swing anyway and probably will again in JFX. Regards, Robert From hang.vo at oracle.com Sat Jun 15 07:08:57 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Sat, 15 Jun 2013 14:08:57 +0000 Subject: hg: openjfx/8/graphics/rt: [TEST-ONLY] disable three more cancelHandler tests since they also fail intermittently Message-ID: <20130615140924.D37F64823C@hg.openjdk.java.net> Changeset: d530170f8968 Author: kcr Date: 2013-06-15 06:58 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/d530170f8968 [TEST-ONLY] disable three more cancelHandler tests since they also fail intermittently ! javafx-concurrent/test/javafx/concurrent/ServiceLifecycleTest.java From pedro.duquevieira at gmail.com Sat Jun 15 14:39:50 2013 From: pedro.duquevieira at gmail.com (Pedro Duque Vieira) Date: Sat, 15 Jun 2013 22:39:50 +0100 Subject: Experience with piecewise migration Swing -> JFX Message-ID: My biggest problems were with having 2 UI threads. I ran into some concurrency issues between the 2. Cheers, -- Pedro Duque Vieira From pedro.duquevieira at gmail.com Sat Jun 15 14:43:10 2013 From: pedro.duquevieira at gmail.com (Pedro Duque Vieira) Date: Sat, 15 Jun 2013 22:43:10 +0100 Subject: Tooltip is interfering with mouseEntered/mouseExited events Message-ID: Yes this problems would be solved. But I think API wise, there should be a way to check whether the mouse is inside a particular tooltip. Also I think it is not possible sometimes to get the node that "owns" the tooltip, I think there should be a way to get it too. Cheers, > Stepping back slightly, the concern I've raised previously with regard > to the modena tooltip is its positioning under the mouse. I think the > first thing that should be discussed is whether we can relocate that > popup such that it is slightly shifted downwards and to the right so > that it doesn't appear directly under the mouse pointer. I think with > this resolved the other issues no longer matter - is this correct? > -- Jonathan -- Pedro Duque Vieira From hang.vo at oracle.com Sun Jun 16 00:07:43 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Sun, 16 Jun 2013 07:07:43 +0000 Subject: hg: openjfx/8/graphics/rt: 3 new changesets Message-ID: <20130616070934.8132148248@hg.openjdk.java.net> Changeset: 4908057c706a Author: mfang Date: 2013-06-03 19:43 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/4908057c706a RT-30895: NLS: javafx8 message drop 10 integration ! deploy/packager/src/com/sun/javafx/tools/packager/Bundle_ja.properties ! deploy/packager/src/com/sun/javafx/tools/packager/Bundle_zh_CN.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_de.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_es.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_fr.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_it.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_ja.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_ko.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_pt_BR.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_sv.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_zh_CN.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_zh_TW.properties ! webview/src/com/sun/javafx/scene/web/skin/HTMLEditorSkin_de.properties ! webview/src/com/sun/javafx/scene/web/skin/HTMLEditorSkin_es.properties ! webview/src/com/sun/javafx/scene/web/skin/HTMLEditorSkin_fr.properties ! webview/src/com/sun/javafx/scene/web/skin/HTMLEditorSkin_it.properties ! webview/src/com/sun/javafx/scene/web/skin/HTMLEditorSkin_ja.properties ! webview/src/com/sun/javafx/scene/web/skin/HTMLEditorSkin_ko.properties ! webview/src/com/sun/javafx/scene/web/skin/HTMLEditorSkin_pt_BR.properties ! webview/src/com/sun/javafx/scene/web/skin/HTMLEditorSkin_sv.properties ! webview/src/com/sun/javafx/scene/web/skin/HTMLEditorSkin_zh_CN.properties ! webview/src/com/sun/javafx/scene/web/skin/HTMLEditorSkin_zh_TW.properties Changeset: 80d5fc69537e Author: mifang Date: 2013-06-15 23:41 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/80d5fc69537e Merge Hg: branch default ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_de.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_sv.properties Changeset: 14446f8f51a0 Author: mifang Date: 2013-06-15 23:54 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/14446f8f51a0 RT-31115: Remove DatePicker.showWeekNumbers from localized controls_xx.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_de.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_es.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_fr.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_it.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_ja.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_ko.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_pt_BR.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_sv.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_zh_CN.properties ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/controls_zh_TW.properties From krueger at lesspain.de Sun Jun 16 00:28:27 2013 From: krueger at lesspain.de (=?UTF-8?Q?Robert_Kr=C3=BCger?=) Date: Sun, 16 Jun 2013 09:28:27 +0200 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: References: Message-ID: On Sat, Jun 15, 2013 at 11:39 PM, Pedro Duque Vieira wrote: > My biggest problems were with having 2 UI threads. > > I ran into some concurrency issues between the 2. > Meaning things that just needed extra care or things that were hard to work around? Could you elaborate a bit? From pedro.duquevieira at gmail.com Sun Jun 16 10:19:54 2013 From: pedro.duquevieira at gmail.com (Pedro Duque Vieira) Date: Sun, 16 Jun 2013 18:19:54 +0100 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: References: Message-ID: I've grabbed my previous blog post about this subject and rewritten it to be more up-to-date with the current state of things. I'm sorry for the publicity but this is a far easier way to explain what I've learned about the subject - http://pixelduke.wordpress.com/2013/06/16/integrating-javafx-and-swing-revised/?preview=true&preview_id=542&preview_nonce=e92735d108 Cheers, hope this helps, On Sun, Jun 16, 2013 at 8:28 AM, Robert Kr?ger wrote: > On Sat, Jun 15, 2013 at 11:39 PM, Pedro Duque Vieira > wrote: > > My biggest problems were with having 2 UI threads. > > > > I ran into some concurrency issues between the 2. > > > Meaning things that just needed extra care or things that were hard to > work around? Could you elaborate a bit? > -- Pedro Duque Vieira From hang.vo at oracle.com Sun Jun 16 13:49:28 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Sun, 16 Jun 2013 20:49:28 +0000 Subject: hg: openjfx/8/controls/rt: 8 new changesets Message-ID: <20130616205425.134934824F@hg.openjdk.java.net> Changeset: a62bcf50373d Author: jgiles Date: 2013-06-10 09:48 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/a62bcf50373d RT-31019: Rightmost TableView Header still displays Graphic, even when hidden ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TableColumnHeader.java Changeset: 93616ceaba73 Author: jgiles Date: 2013-06-10 09:48 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/93616ceaba73 Merge Changeset: aa326d035a6e Author: jgiles Date: 2013-06-10 10:42 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/aa326d035a6e RT-30673: Application hangs if popup menu clicked (non touch device) ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/EmbeddedTextContextMenuContent.java Changeset: cda7fe2d501d Author: jgiles Date: 2013-06-12 08:00 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/cda7fe2d501d Tests for TextField*Cell classes (although some editing-related tests are temporarily disabled) ! javafx-ui-controls/src/javafx/scene/control/cell/TextFieldListCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/TextFieldTableCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/TextFieldTreeCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/TextFieldTreeTableCell.java + javafx-ui-controls/test/javafx/scene/control/cell/TextFieldListCellTest.java + javafx-ui-controls/test/javafx/scene/control/cell/TextFieldTableCellTest.java + javafx-ui-controls/test/javafx/scene/control/cell/TextFieldTreeCellTest.java + javafx-ui-controls/test/javafx/scene/control/cell/TextFieldTreeTableCellTest.java Changeset: 544f08907253 Author: jgiles Date: 2013-06-13 11:10 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/544f08907253 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt Changeset: 8ef86a48a6c0 Author: jgiles Date: 2013-06-13 13:49 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/8ef86a48a6c0 RT-30316: Control didn't respect Node's setManaged flag ! javafx-ui-controls/src/javafx/scene/control/SkinBase.java Changeset: 0c7ce9e94f64 Author: jgiles Date: 2013-06-14 10:33 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/0c7ce9e94f64 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TableColumnHeader.java Changeset: 8064c39125c9 Author: jgiles Date: 2013-06-17 08:39 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/8064c39125c9 Fix test failures. ! javafx-ui-controls/test/javafx/scene/control/TableViewTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeTableViewTest.java ! javafx-ui-controls/test/javafx/scene/control/TreeViewTest.java From hang.vo at oracle.com Sun Jun 16 20:19:11 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 03:19:11 +0000 Subject: hg: openjfx/8/controls/rt: More javafx.scene.control.cell unit tests. Message-ID: <20130617031932.3A2DD48252@hg.openjdk.java.net> Changeset: 4745de498683 Author: jgiles Date: 2013-06-17 15:03 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/4745de498683 More javafx.scene.control.cell unit tests. ! javafx-ui-controls/src/javafx/scene/control/cell/ChoiceBoxListCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ChoiceBoxTreeCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ComboBoxListCell.java ! javafx-ui-controls/src/javafx/scene/control/cell/ComboBoxTreeCell.java + javafx-ui-controls/test/javafx/scene/control/cell/ChoiceBoxListCellTest.java + javafx-ui-controls/test/javafx/scene/control/cell/ChoiceBoxTableCellTest.java + javafx-ui-controls/test/javafx/scene/control/cell/ChoiceBoxTreeCellTest.java + javafx-ui-controls/test/javafx/scene/control/cell/ChoiceBoxTreeTableCellTest.java + javafx-ui-controls/test/javafx/scene/control/cell/ComboBoxListCellTest.java + javafx-ui-controls/test/javafx/scene/control/cell/ComboBoxTableCellTest.java + javafx-ui-controls/test/javafx/scene/control/cell/ComboBoxTreeCellTest.java + javafx-ui-controls/test/javafx/scene/control/cell/ComboBoxTreeTableCellTest.java + javafx-ui-controls/test/javafx/scene/control/cell/ProgressBarTableCellTest.java + javafx-ui-controls/test/javafx/scene/control/cell/ProgressBarTreeTableCellTest.java From krueger at lesspain.de Mon Jun 17 00:48:27 2013 From: krueger at lesspain.de (=?UTF-8?Q?Robert_Kr=C3=BCger?=) Date: Mon, 17 Jun 2013 09:48:27 +0200 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: References: Message-ID: So it is basically "be aware of potential problems when doing things in different threads" which is nothing new for our app as we have some native stuff that responds to events in the Mac OS app kit thread but nothing inherent to JavaFX as far as I can see. This is what I had hoped. Thank you. On Sun, Jun 16, 2013 at 7:19 PM, Pedro Duque Vieira wrote: > I've grabbed my previous blog post about this subject and rewritten it to be > more up-to-date with the current state of things. > I'm sorry for the publicity but this is a far easier way to explain what > I've learned about the subject - > http://pixelduke.wordpress.com/2013/06/16/integrating-javafx-and-swing-revised/?preview=true&preview_id=542&preview_nonce=e92735d108 > > Cheers, hope this helps, > > > On Sun, Jun 16, 2013 at 8:28 AM, Robert Kr?ger wrote: >> >> On Sat, Jun 15, 2013 at 11:39 PM, Pedro Duque Vieira >> wrote: >> > My biggest problems were with having 2 UI threads. >> > >> > I ran into some concurrency issues between the 2. >> > >> Meaning things that just needed extra care or things that were hard to >> work around? Could you elaborate a bit? > > > > > -- > Pedro Duque Vieira From hang.vo at oracle.com Mon Jun 17 04:33:32 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 11:33:32 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30606: Glass Screen becomes stale in Window.getScreen() when resolution changes Message-ID: <20130617113413.F228C48265@hg.openjdk.java.net> Changeset: dfd03e0ac05a Author: Anthony Petrov Date: 2013-06-17 15:15 +0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/dfd03e0ac05a RT-30606: Glass Screen becomes stale in Window.getScreen() when resolution changes ! glass/glass-lib-macosx/src/GlassWindow+Java.h ! glass/glass-lib-macosx/src/GlassWindow+Java.m ! glass/glass-lib-macosx/src/GlassWindow+Overrides.m ! glass/glass/src/com/sun/glass/ui/Screen.java ! glass/glass/src/com/sun/glass/ui/Window.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/GlassWindowEventHandler.java From hang.vo at oracle.com Mon Jun 17 05:05:23 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 12:05:23 +0000 Subject: hg: openjfx/8/graphics/rt: RT-31105: fixed NaN returned from corner-case angle computations. Message-ID: <20130617120613.6185548266@hg.openjdk.java.net> Changeset: 30559008516b Author: Pavel Safrata Date: 2013-06-17 12:50 +0100 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/30559008516b RT-31105: fixed NaN returned from corner-case angle computations. ! javafx-ui-common/src/javafx/geometry/Point2D.java ! javafx-ui-common/src/javafx/geometry/Point3D.java ! javafx-ui-common/test/unit/javafx/geometry/Point2DTest.java ! javafx-ui-common/test/unit/javafx/geometry/Point3DTest.java From tobi at ultramixer.com Mon Jun 17 05:29:32 2013 From: tobi at ultramixer.com (Tobias Bley) Date: Mon, 17 Jun 2013 14:29:32 +0200 Subject: Avian and JavaFX8 for iOS and Android? Message-ID: <41FEED3E-100F-480D-A433-D6C3FF06F533@ultramixer.com> Does anybody tried to use JavaFX8 and Avian on iOS or Android? https://groups.google.com/forum/?fromgroups#!topic/avian/dF4ZuxnUdQ4 Best regards, Tobi From lehmann at media-interactive.de Mon Jun 17 05:35:20 2013 From: lehmann at media-interactive.de (Werner Lehmann) Date: Mon, 17 Jun 2013 14:35:20 +0200 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: References: Message-ID: <51BF0288.7020100@media-interactive.de> In addition to what has been said before, you could check Jira for keywords jfxpanel and/or swing. Just today we had another Mac-only problem. Apparently AWT is not as thread-safe on Mac as it is on Windows, resulting in deadlocks in native AWT code (which currently is a guess, not confirmed, RT-31124). Another relatively minor issue: if you have to use multiple JFXPanels on one Swing window the code can get quite complicated because of the frequent context switches between the GUI threads. Currently I am adding a note to the javadoc of UI methods to state which thread it is supposed to be called in. Even with one JFXPanel and other Swing UI on the same window, you'll get a problem with tab focus movement: the jfxpanel would happily receive focus but then users cannot "tab out" of the jfxpanel. Also seen today: after closing the last JFXPanel while the Swing application continues, FX would "exit the platform" (not the VM) and you cannot use another JFXPanel. There is probably some workaround available. And just in case it has not been said before: you cannot have a Stage on top of a JFrame (modal or not). This forces you to wrap a JFXPanel into a JDialog. I have also seen a performance problem. Try an indeterminate progressbar in a JFXPanel. The progressbar width directly correlates with CPU usage. With ~400px width I get about 20% CPU usage (almost one core). This is probably caused by constant pixel shifting to AWT. Werner On 14.06.2013 17:08, Robert Kr?ger wrote: > What are the hidden problems one should be > aware of (other than having 2 UI threads). From hang.vo at oracle.com Mon Jun 17 05:47:47 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 12:47:47 +0000 Subject: hg: openjfx/8/controls/rt: 2 new changesets Message-ID: <20130617124828.1581848267@hg.openjdk.java.net> Changeset: 83a9bfb58e38 Author: Martin Sladecek Date: 2013-06-17 14:40 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/83a9bfb58e38 Forgot to revert hotfix for RT-30363 together with fix for RT-31016. Verified that issues in RT-31016 are not broken again by this changeset. ! javafx-ui-common/src/javafx/scene/Parent.java Changeset: 00820f6d9333 Author: Martin Sladecek Date: 2013-06-17 14:40 +0200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/00820f6d9333 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx//rt From anthony.petrov at oracle.com Mon Jun 17 06:17:59 2013 From: anthony.petrov at oracle.com (Anthony Petrov) Date: Mon, 17 Jun 2013 17:17:59 +0400 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: <51BF0288.7020100@media-interactive.de> References: <51BF0288.7020100@media-interactive.de> Message-ID: <51BF0C87.4090008@oracle.com> On 06/17/13 16:35, Werner Lehmann wrote: > In addition to what has been said before, you could check Jira for > keywords jfxpanel and/or swing. Just today we had another Mac-only > problem. Apparently AWT is not as thread-safe on Mac as it is on > Windows, resulting in deadlocks in native AWT code (which currently is a > guess, not confirmed, RT-31124). I haven't investigated deeply, but since you've mentioned cursors I believe this issue has been fixed already. Please try 7u40 and/or 8 ea builds. > Even with one JFXPanel and other Swing UI on the same window, you'll get > a problem with tab focus movement: the jfxpanel would happily receive > focus but then users cannot "tab out" of the jfxpanel. Did you file a bug for this issue? > Also seen today: after closing the last JFXPanel while the Swing > application continues, FX would "exit the platform" (not the VM) and you > cannot use another JFXPanel. There is probably some workaround available. You want to call Platform.setImplicitExit(false). Please see http://docs.oracle.com/javafx/2/api/javafx/application/Platform.html#setImplicitExit(boolean) > And just in case it has not been said before: you cannot have a Stage on > top of a JFrame (modal or not). This forces you to wrap a JFXPanel into > a JDialog. To clarify: you can't make a Swing frame be a parent of an FX stage, meaning that you can't maintain a particular z-order between the two. So you have to wrap a JFXPanel into a JDialog to implement this behavior. -- best regards, Anthony > I have also seen a performance problem. Try an indeterminate progressbar > in a JFXPanel. The progressbar width directly correlates with CPU usage. > With ~400px width I get about 20% CPU usage (almost one core). This is > probably caused by constant pixel shifting to AWT. > > Werner > > On 14.06.2013 17:08, Robert Kr?ger wrote: >> What are the hidden problems one should be >> aware of (other than having 2 UI threads). > From hang.vo at oracle.com Mon Jun 17 06:18:29 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 13:18:29 +0000 Subject: hg: openjfx/8/graphics/rt: gradle build: fix missing slash in optional .classpath entry Message-ID: <20130617131852.D901948269@hg.openjdk.java.net> Changeset: 489b9ef10dce Author: snorthov Date: 2013-06-17 09:06 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/489b9ef10dce gradle build: fix missing slash in optional .classpath entry ! build.gradle From artem.ananiev at oracle.com Mon Jun 17 06:37:19 2013 From: artem.ananiev at oracle.com (Artem Ananiev) Date: Mon, 17 Jun 2013 17:37:19 +0400 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: <51BF0C87.4090008@oracle.com> References: <51BF0288.7020100@media-interactive.de> <51BF0C87.4090008@oracle.com> Message-ID: <51BF110F.2080304@oracle.com> On 6/17/2013 5:17 PM, Anthony Petrov wrote: > On 06/17/13 16:35, Werner Lehmann wrote: >> In addition to what has been said before, you could check Jira for >> keywords jfxpanel and/or swing. Just today we had another Mac-only >> problem. Apparently AWT is not as thread-safe on Mac as it is on >> Windows, resulting in deadlocks in native AWT code (which currently is a >> guess, not confirmed, RT-31124). > > I haven't investigated deeply, but since you've mentioned cursors I > believe this issue has been fixed already. Please try 7u40 and/or 8 ea > builds. > >> Even with one JFXPanel and other Swing UI on the same window, you'll get >> a problem with tab focus movement: the jfxpanel would happily receive >> focus but then users cannot "tab out" of the jfxpanel. > > Did you file a bug for this issue? There is already filed one: RT-10919: Provide possibility to traverse focus out of FX scene Thanks, Artem >> Also seen today: after closing the last JFXPanel while the Swing >> application continues, FX would "exit the platform" (not the VM) and you >> cannot use another JFXPanel. There is probably some workaround available. > > You want to call Platform.setImplicitExit(false). Please see > > http://docs.oracle.com/javafx/2/api/javafx/application/Platform.html#setImplicitExit(boolean) > >> And just in case it has not been said before: you cannot have a Stage on >> top of a JFrame (modal or not). This forces you to wrap a JFXPanel into >> a JDialog. > > To clarify: you can't make a Swing frame be a parent of an FX stage, > meaning that you can't maintain a particular z-order between the two. So > you have to wrap a JFXPanel into a JDialog to implement this behavior. > > -- > best regards, > Anthony > > >> I have also seen a performance problem. Try an indeterminate progressbar >> in a JFXPanel. The progressbar width directly correlates with CPU usage. >> With ~400px width I get about 20% CPU usage (almost one core). This is >> probably caused by constant pixel shifting to AWT. >> >> Werner >> >> On 14.06.2013 17:08, Robert Kr?ger wrote: >>> What are the hidden problems one should be >>> aware of (other than having 2 UI threads). >> From richard.bair at oracle.com Mon Jun 17 06:47:18 2013 From: richard.bair at oracle.com (Richard Bair) Date: Mon, 17 Jun 2013 06:47:18 -0700 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: <51BF0C87.4090008@oracle.com> References: <51BF0288.7020100@media-interactive.de> <51BF0C87.4090008@oracle.com> Message-ID: <97984FCE-E5A5-4E98-A898-63E9742E5DFB@oracle.com> >> Also seen today: after closing the last JFXPanel while the Swing >> application continues, FX would "exit the platform" (not the VM) and you >> cannot use another JFXPanel. There is probably some workaround available. > > You want to call Platform.setImplicitExit(false). Please see > > http://docs.oracle.com/javafx/2/api/javafx/application/Platform.html#setImplicitExit(boolean) Do we have a "Swing Migration Guide" document that we can call this out in, or do we already? From hang.vo at oracle.com Mon Jun 17 06:48:33 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 13:48:33 +0000 Subject: hg: openjfx/8/graphics/rt: 2 new changesets Message-ID: <20130617134907.819E84826A@hg.openjdk.java.net> Changeset: 3d513425954f Author: kcr Date: 2013-06-17 06:19 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/3d513425954f [TEST-ONLY] need to ignore one more failing test until RT-30173 is fixed ! javafx-concurrent/test/javafx/concurrent/ServiceLifecycleTest.java Changeset: 64141a308f19 Author: Pavel Safrata Date: 2013-06-17 14:34 +0100 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/64141a308f19 RT-31071: Point's angle methods documented to use degrees. ! javafx-ui-common/src/javafx/geometry/Point2D.java ! javafx-ui-common/src/javafx/geometry/Point3D.java From lehmann at media-interactive.de Mon Jun 17 07:00:26 2013 From: lehmann at media-interactive.de (Werner Lehmann) Date: Mon, 17 Jun 2013 16:00:26 +0200 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: <51BF110F.2080304@oracle.com> References: <51BF0288.7020100@media-interactive.de> <51BF0C87.4090008@oracle.com> <51BF110F.2080304@oracle.com> Message-ID: <51BF167A.3070901@media-interactive.de> Artem, On 17.06.2013 15:37, Artem Ananiev wrote: >>> Even with one JFXPanel and other Swing UI on the same window, you'll get >>> >> a problem with tab focus movement: the jfxpanel would happily receive >>> >> focus but then users cannot "tab out" of the jfxpanel. >> > >> > Did you file a bug for this issue? > There is already filed one: > > RT-10919: Provide possibility to traverse focus out of FX scene this one is inaccessible/invisible. I had created RT-24136 back then. May or may not be a duplicate. Werner From lehmann at media-interactive.de Mon Jun 17 07:05:37 2013 From: lehmann at media-interactive.de (Werner Lehmann) Date: Mon, 17 Jun 2013 16:05:37 +0200 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: <51BF0C87.4090008@oracle.com> References: <51BF0288.7020100@media-interactive.de> <51BF0C87.4090008@oracle.com> Message-ID: <51BF17B1.5040206@media-interactive.de> On 17.06.2013 15:17, Anthony Petrov wrote: > I haven't investigated deeply, but since you've mentioned cursors I > believe this issue has been fixed already. Please try 7u40 and/or 8 ea > builds. Ok, I have to find time to check with 7u40ea on Mac. > You want to call Platform.setImplicitExit(false). Please see > > http://docs.oracle.com/javafx/2/api/javafx/application/Platform.html#setImplicitExit(boolean) Thanks, forgot about that one. Werner From hang.vo at oracle.com Mon Jun 17 07:05:23 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 14:05:23 +0000 Subject: hg: openjfx/8/graphics/rt: iOS: first attempt to configure gradle build for iOS Message-ID: <20130617140542.48A154826B@hg.openjdk.java.net> Changeset: 1da65a28273c Author: David Pulkrabek Date: 2013-06-17 15:49 +0200 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/1da65a28273c iOS: first attempt to configure gradle build for iOS ! gradleBuildSrc/ios.gradle From artem.ananiev at oracle.com Mon Jun 17 07:07:39 2013 From: artem.ananiev at oracle.com (Artem Ananiev) Date: Mon, 17 Jun 2013 18:07:39 +0400 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: <51BF167A.3070901@media-interactive.de> References: <51BF0288.7020100@media-interactive.de> <51BF0C87.4090008@oracle.com> <51BF110F.2080304@oracle.com> <51BF167A.3070901@media-interactive.de> Message-ID: <51BF182B.6060301@oracle.com> On 6/17/2013 6:00 PM, Werner Lehmann wrote: > Artem, > > On 17.06.2013 15:37, Artem Ananiev wrote: >>>> Even with one JFXPanel and other Swing UI on the same window, you'll >>>> get >>>> >> a problem with tab focus movement: the jfxpanel would happily >>>> receive >>>> >> focus but then users cannot "tab out" of the jfxpanel. >>> > >>> > Did you file a bug for this issue? >> There is already filed one: >> >> RT-10919: Provide possibility to traverse focus out of FX scene > > this one is inaccessible/invisible. I had created RT-24136 back then. > May or may not be a duplicate. Now RT-10919 is made public. RT-24136 is closed as duplicate of RT-10919. Thanks, Artem > Werner From lehmann at media-interactive.de Mon Jun 17 07:25:16 2013 From: lehmann at media-interactive.de (Werner Lehmann) Date: Mon, 17 Jun 2013 16:25:16 +0200 Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: References: Message-ID: <51BF1C4C.8060504@media-interactive.de> With some more time to think about it, let me add the following tickets which we had some trouble with in the past. [#RT-13858] JavaFX in Swing: no autosize on Propertychanges in Controls ---- If the size of the root node in a JFXPanel.scene changes, the JFXPanel does not adjust its size accordingly. Tried to workaround in several ways on the Swing and FX sides but nothing really worked without side-effects. [#RT-19953] PopupWindow.autoHide does not work in Swing application (includes ContextMenu etc) ---- JavaFX popup windows have an autohide feature, the popup is hidden when it loses focus. Does not work if the popup is shown from inside a JFXPanel. And this includes e.g. ContextMenu: open a context menu from a jfxpanel and move the jframe underneath. Menu stays open. Workarounds are incomplete so far and required quite some nested listeners. Finally, the stage/jframe z-order problem also affects the JavaFX filechooser. Be aware that users can click e.g. a save button 10 times and get a non-stay-on-top filechooser 10 times unless you work around it. Werner On 14.06.2013 17:08, Robert Kr?ger wrote: > What are the hidden problems one should be > aware of (other than having 2 UI threads). From hang.vo at oracle.com Mon Jun 17 07:48:17 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 14:48:17 +0000 Subject: hg: openjfx/8/graphics/rt: RT-30506: Gradle: Closed build must get all artifacts from internal server Message-ID: <20130617144840.170074826F@hg.openjdk.java.net> Changeset: 8bf5ed35f5d6 Author: kcr Date: 2013-06-17 07:36 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/8bf5ed35f5d6 RT-30506: Gradle: Closed build must get all artifacts from internal server ! build.gradle From hang.vo at oracle.com Mon Jun 17 08:05:27 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 15:05:27 +0000 Subject: hg: openjfx/8/controls/rt: 2 new changesets Message-ID: <20130617150601.3B4D648271@hg.openjdk.java.net> Changeset: 2860bee1e5c2 Author: mickf Date: 2013-06-17 15:58 +0100 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/2860bee1e5c2 RT-31011 - Scene : remove Scenic popup ! javafx-ui-common/src/javafx/scene/Scene.java Changeset: ab5dd0cc19d8 Author: mickf Date: 2013-06-17 15:58 +0100 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/ab5dd0cc19d8 RT-30942 - DatePicker : remove Scenic popup ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/DatePickerContent.java From pavel.safrata at oracle.com Mon Jun 17 08:15:30 2013 From: pavel.safrata at oracle.com (Pavel Safrata) Date: Mon, 17 Jun 2013 17:15:30 +0200 Subject: Tooltip is interfering with mouseEntered/mouseExited events In-Reply-To: References: Message-ID: <51BF2812.6020406@oracle.com> Hello, not having any strong opinion on the desired behavior or needed API, here are a few comments to the current state: * Tooltip is a Window, so you should be able to call tooltip.getScene() or tooltip.getScene().getRoot() and watch for mouse events/hover state there * Tooltip is a Window so a click-through tooltip is not possible right now. We can talk about hooking its handlers to the owner control handlers somehow. * If you move the mouse to a tooltip, the owner control gets MouseExited event and hides the popup (which will be the case unless we introduce a "mouse transparent window"). So there doesn't seem to be much point in handling mouse events on the tooltip. The reason why the tooltip is not hidden immediately after it pops under the mouse is that there is a weird piece of code there that ignores MouseExited events with the same coordinates as the previous mouse event had. This looks like a workaround, and a wrong one, because the control can move out from a not-moving cursor. I'm going to file a bug against that. Pavel On 15.6.2013 23:43, Pedro Duque Vieira wrote: > Yes this problems would be solved. > > But I think API wise, there should be a way to check whether the mouse is > inside a particular tooltip. Also I think it is not possible sometimes to > get the node that "owns" the tooltip, I think there should be a way to get > it too. > > Cheers, > > >> Stepping back slightly, the concern I've raised previously with regard >> to the modena tooltip is its positioning under the mouse. I think the >> first thing that should be discussed is whether we can relocate that >> popup such that it is slightly shifted downwards and to the right so >> that it doesn't appear directly under the mouse pointer. I think with >> this resolved the other issues no longer matter - is this correct? >> -- Jonathan > From hang.vo at oracle.com Mon Jun 17 08:48:25 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 15:48:25 +0000 Subject: hg: openjfx/8/graphics/rt: RT-31129: Children added to panes with baseline alignment are not resized correctly Message-ID: <20130617154844.E3FE148272@hg.openjdk.java.net> Changeset: 472aae61bf84 Author: Eva Krejcirova Date: 2013-06-17 16:36 +0100 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/472aae61bf84 RT-31129: Children added to panes with baseline alignment are not resized correctly ! javafx-ui-common/src/javafx/scene/layout/Region.java ! javafx-ui-common/test/unit/javafx/scene/layout/RegionTest.java From hang.vo at oracle.com Mon Jun 17 09:05:13 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 16:05:13 +0000 Subject: hg: openjfx/8/graphics/rt: RT-31088 Gtk: Dragboard contains url escaped File paths in Linux which fail a file.exists() test Message-ID: <20130617160533.E3C3348273@hg.openjdk.java.net> Changeset: 8cc6916fe766 Author: Alexander Zvegintsev Date: 2013-06-17 19:48 +0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/8cc6916fe766 RT-31088 Gtk: Dragboard contains url escaped File paths in Linux which fail a file.exists() test ! glass/glass-lib-gtk/src/glass_dnd.cpp From rdarrylr at yahoo.com Mon Jun 17 09:20:21 2013 From: rdarrylr at yahoo.com (Darryl R) Date: Mon, 17 Jun 2013 09:20:21 -0700 (PDT) Subject: Experience with piecewise migration Swing -> JFX In-Reply-To: <51BF17B1.5040206@media-interactive.de> References: <51BF0288.7020100@media-interactive.de> <51BF0C87.4090008@oracle.com> <51BF17B1.5040206@media-interactive.de> Message-ID: <1371486021.49365.YahooMailNeo@web122504.mail.ne1.yahoo.com> Thanks a lot for this one guys. I've been pulling my hair out (what little I have left) trying to figure out why my new fx app inside my swing project would always stop working after switching to a non-fx app. The call to setImplicitExit solves it. We're working with the 1.7 JDK and I'm hoping there are not too many big issues that wont be fixed before JDK 1.8 as we're not going to be able to move to it for quite a while. Is there something more detailed available on integrating piecewise than the following links? We're working with a mature and rather large scale swing app that is going to start moving to fx over time and some more guidance might help. There have been a few issues i've got held up on for a long time with each. Also I still have a lot of work to do passing things between the 2 UI threads that i haven't tackled yet. https://weblogs.java.net/blog/ixmal/archive/2011/06/02/using-javafx-20-inside-swing-applications http://docs.oracle.com/javafx/2/swing/swing-fx-interoperability.htm I have also read the fx books ?(Pro Java FX 2 and JavaFx 2.0: Into by example) but they don't go in much detail in this area. Thanks, -Darryl ________________________________ From: Werner Lehmann To: Anthony Petrov Cc: "openjfx-dev at openjdk.java.net" Sent: Monday, June 17, 2013 10:05:37 AM Subject: Re: Experience with piecewise migration Swing -> JFX On 17.06.2013 15:17, Anthony Petrov wrote: > I haven't investigated deeply, but since you've mentioned cursors I > believe this issue has been fixed already. Please try 7u40 and/or 8 ea > builds. Ok, I have to find time to check with 7u40ea on Mac. > You want to call Platform.setImplicitExit(false). Please see > > http://docs.oracle.com/javafx/2/api/javafx/application/Platform.html#setImplicitExit(boolean) Thanks, forgot about that one. Werner From hang.vo at oracle.com Mon Jun 17 11:34:22 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 18:34:22 +0000 Subject: hg: openjfx/8/graphics/rt: 3 new changesets Message-ID: <20130617183504.EC5B748282@hg.openjdk.java.net> Changeset: 045830c36799 Author: rbair Date: 2013-06-07 13:58 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/045830c36799 cosmetic change: add final to method so builds on 7 ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/SceneState.java Changeset: 43d0146f5fad Author: rbair Date: 2013-06-17 11:21 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/43d0146f5fad Merge with head - glass/glass-lib-lens/src/android/Main.c - glass/glass-lib-lens/src/android/Main.h - javafx-fxml/.hgignore Changeset: 7dd1d88a298c Author: Richard Bair Date: 2013-06-17 11:24 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/7dd1d88a298c RT-31140: Parameterize FXDir in generator.gradle ! generator.gradle From hang.vo at oracle.com Mon Jun 17 11:18:21 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 18:18:21 +0000 Subject: hg: openjfx/8/graphics/rt: Add edge and texture coordinates handling for subdivision surfaces and some improvements related to polygonmeshes. Message-ID: <20130617181842.E02F24827E@hg.openjdk.java.net> Changeset: 1ae2b6a53eec Author: axlee at AXLEE-LAP Date: 2013-06-17 11:10 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/1ae2b6a53eec Add edge and texture coordinates handling for subdivision surfaces and some improvements related to polygonmeshes. Add: implement edge and texture coordinates handling for subdivision surfaces. Add: support skinning mesh to support polygon meshes (only). Add: support of importing Maya meshes as polygon meshes. Fix: change PolygonMesh's points to be ObservableFloatArray. Fix: use simpler data structures in PolygonMeshView for faster rendering of polygon meshes (in normal and wireframe mode). Fix: add toggle logic when the selected toggle is selected again. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/Importer3D.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/MayaImporter.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/obj/PolyObjImporter.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/ContentModel.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/OldTestViewer.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SettingsController.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/settings.fxml ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/shape3d/PolygonMesh.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/shape3d/PolygonMeshView.java + apps/experiments/3DViewer/src/main/java/com/javafx/experiments/shape3d/SkinningMesh.java - apps/experiments/3DViewer/src/main/java/com/javafx/experiments/shape3d/SkinningTriangleMesh.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/shape3d/SubDivision.java From hang.vo at oracle.com Mon Jun 17 13:33:10 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 20:33:10 +0000 Subject: hg: openjfx/8/graphics/rt: Changed handling of subdivision settings and added tooltips for subdivision settings. Made minor changes in loading Maya files. Message-ID: <20130617203331.7F7D448288@hg.openjdk.java.net> Changeset: 916f70e7e134 Author: axlee at AXLEE-LAP Date: 2013-06-17 13:21 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/916f70e7e134 Changed handling of subdivision settings and added tooltips for subdivision settings. Made minor changes in loading Maya files. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/importers/maya/Loader.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SettingsController.java ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/settings.fxml From hang.vo at oracle.com Mon Jun 17 14:18:35 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 21:18:35 +0000 Subject: hg: openjfx/8/graphics/rt: Properly handle null conditions for toggle groups in session manager. Message-ID: <20130617211848.6276648289@hg.openjdk.java.net> Changeset: 8d00dde67975 Author: axlee at AXLEE-LAP Date: 2013-06-17 14:01 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/8d00dde67975 Properly handle null conditions for toggle groups in session manager. ! apps/experiments/3DViewer/src/main/java/com/javafx/experiments/jfx3dviewer/SessionManager.java From hang.vo at oracle.com Mon Jun 17 14:34:26 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 21:34:26 +0000 Subject: hg: openjfx/2u/dev/rt: 2 new changesets Message-ID: <20130617213430.C474D4828C@hg.openjdk.java.net> Changeset: e1b2ee95cb11 Author: mickf Date: 2013-06-14 15:02 +0100 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/e1b2ee95cb11 RT-31011 - Scene : remove Scenic popup ! javafx-ui-common/src/javafx/scene/Scene.java Changeset: 6a223e588b64 Author: David Grieve Date: 2013-06-14 16:01 -0400 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/6a223e588b64 RT-31022: if an exception is raised when deserializing a version 2 .bss file, retry parsing as a version 3. ! javafx-ui-common/src/com/sun/javafx/css/CompoundSelector.java ! javafx-ui-common/src/com/sun/javafx/css/Declaration.java ! javafx-ui-common/src/com/sun/javafx/css/ParsedValue.java ! javafx-ui-common/src/com/sun/javafx/css/Rule.java ! javafx-ui-common/src/com/sun/javafx/css/Selector.java ! javafx-ui-common/src/com/sun/javafx/css/SimpleSelector.java ! javafx-ui-common/src/com/sun/javafx/css/StyleConverter.java ! javafx-ui-common/src/com/sun/javafx/css/StyleHelper.java ! javafx-ui-common/src/com/sun/javafx/css/Stylesheet.java ! javafx-ui-common/src/com/sun/javafx/css/converters/EnumConverter.java ! javafx-ui-common/src/com/sun/javafx/css/converters/FontConverter.java ! javafx-ui-common/src/com/sun/javafx/css/parser/Css2Bin.java ! javafx-ui-common/src/com/sun/javafx/scene/layout/region/BackgroundImage.java ! javafx-ui-common/src/com/sun/javafx/scene/layout/region/BorderImage.java ! javafx-ui-common/src/com/sun/javafx/scene/layout/region/BorderImageConverter.java + javafx-ui-common/test/unit/com/sun/javafx/css/RT-30953-2.2.21.bss + javafx-ui-common/test/unit/com/sun/javafx/css/RT-30953-2.2.4.bss + javafx-ui-common/test/unit/com/sun/javafx/css/RT-30953.css ! javafx-ui-common/test/unit/com/sun/javafx/css/RuleTest.java ! javafx-ui-common/test/unit/com/sun/javafx/css/StyleConverterTest.java ! javafx-ui-common/test/unit/com/sun/javafx/css/StylesheetTest.java ! javafx-ui-common/test/unit/com/sun/javafx/css/converters/EnumConverterTest.java + javafx-ui-common/test/unit/com/sun/javafx/css/duke.png ! javafx-ui-common/test/unit/com/sun/javafx/css/parser/CSSParserTest.java From hang.vo at oracle.com Mon Jun 17 16:47:59 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Mon, 17 Jun 2013 23:47:59 +0000 Subject: hg: openjfx/8/controls/rt: RT-31083: only use font property if looking up font for converting font relative values Message-ID: <20130617234829.887FD48292@hg.openjdk.java.net> Changeset: 12d2d28f86b8 Author: David Grieve Date: 2013-06-17 19:31 -0400 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/12d2d28f86b8 RT-31083: only use font property if looking up font for converting font relative values ! javafx-ui-common/src/javafx/scene/CssStyleHelper.java From hang.vo at oracle.com Tue Jun 18 00:05:48 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 18 Jun 2013 07:05:48 +0000 Subject: hg: openjfx/8/graphics/rt: RT-27712 Mac: Application crash if provide an empty List to the drag board content Message-ID: <20130618070600.66B624829D@hg.openjdk.java.net> Changeset: 4c54e2de3e94 Author: Petr Pchelko Date: 2013-06-18 10:59 +0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/4c54e2de3e94 RT-27712 Mac: Application crash if provide an empty List to the drag board content Reviewed-by: anthony, art ! glass/glass/src/com/sun/glass/ui/mac/MacPasteboard.java ! glass/glass/src/com/sun/glass/ui/mac/MacSystemClipboard.java ! javafx-ui-quantum/src/com/sun/javafx/tk/quantum/QuantumClipboard.java From hang.vo at oracle.com Tue Jun 18 03:58:46 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 18 Jun 2013 10:58:46 +0000 Subject: hg: openjfx/2u/dev/rt: 2 new changesets Message-ID: <20130618105849.C6677482AA@hg.openjdk.java.net> Changeset: 6dd9f40e495c Author: Martin Sladecek Date: 2013-06-18 11:02 +0200 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/6dd9f40e495c RT-31126 GridPaneDesignInfo.getCellBounds() returns wrong cell heights A fix specificaly for 2.2 GridPane implementation, not an issue in 8.0 ! javafx-ui-common/src/javafx/scene/layout/GridPane.java Changeset: e40fc78d21fa Author: Martin Sladecek Date: 2013-06-18 11:03 +0200 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/e40fc78d21fa Automated merge with ssh://jfxsrc.us.oracle.com//javafx/2u/dev/jfx//rt From hang.vo at oracle.com Tue Jun 18 08:17:59 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 18 Jun 2013 15:17:59 +0000 Subject: hg: openjfx/8/graphics/rt: Don't throw an exception when the javafx.platform.properties file cannot be read: Reviewed by Kevin, Daniel Message-ID: <20130618151811.644F9482BA@hg.openjdk.java.net> Changeset: a7e199382f8d Author: snorthov Date: 2013-06-18 11:07 -0400 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/a7e199382f8d Don't throw an exception when the javafx.platform.properties file cannot be read: Reviewed by Kevin, Daniel ! javafx-common/src/com/sun/javafx/PlatformUtil.java From hang.vo at oracle.com Tue Jun 18 09:48:16 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 18 Jun 2013 16:48:16 +0000 Subject: hg: openjfx/8/graphics/rt: 3 new changesets Message-ID: <20130618164852.5D0E7482BF@hg.openjdk.java.net> Changeset: 40f2b2f80bde Author: hudson Date: 2013-06-13 13:50 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/40f2b2f80bde Added tag 8.0-b94 for changeset 7203a2531ae9 ! .hgtags Changeset: 2a0ed6cb3e5f Author: mv157916 Date: 2013-06-14 15:07 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/2a0ed6cb3e5f RT-31106: Update the JDK build number to b94 in rt/build.properties file in the JavaFX 8 Master forest. ! build.properties Changeset: b1242e34a796 Author: jgodinez Date: 2013-06-18 09:43 -0700 URL: http://hg.openjdk.java.net/openjfx/8/graphics/rt/rev/b1242e34a796 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/MASTER/jfx/rt - glass/glass-lib-lens/src/android/Main.c - glass/glass-lib-lens/src/android/Main.h - javafx-fxml/.hgignore From neugens at redhat.com Tue Jun 18 12:54:33 2013 From: neugens at redhat.com (Mario Torre) Date: Tue, 18 Jun 2013 21:54:33 +0200 Subject: Get style properties Message-ID: <1371585273.31607.41.camel@galactica.localdomain> Hi all! I was trying to figure out how JavaFX parses and uses the style under the hood and I stumbled on something I don't fully understand (I admit I'm not really a CSS expert yet :). In the modena.css, right at the .root selector we have: /* These are needed for Popup */ -fx-background-color: inherit; -fx-background-radius: inherit; -fx-background-insets: inherit; -fx-padding: inherit; and then, few lines below: -fx-background-color: -fx-background; Is this intentional? How does JavaFX understand which value to choose? It seems (but I'm far from discovering the trick) that both values are preserved, but how does the system know which one to use? I assume that "inherit" is what is doing the magic here, probably by delegating to the closest matching declaration, but it's still not clear to me how everything is resolved. Also, is there a way to retrive fully resolved values? I would like something like this, basically: Button.getStyle("-fx-backgroud-color").getValue(); Or such. I found a way to match declared styles and basically get a StyleMap, but this uses internal API I wanted to check if I'm missing some obvious way, perhaps? Cheers, Mario From rcuprak at gmail.com Tue Jun 18 13:30:52 2013 From: rcuprak at gmail.com (Ryan Cuprak) Date: Tue, 18 Jun 2013 16:30:52 -0400 Subject: Drag & Drop - HeapByteBuffer Message-ID: Just curious if anyone has ever run into a situation where you get a java.nio.HeapByteBuffer instead of the deserialized object? I implemented drag and drop in a table in a TableView. It works fine in the test app but fails in the actual application - drop gets receives the HeapByteBuffer instead. Thanks, -Ryan From pavel.safrata at oracle.com Tue Jun 18 14:12:14 2013 From: pavel.safrata at oracle.com (Pavel Safrata) Date: Tue, 18 Jun 2013 23:12:14 +0200 Subject: Drag & Drop - HeapByteBuffer In-Reply-To: References: Message-ID: <51C0CD2E.9020609@oracle.com> Hello Ryan, this happens when the object deserialization fails with either IOException or ClassNotFoundException. It can also happen when "data instanceof ByteBuffer" reports false which would be a class loader issue. Pavel On 18.6.2013 22:30, Ryan Cuprak wrote: > Just curious if anyone has ever run into a situation where you get a java.nio.HeapByteBuffer instead of the deserialized object? I implemented drag and drop in a table in a TableView. It works fine in the test app but fails in the actual application - drop gets receives the HeapByteBuffer instead. > > Thanks, > -Ryan From hang.vo at oracle.com Tue Jun 18 14:33:21 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 18 Jun 2013 21:33:21 +0000 Subject: hg: openjfx/8/controls/rt: 4 new changesets Message-ID: <20130618213438.0583A482DE@hg.openjdk.java.net> Changeset: 39ed875879a8 Author: jgiles Date: 2013-06-18 09:24 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/39ed875879a8 Backing out patch for RT-28337: Regression : many controls cannot be resized. This is no longer necessary after the recent requestLayout() optimisations. ! javafx-ui-controls/src/javafx/scene/control/SkinBase.java Changeset: c879a1c4c77e Author: jgiles Date: 2013-06-18 12:26 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/c879a1c4c77e Removing unused / commented out code. ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/ContextMenuContent.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/FXVKSkin.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/Utils.java Changeset: 92d455c3783b Author: jgiles Date: 2013-06-18 15:48 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/92d455c3783b More unit tests for cells. ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/ControlResources.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/resources/EmbeddedResources.java ! javafx-ui-controls/test/javafx/scene/control/cell/ChoiceBoxTableCellTest.java ! javafx-ui-controls/test/javafx/scene/control/cell/ChoiceBoxTreeTableCellTest.java ! javafx-ui-controls/test/javafx/scene/control/cell/ComboBoxTableCellTest.java ! javafx-ui-controls/test/javafx/scene/control/cell/ComboBoxTreeTableCellTest.java ! javafx-ui-controls/test/javafx/scene/control/cell/TextFieldTableCellTest.java ! javafx-ui-controls/test/javafx/scene/control/cell/TextFieldTreeTableCellTest.java Changeset: b4f3debd7092 Author: jgiles Date: 2013-06-19 09:18 +1200 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/b4f3debd7092 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/controls/jfx/rt From hang.vo at oracle.com Tue Jun 18 15:31:24 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 18 Jun 2013 22:31:24 +0000 Subject: hg: openjfx/2u/dev/rt: 25 new changesets Message-ID: <20130618223147.1D494482E5@hg.openjdk.java.net> Changeset: 061182f5d237 Author: hudson Date: 2013-06-12 16:44 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/061182f5d237 Added tag 2.2.40-b29 for changeset 6b5ccbc93d06 ! .hgtags Changeset: 862dcc768d3a Author: kcr Date: 2013-06-18 12:13 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/862dcc768d3a Automated merge with ssh://jfxsrc.us.oracle.com//javafx/2u/MASTER/jfx/rt Changeset: 649e6ab437e2 Author: hudson Date: 2013-03-12 14:11 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/649e6ab437e2 Added tag 2.2.25-b01 for changeset e09ec1ee61f3 ! .hgtags Changeset: 988cdeff3b09 Author: kcr Date: 2013-03-13 08:27 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/988cdeff3b09 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/2.2.21/MASTER/jfx/rt ! .hgtags Changeset: e98febae5d84 Author: hudson Date: 2013-03-19 15:11 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/e98febae5d84 Added tag 2.2.25-b02 for changeset 988cdeff3b09 ! .hgtags Changeset: 82c046462c4d Author: kcr Date: 2013-03-20 16:11 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/82c046462c4d Automated merge with ssh://jfxsrc.us.oracle.com//javafx/2.2.21/MASTER/jfx/rt ! .hgtags Changeset: 1e3d4b13eb6a Author: hudson Date: 2013-03-26 09:39 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/1e3d4b13eb6a Added tag 2.2.25-b03 ! .hgtags Changeset: 4dee5b1f7214 Author: kcr Date: 2013-03-26 10:44 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/4dee5b1f7214 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/2.2.21/MASTER/jfx/rt ! .hgtags Changeset: fa463c60d951 Author: jgiles Date: 2013-02-08 09:19 +1300 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/fa463c60d951 RT-27945: JAVAFX.TITLEDPANE.CONTENT OF THE TITLEDPANE DISAPPEARS WHEN ANIMATION IS CHANGED ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TitledPaneSkin.java Changeset: b46fbd1f74f9 Author: jgiles Date: 2013-03-01 13:36 +1300 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/b46fbd1f74f9 RT-28467: ComboBox focus switching blocks all user interaction (backport from JavaFX 8.0, where it was fixed as RT-26185) ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/ComboBoxListViewSkin.java Changeset: 61c25ccb8167 Author: hudson Date: 2013-04-02 12:09 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/61c25ccb8167 Added tag 2.2.25-b04 for changeset b46fbd1f74f9 ! .hgtags Changeset: e1197ad035b8 Author: kcr Date: 2013-04-04 17:41 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/e1197ad035b8 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/2.2.21/MASTER/jfx/rt ! .hgtags Changeset: a3b7e0235380 Author: hudson Date: 2013-04-09 10:04 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/a3b7e0235380 Added tag 2.2.25-b05 for changeset e1197ad035b8 ! .hgtags Changeset: 4671ef10126f Author: hudson Date: 2013-04-16 12:39 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/4671ef10126f Added tag 2.2.25-b06 ! .hgtags Changeset: d9fe728c9f86 Author: hudson Date: 2013-04-17 20:41 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/d9fe728c9f86 Added tag 2.2.25-b07 for changeset 4671ef10126f ! .hgtags Changeset: 54073bd993fb Author: hudson Date: 2013-04-23 15:55 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/54073bd993fb Added tag 2.2.25-b08 for changeset d9fe728c9f86 ! .hgtags Changeset: baa2b72bc820 Author: hudson Date: 2013-04-30 11:08 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/baa2b72bc820 Added tag 2.2.25-b09 for changeset 54073bd993fb ! .hgtags Changeset: d768f79ec04e Author: jgiles Date: 2013-05-03 09:09 +1200 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/d768f79ec04e RT-30169: Regression - Focused ComboBox doesn't take text input - javafx-ui-controls/src/com/sun/javafx/scene/control/FocusableTextField.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/skin/ComboBoxListViewSkin.java ! javafx-ui-controls/src/javafx/scene/control/ComboBox.java Changeset: 34684ab1e575 Author: hudson Date: 2013-05-07 11:05 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/34684ab1e575 Added tag 2.2.25-b10 for changeset d768f79ec04e ! .hgtags Changeset: d43befb690d0 Author: hudson Date: 2013-05-15 11:36 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/d43befb690d0 Added tag 2.2.25-b11 for changeset 34684ab1e575 ! .hgtags Changeset: 9f1b296a606a Author: hudson Date: 2013-05-22 14:43 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/9f1b296a606a Added tag 2.2.25-b12 for changeset d43befb690d0 ! .hgtags Changeset: d3ac98c26b58 Author: hudson Date: 2013-05-25 10:41 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/d3ac98c26b58 Added tag 2.2.25-b13 for changeset 9f1b296a606a ! .hgtags Changeset: 8459595b95b6 Author: hudson Date: 2013-06-04 08:00 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/8459595b95b6 Added tag 2.2.25-b14 for changeset d3ac98c26b58 ! .hgtags Changeset: b97dbe3ddf77 Author: hudson Date: 2013-06-06 08:14 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/b97dbe3ddf77 Added tag 2.2.25-b15 for changeset 8459595b95b6 ! .hgtags Changeset: 3baf54f57be7 Author: kcr Date: 2013-06-18 12:21 -0700 URL: http://hg.openjdk.java.net/openjfx/2u/dev/rt/rev/3baf54f57be7 Automated merge with ssh://jfxsrc.us.oracle.com//javafx/2.2.25/MASTER/jfx/rt ! .hgtags From hang.vo at oracle.com Tue Jun 18 16:33:10 2013 From: hang.vo at oracle.com (hang.vo at oracle.com) Date: Tue, 18 Jun 2013 23:33:10 +0000 Subject: hg: openjfx/8/controls/rt: Removed commented out code that used reflection. Message-ID: <20130618233322.14886482F3@hg.openjdk.java.net> Changeset: 9d368dc0822d Author: psomashe Date: 2013-06-18 16:39 -0700 URL: http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/9d368dc0822d Removed commented out code that used reflection. ! javafx-ui-controls/src/com/sun/javafx/scene/control/accessible/AccessibleList.java ! javafx-ui-controls/src/com/sun/javafx/scene/control/accessible/AccessibleListItem.java From swpalmer at gmail.com Tue Jun 18 17:26:37 2013 From: swpalmer at gmail.com (Scott Palmer) Date: Tue, 18 Jun 2013 20:26:37 -0400 Subject: JDK8 b94 Download Removal Message-ID: This is not to the JavaFX guys particularly. I'm not sure where to address this. The download page for JDK8 builds claims that, "An issue was found in b94, so the downloads were reverted to b93. When the issue issue[sic] resolved, likely b95, the downloads will be made available." Please don't do that. What is going on? I have already downloaded and installed b94. Is it dangerous? Does it contain malware? Will it format by drive and kill my dog? Now I need to know: Should I uninstall it? (safe bet would be yes) But more importantly, has it done any harm? Considering I installed it and ran my app with it,it seems what ever the issue is, it isn't all that noticeable... considering all the other "issues" in JDK8, why do you care so much about this one that you had to take down the file? Argh. Some effective communication would be appreciated. Regards, Scott From david.grieve at oracle.com Tue Jun 18 18:10:20 2013 From: david.grieve at oracle.com (David Grieve) Date: Tue, 18 Jun 2013 21:10:20 -0400 Subject: Get style properties In-Reply-To: <1371585273.31607.41.camel@galactica.localdomain> References: <1371585273.31607.41.camel@galactica.localdomain> Message-ID: On Jun 18, 2013, at 3:54 PM, Mario Torre wrote: > Hi all! > > I was trying to figure out how JavaFX parses and uses the style under > the hood and I stumbled on something I don't fully understand (I admit > I'm not really a CSS expert yet :). > > In the modena.css, right at the .root selector we have: > > /* These are needed for Popup */ > -fx-background-color: inherit; > -fx-background-radius: inherit; > -fx-background-insets: inherit; > -fx-padding: inherit; > > and then, few lines below: > > -fx-background-color: -fx-background; > > Is this intentional? How does JavaFX understand which value to choose? I've got a sticky note on my desk reminding me to take a look at those "inherit" lines. They were needed at one point in time, but I'm not sure they are needed now. I guess I should enter that sticky note into JIRA! > > It seems (but I'm far from discovering the trick) that both values are > preserved, but how does the system know which one to use? CSS uses cascade rules to determine which to use. In the case of -fx-background-color, the second declaration will be used. In the modena theme, if the root node of the scene is a Region, then the background-color of the Region will be whatever -fx-background is. > > I assume that "inherit" is what is doing the magic here, probably by > delegating to the closest matching declaration, but it's still not clear > to me how everything is resolved. In the case of the others (radius, insets, padding), if the root node is a Region, then css will try to find a parent with that style. This doesn't do much in the case of the root of a Scene since the root node doesn't have a parent. In the case of a popup, the parent of the root can be considered to be the ownerNode and these styles are intended to make it such that the background-radius, fill, insets and padding of the popup match those of the ownerNode (if there is one). That is the intention, but whether these actually work, I can't say for certain. And whether they are actually needed is another question. > > Also, is there a way to retrive fully resolved values? I would like > something like this, basically: > > Button.getStyle("-fx-backgroud-color").getValue(); > > Or such. There is, but not through public API. You can call List