From vadim.pakhnushev at oracle.com Mon Dec 1 13:51:13 2014 From: vadim.pakhnushev at oracle.com (Vadim Pakhnushev) Date: Mon, 01 Dec 2014 16:51:13 +0300 Subject: [8u40] Review request for RT-35277: ColorPicker throw exceptions Message-ID: <547C7251.8030108@oracle.com> Jonathan, Please review this fix: https://javafx-jira.kenai.com/browse/RT-35277 http://cr.openjdk.java.net/~vadim/RT-35277/webrev.00/ Thanks, Vadim From kevin.rushforth at oracle.com Mon Dec 1 15:49:45 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Mon, 01 Dec 2014 07:49:45 -0800 Subject: In(Sanity) Testing Mondays In-Reply-To: <54788E5E.3050204@oracle.com> References: <54788E5E.3050204@oracle.com> Message-ID: <547C8E19.2040908@oracle.com> Also as a reminder, we will be under rampdown rules for M4 (and then RDP2) after the repo opens back up later today. I will send another reminder when I open it back up. Please see the "Milestone Week" section on the Sanity Testing page that Vadim sent out below. -- Kevin Vadim Pakhnushev wrote: > Reminder, Monday is our weekly sanity testing. > > You can find your testing assignment at: > > https://wiki.openjdk.java.net/display/OpenJFX/Sanity+Testing > > Also please remember that the repo will be locked from 1am PST until > 1pm PST. > > Happy testing! > > Thanks, > Vadim From lehmann at media-interactive.de Mon Dec 1 18:05:51 2014 From: lehmann at media-interactive.de (Werner Lehmann) Date: Mon, 1 Dec 2014 19:05:51 +0100 Subject: Permutation of scene graph children Message-ID: <547CADFF.4050201@media-interactive.de> Hi, occasionally I need to move a child in its children list and would like to avoid a remove/add operation. For example, this could be useful to change z-order in a StackPane, or change vertical order on a VBox, or when synchronizing item order in a model with corresponding node order in a skin. java.util.List does not support a move or swap operation. I had hoped a sort operation with a clever comparator might do the trick, triggering a permutation listchange event. However, any attempt in this direction bombs, complaining about "duplicate children added". On the other hand there is rudimentary support for this in Node.toFront and flags exist on Parent: "childrenTriggerPermutation", "childSetModified". Any thoughts about getting swap support on ObservableList and/or permutation support on Parent.children? Werner From lehmann at media-interactive.de Mon Dec 1 18:28:41 2014 From: lehmann at media-interactive.de (Werner Lehmann) Date: Mon, 1 Dec 2014 19:28:41 +0100 Subject: TreeItem enhancements Message-ID: <547CB359.5020400@media-interactive.de> Hi, I am currently building a visual designer for Jasper Reports (to be embedded in our product). The design model is basically a design tree, so I am extending TreeItem for its element classes, e.g. StaticText or SubReport. This has two benefits: 1. I get to show the model in a TreeView, and 2. I get tree change notifications bubbled from leaf to root item - both at no extra cost. Obviously "my" TreeItems have additional observable properties such as x/y/w/h. It would be very cool if changes to those properties could also be bubbled to the root using the same change bubbling technique. Only little things are missing here: - ability to create TreeItem.children with an observable-list extractor - ability to bubble ListChangeListener.Change.wasUpdated events Also, if we could create TreeItem.children for ourselves in a factory or somesuch, we could use a Filtered- or SortedList, too. I imagine this could simplify tree filtering a lot (ScenicView!). Thoughts about this? Rgds Werner From kevin.rushforth at oracle.com Mon Dec 1 18:42:51 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Mon, 01 Dec 2014 10:42:51 -0800 Subject: EA builds of 8u40 and 9 for arm (RaspberryPi) In-Reply-To: References: Message-ID: <547CB6AB.5020105@oracle.com> You should probably ask this question on one of the openjdk mailing lists, such as discuss at openjdk.java.net . -- Kevin Sven Reimers wrote: > Hi guys, > > hope this is the correct mailing list to ask.. > > I was looking for ea builds of 8u40 and 9 for arm (RaspberryPi) on > jdk8.java.net and jdl9.java.net, but I can't find them there... > > Any chance they get published once again? > > Thanks > > -Sven > > From jonathan.giles at oracle.com Mon Dec 1 19:20:21 2014 From: jonathan.giles at oracle.com (Jonathan Giles) Date: Tue, 02 Dec 2014 08:20:21 +1300 Subject: TreeItem enhancements In-Reply-To: <547CB359.5020400@media-interactive.de> References: <547CB359.5020400@media-interactive.de> Message-ID: <547CBF75.8050401@oracle.com> These sound like decent suggestions - I would encourage you to file a tweak request in jira. It would be great if in the development of your work you could prototype and explore these suggestions in greater depth - I am always happy to work with patches as a starting point. -- Jonathan On 2/12/2014 7:28 a.m., Werner Lehmann wrote: > Hi, > > I am currently building a visual designer for Jasper Reports (to be > embedded in our product). The design model is basically a design tree, > so I am extending TreeItem for its element classes, e.g. StaticText or > SubReport. This has two benefits: 1. I get to show the model in a > TreeView, and 2. I get tree change notifications bubbled from leaf to > root item - both at no extra cost. > > Obviously "my" TreeItems have additional observable properties such as > x/y/w/h. It would be very cool if changes to those properties could > also be bubbled to the root using the same change bubbling technique. > Only little things are missing here: > > - ability to create TreeItem.children with an observable-list extractor > - ability to bubble ListChangeListener.Change.wasUpdated events > > Also, if we could create TreeItem.children for ourselves in a factory > or somesuch, we could use a Filtered- or SortedList, too. I imagine > this could simplify tree filtering a lot (ScenicView!). > > Thoughts about this? > > Rgds > Werner From lehmann at media-interactive.de Mon Dec 1 20:00:28 2014 From: lehmann at media-interactive.de (Werner Lehmann) Date: Mon, 1 Dec 2014 21:00:28 +0100 Subject: TreeItem enhancements In-Reply-To: <547CBF75.8050401@oracle.com> References: <547CB359.5020400@media-interactive.de> <547CBF75.8050401@oracle.com> Message-ID: <547CC8DC.9040607@media-interactive.de> Hi Jonathan, sure, I'll file that tweak. About prototyping: this is probably the only thing I can do here, prototyping. I'd rather prepare a pull request with treeitem enhancements while using them already for our product at the same time. That could be a win-win situation and I could provide somewhat proven and tested code. Otherwise I end up implementing stuff twice. Unfortunately I don't see a way how to do this without running into legal and technical issues (*) on the way... With controlsfx it is similar on a smaller scale. Werner (*) package private stuff, keeping treeview compatibility, backport if/when code eventually arrives in jfx.next, and probably Integer.MAX_VALUE more ;-) On 01.12.2014 20:20, Jonathan Giles wrote: > These sound like decent suggestions - I would encourage you to file a > tweak request in jira. It would be great if in the development of your > work you could prototype and explore these suggestions in greater depth > - I am always happy to work with patches as a starting point. > > -- Jonathan From morris.meyer at oracle.com Mon Dec 1 20:44:10 2014 From: morris.meyer at oracle.com (Morris Meyer) Date: Mon, 01 Dec 2014 15:44:10 -0500 Subject: [8u40]: Review request for RT-39489: Latest 10.10.2 beta update causes NSTouch exceptions continually Message-ID: <547CD31A.8050709@oracle.com> Kevin and David, Please review this patch for the issue added with the 10.10.2 software patch that deals with part of the NSTouch interface changing. --morris JIRA - https://javafx-jira.kenai.com/browse/RT-39489 WEBREV - http://cr.openjdk.java.net/~morris/RT-39489.01/ From mike at plan99.net Mon Dec 1 21:04:02 2014 From: mike at plan99.net (Mike Hearn) Date: Mon, 1 Dec 2014 22:04:02 +0100 Subject: [8u40]: Review request for RT-39489: Latest 10.10.2 beta update causes NSTouch exceptions continually In-Reply-To: <547CD31A.8050709@oracle.com> References: <547CD31A.8050709@oracle.com> Message-ID: What happens to existing jfx apps once 10.10.2 starts rolling out? Do they all break?! I didn't see much discussion of the scope of this issue in the bug report. On Mon, Dec 1, 2014 at 9:44 PM, Morris Meyer wrote: > Kevin and David, > > Please review this patch for the issue added with the 10.10.2 software > patch that deals with part of the NSTouch interface changing. > > --morris > > JIRA - https://javafx-jira.kenai.com/browse/RT-39489 > WEBREV - http://cr.openjdk.java.net/~morris/RT-39489.01/ > > > From kevin.rushforth at oracle.com Mon Dec 1 21:05:58 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Mon, 01 Dec 2014 13:05:58 -0800 Subject: 8u-dev unlocked -- M4 rampdown in effect Message-ID: <547CD836.1090506@oracle.com> The 8u-dev repo is unlocked following this week's testing. PLEASE NOTE: The milestone M4 rampdown is in effect this week (the usual exceptions apply for test, doc, and IDE changes), and also next week (leading up to JDK 8u40 RDP2). See https://wiki.openjdk.java.net/display/OpenJFX/Sanity+Testing for weekly freeze and milestone rampdown rules. -- Kevin From tobi at ultramixer.com Mon Dec 1 21:09:53 2014 From: tobi at ultramixer.com (Tobias Bley) Date: Mon, 1 Dec 2014 22:09:53 +0100 Subject: [8u40]: Review request for RT-39489: Latest 10.10.2 beta update causes NSTouch exceptions continually In-Reply-To: References: <547CD31A.8050709@oracle.com> Message-ID: <5F95EEAE-EB0D-43DE-96CD-816C6F6C3510@ultramixer.com> They work but the performance goes down to many native exceptions?. Tobi > Am 01.12.2014 um 22:04 schrieb Mike Hearn : > > What happens to existing jfx apps once 10.10.2 starts rolling out? Do they > all break?! I didn't see much discussion of the scope of this issue in the > bug report. > > On Mon, Dec 1, 2014 at 9:44 PM, Morris Meyer > wrote: > >> Kevin and David, >> >> Please review this patch for the issue added with the 10.10.2 software >> patch that deals with part of the NSTouch interface changing. >> >> --morris >> >> JIRA - https://javafx-jira.kenai.com/browse/RT-39489 >> WEBREV - http://cr.openjdk.java.net/~morris/RT-39489.01/ >> >> >> From mike at plan99.net Mon Dec 1 21:22:04 2014 From: mike at plan99.net (Mike Hearn) Date: Mon, 1 Dec 2014 22:22:04 +0100 Subject: [8u40]: Review request for RT-39489: Latest 10.10.2 beta update causes NSTouch exceptions continually In-Reply-To: <5F95EEAE-EB0D-43DE-96CD-816C6F6C3510@ultramixer.com> References: <547CD31A.8050709@oracle.com> <5F95EEAE-EB0D-43DE-96CD-816C6F6C3510@ultramixer.com> Message-ID: Ugh. Seems this also nukes Chrome and Blender. http://9to5mac.com/2014/11/30/google-chrome-crashes-hard-with-mac-os-10-10-2-beta-heres-the-fix/ I really wonder how an update that hard crashes Chrome can actually even ship to beta. That seems like a total absence of app compat testing. Seems like the issue is Apple changed an internal API but didn't update all their own callers? So a bug in AppKit? On Mon, Dec 1, 2014 at 10:09 PM, Tobias Bley wrote: > They work but the performance goes down to many native exceptions?. > > Tobi > > > > Am 01.12.2014 um 22:04 schrieb Mike Hearn : > > > > What happens to existing jfx apps once 10.10.2 starts rolling out? Do > they > > all break?! I didn't see much discussion of the scope of this issue in > the > > bug report. > > > > On Mon, Dec 1, 2014 at 9:44 PM, Morris Meyer > > wrote: > > > >> Kevin and David, > >> > >> Please review this patch for the issue added with the 10.10.2 software > >> patch that deals with part of the NSTouch interface changing. > >> > >> --morris > >> > >> JIRA - https://javafx-jira.kenai.com/browse/RT-39489 > >> WEBREV - http://cr.openjdk.java.net/~morris/RT-39489.01/ > >> > >> > >> > > From kevin.rushforth at oracle.com Mon Dec 1 21:27:10 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Mon, 01 Dec 2014 13:27:10 -0800 Subject: [8u40]: Review request for RT-39489: Latest 10.10.2 beta update causes NSTouch exceptions continually In-Reply-To: References: <547CD31A.8050709@oracle.com> <5F95EEAE-EB0D-43DE-96CD-816C6F6C3510@ultramixer.com> Message-ID: <547CDD2E.5080208@oracle.com> My question, which I asked in the JIRA, is whether this is Apple's bug that we can expect them to fix, or whether they really did mean to nuke a deprecated interface in an update release. Even with Apple's at-times cavalier attitude regarding backward compatibility, it seems unlikely that they would intentionally do this in a dot-dot release. -- Kevin Mike Hearn wrote: > Ugh. Seems this also nukes Chrome and Blender. > > http://9to5mac.com/2014/11/30/google-chrome-crashes-hard-with-mac-os-10-10-2-beta-heres-the-fix/ > > I really wonder how an update that hard crashes Chrome can actually even > ship to beta. That seems like a total absence of app compat testing. > > Seems like the issue is Apple changed an internal API but didn't update all > their own callers? So a bug in AppKit? > > On Mon, Dec 1, 2014 at 10:09 PM, Tobias Bley wrote: > > >> They work but the performance goes down to many native exceptions?. >> >> Tobi >> >> >> >>> Am 01.12.2014 um 22:04 schrieb Mike Hearn : >>> >>> What happens to existing jfx apps once 10.10.2 starts rolling out? Do >>> >> they >> >>> all break?! I didn't see much discussion of the scope of this issue in >>> >> the >> >>> bug report. >>> >>> On Mon, Dec 1, 2014 at 9:44 PM, Morris Meyer >>> wrote: >>> >>> >>>> Kevin and David, >>>> >>>> Please review this patch for the issue added with the 10.10.2 software >>>> patch that deals with part of the NSTouch interface changing. >>>> >>>> --morris >>>> >>>> JIRA - https://javafx-jira.kenai.com/browse/RT-39489 >>>> WEBREV - http://cr.openjdk.java.net/~morris/RT-39489.01/ >>>> >>>> >>>> >>>> >> From chien.yang at oracle.com Mon Dec 1 23:34:11 2014 From: chien.yang at oracle.com (Chien Yang) Date: Mon, 01 Dec 2014 15:34:11 -0800 Subject: shader question In-Reply-To: References: Message-ID: <547CFAF3.1050408@oracle.com> Hi Johan, This looks like a similar precision setting issue as reported on a different GPU. https://javafx-jira.kenai.com/browse/RT-39547 - Chien On 11/27/14, 1:13 PM, Johan Vos wrote: > Hi, > > I'm not sure this will ever work, but I started looking into JavaFX 3D on > Android. > This is the info from the GPU on my Nexus 5: > Graphics Vendor: Qualcomm > Renderer: Adreno (TM) 330 > Version: OpenGL ES 3.0 V at 95.0 AU@ (GIT at I68fa98814b) > > While that looks fine, running a simple JavaFX 3D sample crashes in the > render phase: > java.lang.RuntimeException: Error creating shader program > at com.sun.prism.es2.ES2Shader.createFromSource(ES2Shader.java:158) > at com.sun.prism.es2.ES2PhongShader.getShader(ES2PhongShader.java:177) > > I debugged the native code, and the native call to nCreateProgram in > native-prism-es2/GLContext.c fails in the line > ctxInfo->glGetProgramiv(shaderProgram, GL_LINK_STATUS, &success); > (that is, success = GL_FALSE) > > Good enough, the error messages are retrieved, and printed in the log: > Program link log: --From Vertex Shader: > Error: Symbol lights defined with different precision in vertex and > fragment shaders. > Error: Symbol lights defined with different precision in vertex and > fragment shaders. > --From Fragment Shader: > Error: Symbol lights defined with different precision in vertex and > fragment shaders. > Error: Symbol lights defined with different precision in vertex and > fragment shaders. > > Does anyone have an idea about this? Or is 3D on Android just over > ambitious? > > Thanks, > > - Johan From powers.anirvan at gmail.com Tue Dec 2 05:33:44 2014 From: powers.anirvan at gmail.com (Anirvan Sarkar) Date: Tue, 2 Dec 2014 11:03:44 +0530 Subject: Permutation of scene graph children In-Reply-To: <547CADFF.4050201@media-interactive.de> References: <547CADFF.4050201@media-interactive.de> Message-ID: Hi, java.util.List doesn't support a swap operation but there is Collections.swap(List, int, int) for that. Also there exists a JIRA RT-39128 for getting swap support on ObservableList. Regards, Anirvan On 1 December 2014 at 23:35, Werner Lehmann wrote: > Hi, > > occasionally I need to move a child in its children list and would like to > avoid a remove/add operation. For example, this could be useful to change > z-order in a StackPane, or change vertical order on a VBox, or when > synchronizing item order in a model with corresponding node order in a skin. > > java.util.List does not support a move or swap operation. I had hoped a > sort operation with a clever comparator might do the trick, triggering a > permutation listchange event. However, any attempt in this direction bombs, > complaining about "duplicate children added". On the other hand there is > rudimentary support for this in Node.toFront and flags exist on Parent: > "childrenTriggerPermutation", "childSetModified". > > Any thoughts about getting swap support on ObservableList and/or > permutation support on Parent.children? > > Werner > -- Anirvan From tom.schindl at bestsolution.at Tue Dec 2 09:21:13 2014 From: tom.schindl at bestsolution.at (Tom Schindl) Date: Tue, 02 Dec 2014 10:21:13 +0100 Subject: Permutation of scene graph children In-Reply-To: References: <547CADFF.4050201@media-interactive.de> Message-ID: <547D8489.50503@bestsolution.at> I'd rather like to see ObservableList.move()/swap() which since we now have Java8 this could be implemented as a default methods. I think what you can do to make the swap only fire one event is to use Object[] data = l.toArray(); // reorder l.setAll(data); Tom On 02.12.14 06:33, Anirvan Sarkar wrote: > Hi, > > java.util.List doesn't support a swap operation but there is > Collections.swap(List, > int, int) > for > that. > > Also there exists a JIRA RT-39128 > for getting swap support on > ObservableList. > > Regards, > Anirvan > > On 1 December 2014 at 23:35, Werner Lehmann > wrote: > >> Hi, >> >> occasionally I need to move a child in its children list and would like to >> avoid a remove/add operation. For example, this could be useful to change >> z-order in a StackPane, or change vertical order on a VBox, or when >> synchronizing item order in a model with corresponding node order in a skin. >> >> java.util.List does not support a move or swap operation. I had hoped a >> sort operation with a clever comparator might do the trick, triggering a >> permutation listchange event. However, any attempt in this direction bombs, >> complaining about "duplicate children added". On the other hand there is >> rudimentary support for this in Node.toFront and flags exist on Parent: >> "childrenTriggerPermutation", "childSetModified". >> >> Any thoughts about getting swap support on ObservableList and/or >> permutation support on Parent.children? >> >> Werner >> > > > -- Thomas Schindl, CTO BestSolution.at EDV Systemhaus GmbH Eduard-Bodem-Gasse 5-7, A-6020 Innsbruck http://www.bestsolution.at/ Reg. Nr. FN 222302s am Firmenbuchgericht Innsbruck From lehmann at media-interactive.de Tue Dec 2 10:50:44 2014 From: lehmann at media-interactive.de (Werner Lehmann) Date: Tue, 2 Dec 2014 11:50:44 +0100 Subject: Permutation of scene graph children In-Reply-To: <547D8489.50503@bestsolution.at> References: <547CADFF.4050201@media-interactive.de> <547D8489.50503@bestsolution.at> Message-ID: <547D9984.7040805@media-interactive.de> Tom, I know about Collections.swap but it looks like a bad idea to use on scene graph children because it seems to temporarily have a duplicate element in the list and I can't have a node twice in the scene graph. The setAll approach is what I am using now but native permutation or swap support would be better because it does not remove/add nodes, triggering CSS and possibly some listeners on scene or parent properties. Werner On 02.12.2014 10:21, Tom Schindl wrote: > I'd rather like to see ObservableList.move()/swap() which since we now > have Java8 this could be implemented as a default methods. > > I think what you can do to make the swap only fire one event is to use > > Object[] data = l.toArray(); > // reorder > > l.setAll(data); > > > Tom From lehmann at media-interactive.de Tue Dec 2 10:52:25 2014 From: lehmann at media-interactive.de (Werner Lehmann) Date: Tue, 2 Dec 2014 11:52:25 +0100 Subject: Permutation of scene graph children In-Reply-To: References: <547CADFF.4050201@media-interactive.de> Message-ID: <547D99E9.8020908@media-interactive.de> Hi Anirvan, On 02.12.2014 06:33, Anirvan Sarkar wrote: > java.util.List doesn't support a swap operation but there is > Collections.swap(List, int, int) > for > that. thanks for the pointer. Added a comment and a vote :) > Also there exists a JIRA RT-39128 > for getting swap support > on ObservableList. Please see my comment on the other reply. Thx. Werner From peatmoss84 at gmail.com Tue Dec 2 11:08:25 2014 From: peatmoss84 at gmail.com (Pete Moss) Date: Tue, 2 Dec 2014 06:08:25 -0500 Subject: Permutation of scene graph children Message-ID: You can also try using FXCollections.sort() directly on the children and see if that helps since you were wondering about a sort operation. This is intended specifically for use with ObservableList objects. This has worked well for me. I don't know how many events this will end up firing, since it wasn't important to me, but it is worth investigating. - Peter From lehmann at media-interactive.de Tue Dec 2 11:15:21 2014 From: lehmann at media-interactive.de (Werner Lehmann) Date: Tue, 2 Dec 2014 12:15:21 +0100 Subject: Permutation of scene graph children In-Reply-To: References: Message-ID: <547D9F49.6010507@media-interactive.de> Hi Peter, didn't know about that one. It basically does what Tom suggested: makes a copy, sorts that one, then uses ObservableList.setAll to get one change event. So it is what I am doing already but still removes/adds children ;-) The remove/add approach also does work for now, it just could be a little more efficent... Werner On 02.12.2014 12:08, Pete Moss wrote: > You can also try using FXCollections.sort() directly on the children and > see if that helps since you were wondering about a sort operation. This is > intended specifically for use with ObservableList objects. This has worked > well for me. I don't know how many events this will end up firing, since it > wasn't important to me, but it is worth investigating. > > - Peter From tom.schindl at bestsolution.at Tue Dec 2 11:23:01 2014 From: tom.schindl at bestsolution.at (Tom Schindl) Date: Tue, 2 Dec 2014 12:23:01 +0100 Subject: Permutation of scene graph children In-Reply-To: <547D9F49.6010507@media-interactive.de> References: <547D9F49.6010507@media-interactive.de> Message-ID: <70EDD05B-FE62-40F7-B6C7-84B5A75E91B4@bestsolution.at> I think the only really effecient way is to have the methods on the interface of observablelist because the algorithm has to have access to the internal datastructure. Tom Von meinem iPhone gesendet > Am 02.12.2014 um 12:15 schrieb Werner Lehmann : > > Hi Peter, > > didn't know about that one. It basically does what Tom suggested: makes a copy, sorts that one, then uses ObservableList.setAll to get one change event. So it is what I am doing already but still removes/adds children ;-) The remove/add approach also does work for now, it just could be a little more efficent... > > Werner > >> On 02.12.2014 12:08, Pete Moss wrote: >> You can also try using FXCollections.sort() directly on the children and >> see if that helps since you were wondering about a sort operation. This is >> intended specifically for use with ObservableList objects. This has worked >> well for me. I don't know how many events this will end up firing, since it >> wasn't important to me, but it is worth investigating. >> >> - Peter From tom.schindl at bestsolution.at Tue Dec 2 11:40:21 2014 From: tom.schindl at bestsolution.at (Tom Schindl) Date: Tue, 2 Dec 2014 12:40:21 +0100 Subject: Permutation of scene graph children In-Reply-To: References: <547CADFF.4050201@media-interactive.de> Message-ID: <54674999-1DCF-436A-83D1-8B759866C28E@bestsolution.at> I don't think adding static methods to FxCollections/Collections is the way to go in a Java8 world, they have been work arounds in a pre-default method time! Tom Von meinem iPhone gesendet > Am 02.12.2014 um 06:33 schrieb Anirvan Sarkar : > > Hi, > > java.util.List doesn't support a swap operation but there is > Collections.swap(List, > int, int) > for > that. > > Also there exists a JIRA RT-39128 > for getting swap support on > ObservableList. > > Regards, > Anirvan > > On 1 December 2014 at 23:35, Werner Lehmann > wrote: > >> Hi, >> >> occasionally I need to move a child in its children list and would like to >> avoid a remove/add operation. For example, this could be useful to change >> z-order in a StackPane, or change vertical order on a VBox, or when >> synchronizing item order in a model with corresponding node order in a skin. >> >> java.util.List does not support a move or swap operation. I had hoped a >> sort operation with a clever comparator might do the trick, triggering a >> permutation listchange event. However, any attempt in this direction bombs, >> complaining about "duplicate children added". On the other hand there is >> rudimentary support for this in Node.toFront and flags exist on Parent: >> "childrenTriggerPermutation", "childSetModified". >> >> Any thoughts about getting swap support on ObservableList and/or >> permutation support on Parent.children? >> >> Werner > > > > -- > Anirvan From j.kapitza at schwarze-allianz.de Tue Dec 2 13:55:43 2014 From: j.kapitza at schwarze-allianz.de (Jens Kapitza) Date: Tue, 02 Dec 2014 14:55:43 +0100 Subject: Permutation of scene graph children In-Reply-To: <70EDD05B-FE62-40F7-B6C7-84B5A75E91B4@bestsolution.at> References: <547D9F49.6010507@media-interactive.de> <70EDD05B-FE62-40F7-B6C7-84B5A75E91B4@bestsolution.at> Message-ID: <547DC4DF.3050805@schwarze-allianz.de> maybe this https://docs.oracle.com/javase/8/javafx/api/javafx/collections/ModifiableObservableListBase.html can help you? you can implement your swap onto a delegate and then just wrap ModifiableObservableListBase around. Jens Am 02.12.2014 um 12:23 schrieb Tom Schindl: > I think the only really effecient way is to have the methods on the interface of observablelist because the algorithm has to have access to the internal datastructure. > > Tom > > Von meinem iPhone gesendet > >> Am 02.12.2014 um 12:15 schrieb Werner Lehmann : >> >> Hi Peter, >> >> didn't know about that one. It basically does what Tom suggested: makes a copy, sorts that one, then uses ObservableList.setAll to get one change event. So it is what I am doing already but still removes/adds children ;-) The remove/add approach also does work for now, it just could be a little more efficent... >> >> Werner >> >>> On 02.12.2014 12:08, Pete Moss wrote: >>> You can also try using FXCollections.sort() directly on the children and >>> see if that helps since you were wondering about a sort operation. This is >>> intended specifically for use with ObservableList objects. This has worked >>> well for me. I don't know how many events this will end up firing, since it >>> wasn't important to me, but it is worth investigating. >>> >>> - Peter From tomas.mikula at gmail.com Tue Dec 2 16:50:58 2014 From: tomas.mikula at gmail.com (Tomas Mikula) Date: Tue, 2 Dec 2014 17:50:58 +0100 Subject: Permutation of scene graph children In-Reply-To: <547D9984.7040805@media-interactive.de> References: <547CADFF.4050201@media-interactive.de> <547D8489.50503@bestsolution.at> <547D9984.7040805@media-interactive.de> Message-ID: Hi Werner, On Tue, Dec 2, 2014 at 11:50 AM, Werner Lehmann wrote: > Tom, > > I know about Collections.swap but it looks like a bad idea to use on scene > graph children because it seems to temporarily have a duplicate element in > the list and I can't have a node twice in the scene graph. The setAll > approach is what I am using now but native permutation or swap support would > be better because it does not remove/add nodes, triggering CSS and possibly > some listeners on scene or parent properties. note that if JavaFX is ever going to support CSS selectors like :first-child, :nth-child(), etc., it will be necessary to re-apply CSS even for a permutation. Regards, Tomas From anton.tarasov at oracle.com Tue Dec 2 17:02:27 2014 From: anton.tarasov at oracle.com (Anton V. Tarasov) Date: Tue, 02 Dec 2014 20:02:27 +0300 Subject: [8u40] request for review: RT-38859 [JFXPanel] WebView in Applet leads to NullPointerException in setCursor Message-ID: <547DF0A3.4020603@oracle.com> Hi Kevin, Vadim, Please, review the fix: https://javafx-jira.kenai.com/browse/RT-38859 http://cr.openjdk.java.net/~ant/RT-38859/webrev.0 Thanks, Anton. From herve.girod at gmail.com Wed Dec 3 02:06:40 2014 From: herve.girod at gmail.com (Herve Girod) Date: Wed, 3 Dec 2014 03:06:40 +0100 Subject: JavaFX Javadoc for Java8u40 build b16 Message-ID: Hello, I downloaded Java8u40 build b16, but the JavaFX javadoc links to the Java 8 reference API (I assume u20). For example, the new Spinner class is not present in this API, whereas it is usable and present in the source. Where is it possible to download or link to the last JavaFX u40 Javadoc? Herv? From kevin.rushforth at oracle.com Wed Dec 3 02:12:23 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Tue, 02 Dec 2014 18:12:23 -0800 Subject: JavaFX Javadoc for Java8u40 build b16 In-Reply-To: References: Message-ID: <547E7187.4080308@oracle.com> The 8u40 docs aren't being staged on java.net, but the FX 9 docs are here: http://download.java.net/jdk9/jfxdocs/ Since there are no changes between FX 8u40 and 9 you can use the 9 docs as reference. -- Kevin Herve Girod wrote: > Hello, > > I downloaded Java8u40 build b16, but the JavaFX javadoc links to the Java 8 > reference API (I assume u20). For example, the new Spinner class is not > present in this API, whereas it is usable and present in the source. > > Where is it possible to download or link to the last JavaFX u40 Javadoc? > > Herv? > From herve.girod at gmail.com Wed Dec 3 08:26:56 2014 From: herve.girod at gmail.com (=?utf-8?Q?Herv=C3=A9_Girod?=) Date: Wed, 3 Dec 2014 09:26:56 +0100 Subject: JavaFX Javadoc for Java8u40 build b16 In-Reply-To: <547E7187.4080308@oracle.com> References: <547E7187.4080308@oracle.com> Message-ID: <56F2CCB9-EF27-4B3E-93B4-186584C74F95@gmail.com> Thanks! Sent from my iPhone > On Dec 3, 2014, at 03:12, Kevin Rushforth wrote: > > The 8u40 docs aren't being staged on java.net, but the FX 9 docs are here: > > http://download.java.net/jdk9/jfxdocs/ > > Since there are no changes between FX 8u40 and 9 you can use the 9 docs as reference. > > -- Kevin > > > Herve Girod wrote: >> Hello, >> >> I downloaded Java8u40 build b16, but the JavaFX javadoc links to the Java 8 >> reference API (I assume u20). For example, the new Spinner class is not >> present in this API, whereas it is usable and present in the source. >> >> Where is it possible to download or link to the last JavaFX u40 Javadoc? >> >> Herv? >> From johan at lodgon.com Wed Dec 3 08:55:40 2014 From: johan at lodgon.com (Johan Vos) Date: Wed, 3 Dec 2014 09:55:40 +0100 Subject: DatePicker on Java 7 Message-ID: Hi, I have the DatePicker control running on Android now. Since DatePicker is a heavy user of JSR 310, which is only available in Java 8, it required lots of work on the compat.jar we use on Android. The compat.jar is the jar where we put classes in order to provide required Java 8 API's and it is developed in https://bitbucket.org/javafxports/8u-dev-build . I consider everything there "temporal" until we have full Java 8 support on Android. I added a bunch of java datetime classes in the compat.jar, mainly based on the threeten backport by Stephen Colebourne (see https://github.com/ThreeTen/threetenbp). Unfortunately, there were 2 issues I couldn't fix without changing the code in the datepicker control: 1) Android has a Locale class, but no Locale.Category. I coudn't find an easy way to add an inner class in the compat.jar with the main class being available in the Dalvik runtime 2) No support for static interface methods in Dalvik: Chronology.ofLocale(...) won't work there. I managed to keep the diff rather small, but still I hope to get it at 0 differences. Below is a link to the diff (ignore the changes in dalvik.gradle): https://bitbucket.org/javafxports/8u40-rt/commits/e608aa0ffd5cb37abe8fcd5df4f0a3028a53f71e?at=default - Johan From kevin.rushforth at oracle.com Wed Dec 3 21:28:03 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Wed, 03 Dec 2014 13:28:03 -0800 Subject: FX 8u-dev now requires JDK 8-b132 (fcs) as a minimum JDK used to build FX Message-ID: <547F8063.7070900@oracle.com> I don't imagine that will affect anyone, but in case someone is still building FX with an EA version of JDK 8.0 ... I just pushed a change to 8u-dev that requires a minimum version of JDK 8-b132 which is the fcs build of JDK 8. -- Kevin From vadim.pakhnushev at oracle.com Wed Dec 3 21:40:08 2014 From: vadim.pakhnushev at oracle.com (Vadim Pakhnushev) Date: Thu, 04 Dec 2014 00:40:08 +0300 Subject: [8u40] Review request for RT-39568: [TableView] LastLine is not fully visible when scrolling. Message-ID: <547F8338.9030009@oracle.com> Hi Jonathan, Kevin, Please review the fix: https://javafx-jira.kenai.com/browse/RT-39568 http://cr.openjdk.java.net/~vadim/RT-39568/webrev.00/ Thanks, Vadim From david.dehaven at oracle.com Wed Dec 3 22:44:12 2014 From: david.dehaven at oracle.com (David DeHaven) Date: Wed, 3 Dec 2014 14:44:12 -0800 Subject: [8u40] RFR: RT-39571: [Mac] AVFoundation player never sends FINISHED state at end of stream Message-ID: Kevin, Kirill, please review the following change for 8u40 JIRA Issue: https://javafx-jira.kenai.com/browse/RT-39571 Webrev: http://cr.openjdk.java.net/~ddehaven/RT-39571/rt.0/ -DrD- From johan at lodgon.com Thu Dec 4 12:44:55 2014 From: johan at lodgon.com (Johan Vos) Date: Thu, 4 Dec 2014 13:44:55 +0100 Subject: shader question In-Reply-To: <547CFAF3.1050408@oracle.com> References: <547CFAF3.1050408@oracle.com> Message-ID: Hi, Thanks for the link. I fixed the Android issue, and added a comment on the jira-issue on how I did it. - Johan 2014-12-02 0:34 GMT+01:00 Chien Yang : > Hi Johan, > > This looks like a similar precision setting issue as reported on a > different GPU. > > https://javafx-jira.kenai.com/browse/RT-39547 > > - Chien > > > On 11/27/14, 1:13 PM, Johan Vos wrote: > >> Hi, >> >> I'm not sure this will ever work, but I started looking into JavaFX 3D on >> Android. >> This is the info from the GPU on my Nexus 5: >> Graphics Vendor: Qualcomm >> Renderer: Adreno (TM) 330 >> Version: OpenGL ES 3.0 V at 95.0 AU@ (GIT at I68fa98814b) >> >> While that looks fine, running a simple JavaFX 3D sample crashes in the >> render phase: >> java.lang.RuntimeException: Error creating shader program >> at com.sun.prism.es2.ES2Shader.createFromSource(ES2Shader.java:158) >> at com.sun.prism.es2.ES2PhongShader.getShader( >> ES2PhongShader.java:177) >> >> I debugged the native code, and the native call to nCreateProgram in >> native-prism-es2/GLContext.c fails in the line >> ctxInfo->glGetProgramiv(shaderProgram, GL_LINK_STATUS, &success); >> (that is, success = GL_FALSE) >> >> Good enough, the error messages are retrieved, and printed in the log: >> Program link log: --From Vertex Shader: >> Error: Symbol lights defined with different precision in vertex and >> fragment shaders. >> Error: Symbol lights defined with different precision in vertex and >> fragment shaders. >> --From Fragment Shader: >> Error: Symbol lights defined with different precision in vertex and >> fragment shaders. >> Error: Symbol lights defined with different precision in vertex and >> fragment shaders. >> >> Does anyone have an idea about this? Or is 3D on Android just over >> ambitious? >> >> Thanks, >> >> - Johan >> > > From kirill.kirichenko at oracle.com Thu Dec 4 15:24:57 2014 From: kirill.kirichenko at oracle.com (Kirill Kirichenko) Date: Thu, 04 Dec 2014 18:24:57 +0300 Subject: [8u40] RFR: RT-39571: [Mac] AVFoundation player never sends FINISHED state at end of stream In-Reply-To: References: Message-ID: <54807CC9.4020302@oracle.com> Approved On 04.12.2014 01:44, David DeHaven wrote: > > Kevin, Kirill, please review the following change for 8u40 > > JIRA Issue: > https://javafx-jira.kenai.com/browse/RT-39571 > > Webrev: > http://cr.openjdk.java.net/~ddehaven/RT-39571/rt.0/ > > -DrD- > From anton.nashatyrev at oracle.com Thu Dec 4 16:20:25 2014 From: anton.nashatyrev at oracle.com (Anton Nashatyrev) Date: Thu, 04 Dec 2014 19:20:25 +0300 Subject: [8u40] Review request: RT-32986: JVM crash while debugging JavaScript in WebView browser Message-ID: <548089C9.70100@oracle.com> Hello Anton, Leonid, Kevin could you please review the following fix: Bug: https://javafx-jira.kenai.com/browse/RT-39562 Webrev: http://cr.openjdk.java.net/~anashaty/RT-39562/webrev.00/ Thanks! Anton. From elina.kleyman at oracle.com Thu Dec 4 20:18:53 2014 From: elina.kleyman at oracle.com (Elina Kleyman) Date: Thu, 4 Dec 2014 12:18:53 -0800 (PST) Subject: [8u40] Review request: RT-39344 - [Ensemble8] Need various improvements in Dialog sample Message-ID: <614a72f6-5615-4a18-8bf9-c67dfd66ebdb@default> Hi Morris and Kevin, Please review my change to Ensemble (Dialogs): JIRA: https://javafx-jira.kenai.com/browse/RT-39344 WEBREV: http://cr.openjdk.java.net/~ekleyman/RT-39344/webrev/ Thanks, Elina From morris.meyer at oracle.com Thu Dec 4 20:25:24 2014 From: morris.meyer at oracle.com (Morris Meyer) Date: Thu, 04 Dec 2014 15:25:24 -0500 Subject: [8u40] Review request: RT-39344 - [Ensemble8] Need various improvements in Dialog sample In-Reply-To: <614a72f6-5615-4a18-8bf9-c67dfd66ebdb@default> References: <614a72f6-5615-4a18-8bf9-c67dfd66ebdb@default> Message-ID: <5480C334.1080008@oracle.com> On 12/4/14, 3:18 PM, Elina Kleyman wrote: > > Hi Morris and Kevin, > > Please review my change to Ensemble (Dialogs): > > JIRA: https://javafx-jira.kenai.com/browse/RT-39344 > > WEBREV: http://cr.openjdk.java.net/~ekleyman/RT-39344/webrev/ > > > Thanks, > > Elina > Elina, Looks good. My notes: 1. ! import javafx.scene.control.*; I'd rather see all of the classes explicitly in a developer facing sample. 2. ! String type = (String) alert_types.getValue(); ! switch (type) { ! case "Information" : setAlertType(AlertType.INFORMATION); ! break; Would rather see: case "Information": setAlertType(AlertType.INFORMATION); break; Fine otherwise. --mm From chien.yang at oracle.com Thu Dec 4 21:06:44 2014 From: chien.yang at oracle.com (Chien Yang) Date: Thu, 04 Dec 2014 13:06:44 -0800 Subject: [8u60] Code Review Request For RT-39547: [ES2, 3D] Shader fails on embedded devices with no default precision defined Message-ID: <5480CCE4.8010804@oracle.com> Hi Dave, Jim, Kevin and Vadim, Please review and test the proposed fix if you have an embedded setup. JIRA: https://javafx-jira.kenai.com/browse/RT-39547 Webrev: http://cr.openjdk.java.net/~ckyang/RT-39547/webrev.00/ Thanks, - Chien From kevin.rushforth at oracle.com Thu Dec 4 21:13:27 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Thu, 04 Dec 2014 13:13:27 -0800 Subject: [8u40] Review request: RT-39344 - [Ensemble8] Need various improvements in Dialog sample In-Reply-To: <5480C334.1080008@oracle.com> References: <614a72f6-5615-4a18-8bf9-c67dfd66ebdb@default> <5480C334.1080008@oracle.com> Message-ID: <5480CE77.7040508@oracle.com> As a reminder, please post review comments in JIRA (and I agree with both of Morris' comments). Thanks. -- Kevin Morris Meyer wrote: > On 12/4/14, 3:18 PM, Elina Kleyman wrote: >> >> Hi Morris and Kevin, >> >> >> >> Please review my change to Ensemble (Dialogs): >> >> >> >> JIRA: https://javafx-jira.kenai.com/browse/RT-39344 >> >> WEBREV: http://cr.openjdk.java.net/~ekleyman/RT-39344/webrev/ >> >> >> >> >> Thanks, >> >> Elina >> >> >> > Elina, > > Looks good. My notes: > > 1. ! import javafx.scene.control.*; > > I'd rather see all of the classes explicitly in a developer facing > sample. > > 2. ! String type = (String) alert_types.getValue(); > ! switch (type) { > ! case "Information" : > setAlertType(AlertType.INFORMATION); > ! break; > > > Would rather see: > case "Information": > setAlertType(AlertType.INFORMATION); > break; > > Fine otherwise. > > --mm > > From johan at lodgon.com Fri Dec 5 08:08:13 2014 From: johan at lodgon.com (Johan Vos) Date: Fri, 5 Dec 2014 09:08:13 +0100 Subject: 8u40 rampdown schedule In-Reply-To: <54665B46.8000205@oracle.com> References: <54665B46.8000205@oracle.com> Message-ID: Hi Kevin, There is still some synchronisation work for the Android port. I have to create patches for all the changes I made, but I think it would be a bad idea to do that in a rush, and to try to push them to 8u40. Instead, I think we can release 8u40 for Android (it's a non-Oracle release anyhow), and try to integrate all patches upstream for 8u60. That means 8u40 for Android will be built from the bitbucket repository, but I think that is politically the right thing. For 8u60, we probably still build from the bitbucket repository, but hopefully with 0 code changes between that repository and OpenJFX. - Johan 2014-11-14 20:43 GMT+01:00 Kevin Rushforth : > This is an update on the OpenJFX 8u40 [1] rampdown schedule. These dates > derive from equivalent JDK 8u40 dates. As a reminder, the deadline for > getting changes into 8u-dev and having them show up in that week's build is > 1am Pacific on Monday [2]. > > Here are the key dates: > > 8u40 ZBB (Zero Bug Bounce) : Monday, Dec 1 > 8u40 M4 milestone build : Monday, Dec 8 > 8u40 RDP2 (rampdown phase 2) : Monday, Dec 15 > 8u-dev open up for post-8u40 changes: Tuesday, Dec 16. > 8u40 repo fork: Wednesday, Dec 17 (based off the build from Monday) > > All product bugs currently targeted to 8u40 are expected to be addressed, > either by fixing or deferring them, on or before our ZBB date of Dec 1. > > Between Dec 1 and Dec 15 we will be in "rampdown mode" for 8u40, during > which time all bugs except doc / test bugs will need additional approval to > go in. The focus will be on critical regressions. > > After Dec 15, only release-team approved bugs will be pulled into 8u40. > Generally this is only show-stoppers or other release critical bugs. > > Related to this, I will be opening up a 9-dev repo for FX 9 work sometime > in the next week or so. > > -- Kevin > > [1] https://wiki.openjdk.java.net/display/OpenJFX/8u40 > [2] https://wiki.openjdk.java.net/display/OpenJFX/Sanity+Testing > > From vadim.pakhnushev at oracle.com Fri Dec 5 14:33:38 2014 From: vadim.pakhnushev at oracle.com (Vadim Pakhnushev) Date: Fri, 05 Dec 2014 17:33:38 +0300 Subject: In(Sanity) Testing Mondays Message-ID: <5481C242.7010705@oracle.com> Reminder, Monday is our weekly sanity testing. You can find your testing assignment at: https://wiki.openjdk.java.net/display/OpenJFX/Sanity+Testing Also please remember that the repo will be locked from 1am PST until 1pm PST. We are under rampdown rules for M4 and RDP2 until Dec 15. Happy testing! Thanks, Vadim From james.graham at oracle.com Sat Dec 6 00:09:21 2014 From: james.graham at oracle.com (Jim Graham) Date: Fri, 05 Dec 2014 16:09:21 -0800 Subject: [8u40] review request: RT-39590 TableCell border lines are rendered incorrectly Message-ID: <54824931.60800@oracle.com> Jira: https://javafx-jira.kenai.com/browse/RT-39590 webrev: http://cr.openjdk.java.net/~flar/RT-39590/webrev.00/ I'm pretty sure these calls to setSmooth(false) are not intentional because the rectangles were used for rendering, not clipping, and they have always been rendered AA so far until Chien's recent fixes that made the smooth property operational for rendering. The last file I had a question as to the validity of the setSmooth(false) since I wasn't 100% sure how those nodes would be used (for rendering or clipping). I investigated and I'm 95% sure they are *not* used for clipping (where smooth-false would be interesting), but I'm not sure I understand all of the interactions in this code. I'm hoping Jonathan can clarify... ...jim From kevin.rushforth at oracle.com Sat Dec 6 00:25:28 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Fri, 05 Dec 2014 16:25:28 -0800 Subject: 8u40 rampdown schedule In-Reply-To: References: <54665B46.8000205@oracle.com> Message-ID: <54824CF8.1010308@oracle.com> Hi Johan, That sounds fine to me. Especially after this week we will be reluctant to make any changes in shared code other than for critical issues / regressions. -- Kevin Johan Vos wrote: > Hi Kevin, > > There is still some synchronisation work for the Android port. I have > to create patches for all the changes I made, but I think it would be > a bad idea to do that in a rush, and to try to push them to 8u40. > Instead, I think we can release 8u40 for Android (it's a non-Oracle > release anyhow), and try to integrate all patches upstream for 8u60. > > That means 8u40 for Android will be built from the bitbucket > repository, but I think that is politically the right thing. For 8u60, > we probably still build from the bitbucket repository, but hopefully > with 0 code changes between that repository and OpenJFX. > > - Johan > > 2014-11-14 20:43 GMT+01:00 Kevin Rushforth >: > > This is an update on the OpenJFX 8u40 [1] rampdown schedule. These > dates derive from equivalent JDK 8u40 dates. As a reminder, the > deadline for getting changes into 8u-dev and having them show up > in that week's build is 1am Pacific on Monday [2]. > > Here are the key dates: > > 8u40 ZBB (Zero Bug Bounce) : Monday, Dec 1 > 8u40 M4 milestone build : Monday, Dec 8 > 8u40 RDP2 (rampdown phase 2) : Monday, Dec 15 > 8u-dev open up for post-8u40 changes: Tuesday, Dec 16. > 8u40 repo fork: Wednesday, Dec 17 (based off the build from Monday) > > All product bugs currently targeted to 8u40 are expected to be > addressed, either by fixing or deferring them, on or before our > ZBB date of Dec 1. > > Between Dec 1 and Dec 15 we will be in "rampdown mode" for 8u40, > during which time all bugs except doc / test bugs will need > additional approval to go in. The focus will be on critical > regressions. > > After Dec 15, only release-team approved bugs will be pulled into > 8u40. Generally this is only show-stoppers or other release > critical bugs. > > Related to this, I will be opening up a 9-dev repo for FX 9 work > sometime in the next week or so. > > -- Kevin > > [1] https://wiki.openjdk.java.net/display/OpenJFX/8u40 > [2] https://wiki.openjdk.java.net/display/OpenJFX/Sanity+Testing > > From james.graham at oracle.com Sat Dec 6 02:39:51 2014 From: james.graham at oracle.com (Jim Graham) Date: Fri, 05 Dec 2014 18:39:51 -0800 Subject: [8u40] review request: RT-39602 Shape.setSmooth() can leak setting to any following Region nodes Message-ID: <54826C77.8030205@oracle.com> Jira: https://javafx-jira.kenai.com/browse/RT-39602 webrev: http://cr.openjdk.java.net/~flar/RT-39602/webrev.00/ This is the fix for the true underlying problem behind RT-39590. It's a simple application of "restore your state in the rendering methods" to the new AA flag in NGShape... ...jim From jeffhain at rocketmail.com Sun Dec 7 22:54:45 2014 From: jeffhain at rocketmail.com (Jeff Hain) Date: Sun, 7 Dec 2014 22:54:45 +0000 (UTC) Subject: Font derivation, plus ConcurrentModificationException on font load Message-ID: <771521316.6861953.1417992885118.JavaMail.yahoo@jws11130.mail.ir2.yahoo.com> Hello. Currently discovering JavaFX (using 1.8.0_25-b18),I saw that there is no way to "derive" a font, as could be done in AWT. In AWT, if you load "FreeMono.ttf", you get a non-bold font by default, but using font.deriveFont(font.BOLD, 1.0f) you can obtain a bold version of it. In JavaFX, there is no way to obtain a bold version of "FreeMono.ttf".The best you can do is to load "FreeMonoBold.ttf" and then callFont.load("FreeMono", FontWeight.BOLD, 1.0), but the resulting lookis quite different than AWT's bold FreeMono.ttf. ===> Are there plans to add font derivation in JavaFX, so that fonts of various???????? styles can be obtained from a same ".ttf" file, or will it stay as this? Now code to reproduce a bug : ### BEGIN import javafx.scene.text.Font; public class JavaFXCMEOnFontReload { ??? ??? public static void main(String[] args) { ??????? ??????? /* ???????? * java.runtime.version=1.8.0_25-b18 ???????? */ ??????? ??????? // download: http://www.fonts2u.com/download/free-monospaced.font ??????? final String urlStr = "file:src/bugz/FreeMono.ttf"; ??????? ??????? final String initialFontFamily = "AngsanaUPC"; ??????? System.out.println("font(" + initialFontFamily + ")..."); ??????? Font.font(initialFontFamily); ??????? ??????? for (int k=0;k<2;k++) { ??????????? System.out.println("loadFont(" + urlStr + ")..."); ??????????? final Font font = Font.loadFont(urlStr, 1.0); ??????????? if (font == null) { ??????????????? throw new AssertionError("could not load " + urlStr); ??????????? } ??????????? ??????????? System.out.println("font(" + font.getFamily() + ")..."); ??????????? Font.font(font.getFamily()); ??????? } ??? } } ### END Output:font(AngsanaUPC)... loadFont(file:src/bugz/FreeMono.ttf)... font(FreeMono)... loadFont(file:src/bugz/FreeMono.ttf)... Exception in thread "main" java.util.ConcurrentModificationException ??? at java.util.HashMap$HashIterator.nextNode(HashMap.java:1429) ??? at java.util.HashMap$KeyIterator.next(HashMap.java:1453) ??? at com.sun.javafx.font.PrismFontFactory.removeEmbeddedFont(PrismFontFactory.java:1550) ??? at com.sun.javafx.font.PrismFontFactory.loadEmbeddedFont(PrismFontFactory.java:1644) ??? at com.sun.javafx.font.PrismFontFactory.loadEmbeddedFont(PrismFontFactory.java:1525) ??? at com.sun.javafx.font.PrismFontLoader.loadFont(PrismFontLoader.java:99) ??? at javafx.scene.text.Font.loadFont(Font.java:400) ??? at bugz.JavaFXCMEOnFontReload.main(JavaFXCMEOnFontReload.java:18) -Jeff From philip.race at oracle.com Mon Dec 8 04:56:33 2014 From: philip.race at oracle.com (Phil Race) Date: Sun, 07 Dec 2014 20:56:33 -0800 Subject: Font derivation, plus ConcurrentModificationException on font load In-Reply-To: <771521316.6861953.1417992885118.JavaMail.yahoo@jws11130.mail.ir2.yahoo.com> References: <771521316.6861953.1417992885118.JavaMail.yahoo@jws11130.mail.ir2.yahoo.com> Message-ID: <54852F81.20003@oracle.com> There's probably an RFE or bug that mentions the omission of deriveFont Its the most direct way to say many things such there this font with all these properties - some of which I may not be aware of - and I just want it to be bigger/smaller/bolder but otherwise the same So deriveFont should be added, and JDK 9 would seem a reasonable target here. One thing to note is that 2D (actually AWT has no part in this), has built-in support for doing some things that the platforms may not support. FX delegates to the platform and if the platform can't oblique a font for you it won't happen even with a deriveFont API. This is "vice-versa" of course, so there are likely to be things you get from the platform you won't from cross-platform built-in support, notably platform-specific rendering. -phil. On 12/7/14 2:54 PM, Jeff Hain wrote: > Hello. > > > Currently discovering JavaFX (using 1.8.0_25-b18),I saw that there is no way to "derive" a font, as could be done in AWT. > In AWT, if you load "FreeMono.ttf", you get a non-bold font by default, but using > font.deriveFont(font.BOLD, 1.0f) you can obtain a bold version of it. > In JavaFX, there is no way to obtain a bold version of "FreeMono.ttf".The best you can do is to load "FreeMonoBold.ttf" and then callFont.load("FreeMono", FontWeight.BOLD, 1.0), but the resulting lookis quite different than AWT's bold FreeMono.ttf. > ===> Are there plans to add font derivation in JavaFX, so that fonts of various styles can be obtained from a same ".ttf" file, or will it stay as this? > > > Now code to reproduce a bug : > ### BEGIN > import javafx.scene.text.Font; > > public class JavaFXCMEOnFontReload { > > public static void main(String[] args) { > > /* > * java.runtime.version=1.8.0_25-b18 > */ > > // download: http://www.fonts2u.com/download/free-monospaced.font > final String urlStr = "file:src/bugz/FreeMono.ttf"; > > final String initialFontFamily = "AngsanaUPC"; > System.out.println("font(" + initialFontFamily + ")..."); > Font.font(initialFontFamily); > > for (int k=0;k<2;k++) { > System.out.println("loadFont(" + urlStr + ")..."); > final Font font = Font.loadFont(urlStr, 1.0); > if (font == null) { > throw new AssertionError("could not load " + urlStr); > } > > System.out.println("font(" + font.getFamily() + ")..."); > Font.font(font.getFamily()); > } > } > } > ### END > > Output:font(AngsanaUPC)... > loadFont(file:src/bugz/FreeMono.ttf)... > font(FreeMono)... > loadFont(file:src/bugz/FreeMono.ttf)... > Exception in thread "main" java.util.ConcurrentModificationException > at java.util.HashMap$HashIterator.nextNode(HashMap.java:1429) > at java.util.HashMap$KeyIterator.next(HashMap.java:1453) > at com.sun.javafx.font.PrismFontFactory.removeEmbeddedFont(PrismFontFactory.java:1550) > at com.sun.javafx.font.PrismFontFactory.loadEmbeddedFont(PrismFontFactory.java:1644) > at com.sun.javafx.font.PrismFontFactory.loadEmbeddedFont(PrismFontFactory.java:1525) > at com.sun.javafx.font.PrismFontLoader.loadFont(PrismFontLoader.java:99) > at javafx.scene.text.Font.loadFont(Font.java:400) > at bugz.JavaFXCMEOnFontReload.main(JavaFXCMEOnFontReload.java:18) > > > > -Jeff From philip.race at oracle.com Mon Dec 8 04:58:16 2014 From: philip.race at oracle.com (Phil Race) Date: Sun, 07 Dec 2014 20:58:16 -0800 Subject: Font derivation, plus ConcurrentModificationException on font load In-Reply-To: <54852F81.20003@oracle.com> References: <771521316.6861953.1417992885118.JavaMail.yahoo@jws11130.mail.ir2.yahoo.com> <54852F81.20003@oracle.com> Message-ID: <54852FE8.4020808@oracle.com> PS .. the ConcurrentModificationException is one we fixed for 8u40. You should test that out with a current EA build. -phil. On 12/7/14 8:56 PM, Phil Race wrote: > There's probably an RFE or bug that mentions the omission of deriveFont > Its the most direct way to say many things such there this font > with all these properties - some of which I may not be aware of - > and I just want it to be bigger/smaller/bolder but otherwise the same > So deriveFont should be added, and JDK 9 would seem a reasonable > target here. > One thing to note is that 2D (actually AWT has no part in this), > has built-in support for doing some things that the platforms > may not support. FX delegates to the platform and if the platform > can't oblique a font for you it won't happen even with a deriveFont API. > This is "vice-versa" of course, so there are likely to be things you get > from the platform you won't from cross-platform built-in support, > notably platform-specific rendering. > > -phil. > > > On 12/7/14 2:54 PM, Jeff Hain wrote: >> Hello. >> >> >> Currently discovering JavaFX (using 1.8.0_25-b18),I saw that there is >> no way to "derive" a font, as could be done in AWT. >> In AWT, if you load "FreeMono.ttf", you get a non-bold font by >> default, but using >> font.deriveFont(font.BOLD, 1.0f) you can obtain a bold version of it. >> In JavaFX, there is no way to obtain a bold version of >> "FreeMono.ttf".The best you can do is to load "FreeMonoBold.ttf" and >> then callFont.load("FreeMono", FontWeight.BOLD, 1.0), but the >> resulting lookis quite different than AWT's bold FreeMono.ttf. >> ===> Are there plans to add font derivation in JavaFX, so that fonts >> of various styles can be obtained from a same ".ttf" file, or >> will it stay as this? >> >> >> Now code to reproduce a bug : >> ### BEGIN >> import javafx.scene.text.Font; >> >> public class JavaFXCMEOnFontReload { >> public static void main(String[] args) { >> /* >> * java.runtime.version=1.8.0_25-b18 >> */ >> // download: >> http://www.fonts2u.com/download/free-monospaced.font >> final String urlStr = "file:src/bugz/FreeMono.ttf"; >> final String initialFontFamily = "AngsanaUPC"; >> System.out.println("font(" + initialFontFamily + ")..."); >> Font.font(initialFontFamily); >> for (int k=0;k<2;k++) { >> System.out.println("loadFont(" + urlStr + ")..."); >> final Font font = Font.loadFont(urlStr, 1.0); >> if (font == null) { >> throw new AssertionError("could not load " + urlStr); >> } >> System.out.println("font(" + >> font.getFamily() + ")..."); >> Font.font(font.getFamily()); >> } >> } >> } >> ### END >> >> Output:font(AngsanaUPC)... >> loadFont(file:src/bugz/FreeMono.ttf)... >> font(FreeMono)... >> loadFont(file:src/bugz/FreeMono.ttf)... >> Exception in thread "main" java.util.ConcurrentModificationException >> at java.util.HashMap$HashIterator.nextNode(HashMap.java:1429) >> at java.util.HashMap$KeyIterator.next(HashMap.java:1453) >> at >> com.sun.javafx.font.PrismFontFactory.removeEmbeddedFont(PrismFontFactory.java:1550) >> at >> com.sun.javafx.font.PrismFontFactory.loadEmbeddedFont(PrismFontFactory.java:1644) >> at >> com.sun.javafx.font.PrismFontFactory.loadEmbeddedFont(PrismFontFactory.java:1525) >> at >> com.sun.javafx.font.PrismFontLoader.loadFont(PrismFontLoader.java:99) >> at javafx.scene.text.Font.loadFont(Font.java:400) >> at bugz.JavaFXCMEOnFontReload.main(JavaFXCMEOnFontReload.java:18) >> >> >> >> -Jeff > From adanecito at yahoo.com Mon Dec 8 18:06:41 2014 From: adanecito at yahoo.com (Tony Anecito) Date: Mon, 8 Dec 2014 18:06:41 +0000 (UTC) Subject: 8U40 b16 support for command line arguments for JavaFX Deploy... Message-ID: <2121132835.4164320.1418062001709.JavaMail.yahoo@jws100122.mail.ne1.yahoo.com> Hi Danno, Does 8u40 b16 support DeployFX java command line arguments? I brought this up some time ago and you said it would be in 8u40.Also, what ant tags would I use for it? Thanks,-Tony From danno.ferrin at oracle.com Mon Dec 8 19:17:14 2014 From: danno.ferrin at oracle.com (Danno Ferrin) Date: Mon, 8 Dec 2014 12:17:14 -0700 Subject: 8U40 b16 support for command line arguments for JavaFX Deploy... In-Reply-To: <2121132835.4164320.1418062001709.JavaMail.yahoo@jws100122.mail.ne1.yahoo.com> References: <2121132835.4164320.1418062001709.JavaMail.yahoo@jws100122.mail.ne1.yahoo.com> Message-ID: Not sure what you mean by deployfx. My google-fu comes up with devops stugg. We support default command line arguments in 8u40. i.e. if you launch just from the icon launcher we can supply some command line arguments. For ant it is the element underneath the datatype. for bundler arguments, it is the "arguments" argument which is a List, and if a plain old string is passed in it is whitespace delimited (with no escapes). On Dec 8, 2014, at 11:06 AM, Tony Anecito wrote: > Hi Danno, > > Does 8u40 b16 support DeployFX java command line arguments? I brought this up some time ago and you said it would be in 8u40. > Also, what ant tags would I use for it? > > Thanks, > -Tony From kevin.rushforth at oracle.com Mon Dec 8 21:09:38 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Mon, 08 Dec 2014 13:09:38 -0800 Subject: 8u-dev unlocked -- RDP2 rampdown in effect Message-ID: <54861392.5060105@oracle.com> The 8u-dev repo is unlocked following this week's testing. PLEASE NOTE: The 8u40 RDP2 rampdown is in effect this week (the usual exceptions apply for test, doc, and IDE changes). See https://wiki.openjdk.java.net/display/OpenJFX/Sanity+Testing for weekly freeze and milestone rampdown rules. -- Kevin From jeffhain at rocketmail.com Mon Dec 8 22:21:06 2014 From: jeffhain at rocketmail.com (Jeff Hain) Date: Mon, 8 Dec 2014 22:21:06 +0000 (UTC) Subject: Font derivation In-Reply-To: <54852F81.20003@oracle.com> References: <54852F81.20003@oracle.com> Message-ID: <235972376.7427838.1418077266377.JavaMail.yahoo@jws11136.mail.ir2.yahoo.com> >There's probably an RFE or bug that mentions the omission of deriveFont >Its the most direct way to say many things Thanks. Good to know for planning stable abstract APIs. -Jeff From philip.race at oracle.com Mon Dec 8 22:36:02 2014 From: philip.race at oracle.com (Phil Race) Date: Mon, 08 Dec 2014 14:36:02 -0800 Subject: Font derivation In-Reply-To: <235972376.7427838.1418077266377.JavaMail.yahoo@jws11136.mail.ir2.yahoo.com> References: <54852F81.20003@oracle.com> <235972376.7427838.1418077266377.JavaMail.yahoo@jws11136.mail.ir2.yahoo.com> Message-ID: <548627D2.6090301@oracle.com> https://javafx-jira.kenai.com/browse/RT-6808 mentions that we could add a deriveFont. This is in the context of a loadFont context but it is somewhat buried in the larger subject of that bug. So if anyone (external) would like to file an RFE directly requesting it along with justification, that might be better than me filing one. -phil. On 12/08/2014 02:21 PM, Jeff Hain wrote: > >There's probably an RFE or bug that mentions the omission of deriveFont > >Its the most direct way to say many things > > Thanks. Good to know for planning stable abstract APIs. > > -Jeff > From lehmann at media-interactive.de Tue Dec 9 16:31:59 2014 From: lehmann at media-interactive.de (Werner Lehmann) Date: Tue, 9 Dec 2014 17:31:59 +0100 Subject: High resolution printing Message-ID: <548723FF.4020204@media-interactive.de> Hi, I'd like to print a canvas node with native printer resolution. What is the best way to achieve that? I suppose I can't just set the canvas width and height to the printer page size equivalent because at 600 DPI this would mean about 5000x7000px. And as far as I know a canvas this size can be a problem. Aand there are printers with even higher resolutions. Should I print to a 72 DPI canvas instead, e.g. 600x850px? My content is not bigger than this anyway, talking about Jasperreports rendered at 72 DPI to an AWT graphics surface. Still I'd like to make use of higher print resolution to get crisp text and to avoid pixel upscaling. Looks as if it was intended to provide a "printer canvas" but I guess such API is not available. https://wiki.openjdk.java.net/display/OpenJFX/Printing+for+JavaFX Alternatively I could skip the FX printing API altogether and use AWT "graphics printing". Maybe it is the best option this content. Any recommendations? Rgds Werner From kloverde at gmail.com Tue Dec 9 18:12:08 2014 From: kloverde at gmail.com (Kevin Loverde) Date: Tue, 9 Dec 2014 13:12:08 -0500 Subject: High resolution printing In-Reply-To: <548723FF.4020204@media-interactive.de> References: <548723FF.4020204@media-interactive.de> Message-ID: Doesn't Jasperreports have a PDF rendering method? That might be a simpler route. On Tue, Dec 9, 2014 at 11:31 AM, Werner Lehmann < lehmann at media-interactive.de> wrote: > Hi, > > I'd like to print a canvas node with native printer resolution. What is > the best way to achieve that? I suppose I can't just set the canvas width > and height to the printer page size equivalent because at 600 DPI this > would mean about 5000x7000px. And as far as I know a canvas this size can > be a problem. Aand there are printers with even higher resolutions. > > Should I print to a 72 DPI canvas instead, e.g. 600x850px? My content is > not bigger than this anyway, talking about Jasperreports rendered at 72 DPI > to an AWT graphics surface. Still I'd like to make use of higher print > resolution to get crisp text and to avoid pixel upscaling. > > Looks as if it was intended to provide a "printer canvas" but I guess such > API is not available. > https://wiki.openjdk.java.net/display/OpenJFX/Printing+for+JavaFX > > Alternatively I could skip the FX printing API altogether and use AWT > "graphics printing". Maybe it is the best option this content. > > Any recommendations? > > Rgds > Werner > From kloverde at gmail.com Tue Dec 9 18:29:59 2014 From: kloverde at gmail.com (Kevin Loverde) Date: Tue, 9 Dec 2014 13:29:59 -0500 Subject: High resolution printing In-Reply-To: References: <548723FF.4020204@media-interactive.de> Message-ID: Is it not possible to just send the Jasper report to the printer, via the built in printing API that comes with Jasper? On Tue, Dec 9, 2014 at 1:12 PM, Kevin Loverde wrote: > Doesn't Jasperreports have a PDF rendering method? That might be a simpler > route. > > On Tue, Dec 9, 2014 at 11:31 AM, Werner Lehmann < > lehmann at media-interactive.de> wrote: > >> Hi, >> >> I'd like to print a canvas node with native printer resolution. What is >> the best way to achieve that? I suppose I can't just set the canvas width >> and height to the printer page size equivalent because at 600 DPI this >> would mean about 5000x7000px. And as far as I know a canvas this size can >> be a problem. Aand there are printers with even higher resolutions. >> >> Should I print to a 72 DPI canvas instead, e.g. 600x850px? My content is >> not bigger than this anyway, talking about Jasperreports rendered at 72 DPI >> to an AWT graphics surface. Still I'd like to make use of higher print >> resolution to get crisp text and to avoid pixel upscaling. >> >> Looks as if it was intended to provide a "printer canvas" but I guess >> such API is not available. >> https://wiki.openjdk.java.net/display/OpenJFX/Printing+for+JavaFX >> >> Alternatively I could skip the FX printing API altogether and use AWT >> "graphics printing". Maybe it is the best option this content. >> >> Any recommendations? >> >> Rgds >> Werner >> > > From lehmann at media-interactive.de Tue Dec 9 18:31:32 2014 From: lehmann at media-interactive.de (Werner Lehmann) Date: Tue, 9 Dec 2014 19:31:32 +0100 Subject: High resolution printing In-Reply-To: References: <548723FF.4020204@media-interactive.de> Message-ID: <54874004.6090106@media-interactive.de> Hi Kevin, yes it has, and my users can save their reports to a PDF file, open it, and print it. I just felt there should be a more direct way to print a report. Anyway, I decided to use Jasper's built-in print-exporter which works with Java 1.4 AWT printing. This means I have a working solution which unfortunately does not use the FX printing API. As a consequence, print dialogs look a bit dated and are not modal on my stage. However, even with FX printing dialogs would not be modal (RT-27983), only to be resolved with Java 9... Werner On 09.12.2014 19:12, Kevin Loverde wrote: > Doesn't Jasperreports have a PDF rendering method? That might be a > simpler route. From David.Hill at Oracle.com Tue Dec 9 22:15:48 2014 From: David.Hill at Oracle.com (David Hill) Date: Tue, 09 Dec 2014 17:15:48 -0500 Subject: review: changing the buildSrc/arm*.gradles Message-ID: <54877494.1080305@Oracle.com> Kevin, Jira: https://javafx-jira.kenai.com/browse/RT-39584 Webrev in: http://cr.openjdk.java.net/~ddhill/RT-39584.2/ In a nutshell - we are running into differences in pkg-config instances, and the easiest solution is to put the results from the operation into the gradle files, rather than trying to run the command each build. -- David Hill Java Embedded Development "A man's feet should be planted in his country, but his eyes should survey the world." -- George Santayana (1863 - 1952) From jeffhain at rocketmail.com Tue Dec 9 23:31:29 2014 From: jeffhain at rocketmail.com (Jeff Hain) Date: Tue, 9 Dec 2014 23:31:29 +0000 (UTC) Subject: Font derivation In-Reply-To: <548627D2.6090301@oracle.com> References: <548627D2.6090301@oracle.com> Message-ID: <265412764.7988005.1418167889676.JavaMail.yahoo@jws11103.mail.ir2.yahoo.com> >https://javafx-jira.kenai.com/browse/RT-6808 Created a JIRA account to be able to see this, but I still can't (permission violation).Meanwhile, I saw this one, which seems to be what I ask for :- https://javafx-jira.kenai.com/browse/RT-37081 (Add withXxx semantics to Font to create derived versions)And this one, which I had in mind too :- https://javafx-jira.kenai.com/browse/RT-8060 (Need font/text measurement API) An ambiguous thing on this derivation topic is that there is a notion of style intrinsic to fonts,like in "FreeMono.ttf is not bold, and FreeMono-Bold.ttf is bold", and also a notionof style extrinsic to fonts, like when you use a font loaded from a ".ttf" file witha custom weight, and these two notions are often mixed-up. >So if anyone (external) would like to file an RFE directly requesting it>along with justification, that might be better than me filing one. Better than a justification based on a particular use case, I think we couldjust consider that it is a basic feature that should "of course" be implemented ;)(especially not to introduce a "regression" for ex-AWT users, when moving to JavaFX). But in case it could help, here is my use case :I'm working on set of basic interfaces on top of which I could build basic UIs(I don't need FX things), the same way that most of my scheduling code dependson a few interfaces like Executor, and not directly on ThreadPoolExecutor orForkJoinPool or else.I'm not only doing it not to tie high level UI code to a particular low-to-high levelUI framework, but also because I have some particular needs that AWT/Swing/JavaFXdon't support out of the box, and would make hard to implement.On the low-level side of all this, i.e. where these interfaces get implemented,most things are working well so far (Graphics2D/GraphicsContext for drawing,EDT/AppThread as UI thread, etc.), I'm just having this little and unexpectedtrouble with JavaFX fonts. -Jeff From philip.race at oracle.com Tue Dec 9 23:39:35 2014 From: philip.race at oracle.com (Phil Race) Date: Tue, 09 Dec 2014 15:39:35 -0800 Subject: Font derivation In-Reply-To: <265412764.7988005.1418167889676.JavaMail.yahoo@jws11103.mail.ir2.yahoo.com> References: <548627D2.6090301@oracle.com> <265412764.7988005.1418167889676.JavaMail.yahoo@jws11103.mail.ir2.yahoo.com> Message-ID: <54878837.8090807@oracle.com> I missed that one. It was assigned a little oddly to someone not really working on fonts so I've grabbed it and will address under that ID. -phil. On 12/9/2014 3:31 PM, Jeff Hain wrote: > > >https://javafx-jira.kenai.com/browse/RT-6808 > > Created a JIRA account to be able to see this, but I still can't > (permission violation). > Meanwhile, I saw this one, which seems to be what I ask for : > - https://javafx-jira.kenai.com/browse/RT-37081 (Add withXxx semantics > to Font to create derived versions) > And this one, which I had in mind too : > - https://javafx-jira.kenai.com/browse/RT-8060 (Need font/text > measurement API) > > > An ambiguous thing on this derivation topic is that there is a notion > of style intrinsic to fonts, > like in "FreeMono.ttf is not bold, and FreeMono-Bold.ttf is bold", and > also a notion > of style extrinsic to fonts, like when you use a font loaded from a > ".ttf" file with > a custom weight, and these two notions are often mixed-up. > > > > >So if anyone (external) would like to file an RFE directly requesting it > >along with justification, that might be better than me filing one. > > Better than a justification based on a particular use case, I think we > could > just consider that it is a basic feature that should "of course" be > implemented ;) > (especially not to introduce a "regression" for ex-AWT users, when > moving to JavaFX). > > But in case it could help, here is my use case : > I'm working on set of basic interfaces on top of which I could build > basic UIs > (I don't need FX things), the same way that most of my scheduling code > depends > on a few interfaces like Executor, and not directly on > ThreadPoolExecutor or > ForkJoinPool or else. > I'm not only doing it not to tie high level UI code to a particular > low-to-high level > UI framework, but also because I have some particular needs that > AWT/Swing/JavaFX > don't support out of the box, and would make hard to implement. > On the low-level side of all this, i.e. where these interfaces get > implemented, > most things are working well so far (Graphics2D/GraphicsContext for > drawing, > EDT/AppThread as UI thread, etc.), I'm just having this little and > unexpected > trouble with JavaFX fonts. > > > -Jeff > From pj0585 at gmail.com Wed Dec 10 13:05:54 2014 From: pj0585 at gmail.com (Prasant J) Date: Wed, 10 Dec 2014 18:35:54 +0530 Subject: JavaFX embedded (graphics example / performance test) Message-ID: Hi, Is there any JavaFX test program that can be used for testing/comparing graphics performance? Regards, Pj From danno.ferrin at oracle.com Wed Dec 10 17:01:48 2014 From: danno.ferrin at oracle.com (Danno Ferrin) Date: Wed, 10 Dec 2014 10:01:48 -0700 Subject: Review Request Message-ID: <23391F70-1772-4C5A-81A3-C39A2C0F6D9C@oracle.com> Kevin, please review: Jira: https://javafx-jira.kenai.com/browse/RT-39634 Webrev: http://cr.openjdk.java.net/~shemnon/RT-39634/webrev.01/ Even though the impact is strictly cosmetic, I consider this critical for 8u40. The code added is seen elsewhere in other bundlers and is being replicated at an earlier location. --Danno From felix.bembrick at gmail.com Wed Dec 10 20:26:22 2014 From: felix.bembrick at gmail.com (Felix Bembrick) Date: Thu, 11 Dec 2014 07:26:22 +1100 Subject: JavaFX embedded (graphics example / performance test) In-Reply-To: References: Message-ID: Hi Prasant, I have been working on just such a beast for much longer than I had intended (family commitments, illness, wedding to organise, you know) which I call *FXMark*. I had originally intended to release *FXMark* earlier this year but in reality it won't be out there until after my wedding in January. However, it will be a much more sophisticated animal and will really highlight what can be done with animations of nodes in the scenegraph along with permitting observation of the effects of applying various effects and caching strategies. I am sorry I cannot give you an official release date but expect it sometime in the New Year. You can read a little but about it and see more about me at my blog http://justmy2bits.com Cheers, Felix On 11 December 2014 at 00:05, Prasant J wrote: > Hi, > > Is there any JavaFX test program that can be used for > testing/comparing graphics performance? > > > Regards, Pj > From adanecito at yahoo.com Wed Dec 10 21:39:20 2014 From: adanecito at yahoo.com (Tony Anecito) Date: Wed, 10 Dec 2014 21:39:20 +0000 (UTC) Subject: 8U40 b16 support for command line arguments for JavaFX Deploy... In-Reply-To: References: Message-ID: <1194972017.4492630.1418247560676.JavaMail.yahoo@jws100107.mail.ne1.yahoo.com> FYI the ant arguments works fine now in 8u40. Thanks,-Tony On Monday, December 8, 2014 1:30 PM, Tony Anecito wrote: Thanks sorry I?should have said fx:deploy.? On Monday, December 8, 2014 12:17 PM, Danno Ferrin wrote: Not sure what you mean by deployfx. ? My google-fu comes up with devops stugg. We support default command line arguments in 8u40. ?i.e. if you launch just from the icon launcher we can supply some command line arguments. For ant it is the element underneath the datatype. for bundler arguments, it is the "arguments" argument which is a List, and if a plain old string is passed in it is whitespace delimited (with no escapes). On Dec 8, 2014, at 11:06 AM, Tony Anecito wrote: Hi Danno, Does 8u40 b16 support DeployFX java command line arguments? I brought this up some time ago and you said it would be in 8u40.Also, what ant tags would I use for it? Thanks,-Tony From cnewland at chrisnewland.com Wed Dec 10 22:05:23 2014 From: cnewland at chrisnewland.com (Chris Newland) Date: Wed, 10 Dec 2014 22:05:23 -0000 Subject: Window decoration bug on Yosemite? Message-ID: <3433f2638ca63e4ed3339791b18102f9.squirrel@excalibur.xssl.net> Hi, I think there might be a bug with the window decoration on OSX Yosemite whenever the StageStyle is set to UTILITY: initStyle(StageStyle.UTILITY); The red close icon appears twice. Once on the left as expected but again in the right most position where the green maximise icon should be. Screenshot here: https://github.com/AdoptOpenJDK/jitwatch/issues/135 Bug occurs in: Oracle 1.7.0_72 Oracle 1.8.0_25 Oracle 1.8.0_40ea OpenJDK 1.9.0 I've had a look around in the OpenJFX source but haven't been able to track down the cause yet. Kind regards, Chris @chriswhocodes From morris.meyer at oracle.com Wed Dec 10 22:15:17 2014 From: morris.meyer at oracle.com (Morris Meyer) Date: Wed, 10 Dec 2014 17:15:17 -0500 Subject: Window decoration bug on Yosemite? In-Reply-To: <3433f2638ca63e4ed3339791b18102f9.squirrel@excalibur.xssl.net> References: <3433f2638ca63e4ed3339791b18102f9.squirrel@excalibur.xssl.net> Message-ID: <5488C5F5.9010105@oracle.com> Chris, I can verify that this is indeed a bug on Yosemite. --morris On 12/10/14, 5:05 PM, Chris Newland wrote: > Hi, > > I think there might be a bug with the window decoration on OSX Yosemite > whenever the StageStyle is set to UTILITY: > > initStyle(StageStyle.UTILITY); > > The red close icon appears twice. Once on the left as expected but again > in the right most position where the green maximise icon should be. > > Screenshot here: https://github.com/AdoptOpenJDK/jitwatch/issues/135 > > Bug occurs in: > > Oracle 1.7.0_72 > Oracle 1.8.0_25 > Oracle 1.8.0_40ea > OpenJDK 1.9.0 > > I've had a look around in the OpenJFX source but haven't been able to > track down the cause yet. > > Kind regards, > > Chris > @chriswhocodes > > > From chien.yang at oracle.com Thu Dec 11 07:19:34 2014 From: chien.yang at oracle.com (Chien Yang) Date: Wed, 10 Dec 2014 23:19:34 -0800 Subject: [8u60] Javadoc Review Request: RT-36829 - [Javadoc] scene AA, depth buffer / test should say that they are for 3D Message-ID: <54894586.1010803@oracle.com> Hi Kevin, Please review the proposed javadoc: JIRA: https://javafx-jira.kenai.com/browse/RT-36829 Webrev: http://cr.openjdk.java.net/~ckyang/RT-36829/webrev.00/ Thanks, - Chien From cnewland at chrisnewland.com Thu Dec 11 08:24:22 2014 From: cnewland at chrisnewland.com (Chris Newland) Date: Thu, 11 Dec 2014 08:24:22 -0000 Subject: JavaFX embedded (graphics example / performance test) In-Reply-To: References: Message-ID: <2fbc026abed1661f8cceb2ab2e3bebd2.squirrel@excalibur.xssl.net> Hi Felix, This looks like a really interesting project. I'm starting to investigate JavaFX performance from a JIT compilation viewpoint to make sure there are no areas in the codebase that are defeating the HotSpot JIT compilers. I've written a couple of Canvas-based "demoscene" style animations but not tried anything with Nodes yet. Will definitely be keeping an eye on FXMark. Cheers, Chris @chriswhocodes On Wed, December 10, 2014 20:26, Felix Bembrick wrote: > Hi Prasant, > > > I have been working on just such a beast for much longer than I had > intended (family commitments, illness, wedding to organise, you know) > which I call *FXMark*. > > > I had originally intended to release *FXMark* earlier this year but in > reality it won't be out there until after my wedding in January. However, > it will be a much more sophisticated animal and will really highlight > what can be done with animations of nodes in the scenegraph along with > permitting observation of the effects of applying various effects and > caching strategies. > > I am sorry I cannot give you an official release date but expect it > sometime in the New Year. > > You can read a little but about it and see more about me at my blog > http://justmy2bits.com > > > Cheers, > > > Felix > > > > On 11 December 2014 at 00:05, Prasant J wrote: > > >> Hi, >> >> >> Is there any JavaFX test program that can be used for >> testing/comparing graphics performance? >> >> >> Regards, Pj >> >> > From pj0585 at gmail.com Thu Dec 11 08:30:28 2014 From: pj0585 at gmail.com (Prasant J) Date: Thu, 11 Dec 2014 14:00:28 +0530 Subject: JavaFX embedded (graphics example / performance test) In-Reply-To: <2fbc026abed1661f8cceb2ab2e3bebd2.squirrel@excalibur.xssl.net> References: <2fbc026abed1661f8cceb2ab2e3bebd2.squirrel@excalibur.xssl.net> Message-ID: Hi Felix, I'm looking out for the beast that you are talking about. I will be anxiously waiting for you to release FXMARK jar so that I can try it on my system. Until then I will be on the lookout for something else. Regards, Pj On Thu, Dec 11, 2014 at 1:54 PM, Chris Newland wrote: > Hi Felix, > > This looks like a really interesting project. > > I'm starting to investigate JavaFX performance from a JIT compilation > viewpoint to make sure there are no areas in the codebase that are > defeating the HotSpot JIT compilers. > > I've written a couple of Canvas-based "demoscene" style animations but not > tried anything with Nodes yet. > > Will definitely be keeping an eye on FXMark. > > Cheers, > > Chris > @chriswhocodes > > > > > > On Wed, December 10, 2014 20:26, Felix Bembrick wrote: >> Hi Prasant, >> >> >> I have been working on just such a beast for much longer than I had >> intended (family commitments, illness, wedding to organise, you know) >> which I call *FXMark*. >> >> >> I had originally intended to release *FXMark* earlier this year but in >> reality it won't be out there until after my wedding in January. However, >> it will be a much more sophisticated animal and will really highlight >> what can be done with animations of nodes in the scenegraph along with >> permitting observation of the effects of applying various effects and >> caching strategies. >> >> I am sorry I cannot give you an official release date but expect it >> sometime in the New Year. >> >> You can read a little but about it and see more about me at my blog >> http://justmy2bits.com >> >> >> Cheers, >> >> >> Felix >> >> >> >> On 11 December 2014 at 00:05, Prasant J wrote: >> >> >>> Hi, >>> >>> >>> Is there any JavaFX test program that can be used for >>> testing/comparing graphics performance? >>> >>> >>> Regards, Pj >>> >>> >> > > From kevin.rushforth at oracle.com Thu Dec 11 22:28:14 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Thu, 11 Dec 2014 14:28:14 -0800 Subject: [8u40] review request: RT-39020: Update copyright header for files modified in 2014 Message-ID: <548A1A7E.1060806@oracle.com> Amy or Dave, Please review (just a sanity check is needed) the following copyright cleanup webrev: https://javafx-jira.kenai.com/browse/RT-39020 http://cr.openjdk.java.net/~kcr/RT-39020/webrev.00/ Thanks. -- Kevin From peter.penzov at gmail.com Fri Dec 12 08:33:32 2014 From: peter.penzov at gmail.com (Peter Penzov) Date: Fri, 12 Dec 2014 10:33:32 +0200 Subject: Spinner control value Message-ID: Hi All, I'm using Spinner from 8u40b17. SpinnerValueFactory svf = new SpinnerValueFactory.IntegerSpinnerValueFactory(0, 100); Spinner sp = new Spinner(); sp.setValueFactory(svf); sp.setEditable(true); sp.setPrefWidth(80); I noticed that when I enter some value from keyboard and I increase the value the expected number is not the next. Instead of this it's the next default value. How I can fix this? Fox example if I have 5 as default value and I enter 34. When I press the upper arrow I get 6. BR, Peter From jonathan.giles at oracle.com Fri Dec 12 09:00:07 2014 From: jonathan.giles at oracle.com (Jonathan Giles) Date: Fri, 12 Dec 2014 22:00:07 +1300 Subject: Spinner control value In-Reply-To: References: Message-ID: <5163F1F4-836E-4191-B5B5-22B3F0524596@oracle.com> Please file a bug in our Jira and we can take a look. Also, please clarify if after entering 34 you are using the enter key to commit the value or not. -- Jonathan Sent from a touch device. Please excuse my brevity. On 12 December 2014 21:33:32 GMT+13:00, Peter Penzov wrote: >Hi All, > > I'm using Spinner from 8u40b17. > >SpinnerValueFactory svf = new >SpinnerValueFactory.IntegerSpinnerValueFactory(0, 100); > > Spinner sp = new Spinner(); > sp.setValueFactory(svf); > sp.setEditable(true); > sp.setPrefWidth(80); > >I noticed that when I enter some value from keyboard and I increase the >value the expected number is not the next. Instead of this it's the >next >default value. How I can fix this? > >Fox example if I have 5 as default value and I enter 34. When I press >the >upper arrow I get 6. > > >BR, > >Peter From peter.penzov at gmail.com Fri Dec 12 10:04:36 2014 From: peter.penzov at gmail.com (Peter Penzov) Date: Fri, 12 Dec 2014 12:04:36 +0200 Subject: Spinner control value In-Reply-To: <5163F1F4-836E-4191-B5B5-22B3F0524596@oracle.com> References: <5163F1F4-836E-4191-B5B5-22B3F0524596@oracle.com> Message-ID: Done https://javafx-jira.kenai.com/browse/RT-39655 No I don't press the Enter key. The value is not auto commuted. BR On Fri, Dec 12, 2014 at 11:00 AM, Jonathan Giles wrote: > > Please file a bug in our Jira and we can take a look. Also, please clarify > if after entering 34 you are using the enter key to commit the value or not. > > -- Jonathan > Sent from a touch device. Please excuse my brevity. > > > On 12 December 2014 21:33:32 GMT+13:00, Peter Penzov < > peter.penzov at gmail.com> wrote: >> >> Hi All, >> >> I'm using Spinner from 8u40b17. >> >> SpinnerValueFactory svf = new >> SpinnerValueFactory.IntegerSpinnerValueFactory(0, 100); >> >> Spinner sp = new Spinner(); >> sp.setValueFactory(svf); >> sp.setEditable(true); >> sp.setPrefWidth(80); >> >> I noticed that when I enter some value from keyboard and I increase the >> value the expected number is not the next. Instead of this it's the next >> default value. How I can fix this? >> >> Fox example if I have 5 as default value and I enter 34. When I press the >> upper arrow I get 6. >> >> >> BR, >> >> Peter >> >> From vadim.pakhnushev at oracle.com Fri Dec 12 15:05:27 2014 From: vadim.pakhnushev at oracle.com (Vadim Pakhnushev) Date: Fri, 12 Dec 2014 18:05:27 +0300 Subject: In(Sanity) Testing Mondays Message-ID: <548B0437.4030103@oracle.com> Reminder, Monday is our weekly sanity testing. You can find your testing assignment at: https://wiki.openjdk.java.net/display/OpenJFX/Sanity+Testing Also please remember that the repo will be locked from 1am PST until 1pm PST. Happy testing! Thanks, Vadim From kevin.rushforth at oracle.com Fri Dec 12 16:35:13 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Fri, 12 Dec 2014 08:35:13 -0800 Subject: In(Sanity) Testing Mondays In-Reply-To: <548B0437.4030103@oracle.com> References: <548B0437.4030103@oracle.com> Message-ID: <548B1941.9060202@oracle.com> Thanks, Vadim. As a final reminder, we are still in rampdown mode for 8u40 until the repo reopens at 1pm PST on Monday. It's OK to push javadoc and test changes (and IDE changes) without approval, but any build or code changes need a +1 from David or me, although we are not expecting any more code changes for 8u40. -- Kevin Vadim Pakhnushev wrote: > Reminder, Monday is our weekly sanity testing. > > You can find your testing assignment at: > > https://wiki.openjdk.java.net/display/OpenJFX/Sanity+Testing > > Also please remember that the repo will be locked from 1am PST until > 1pm PST. > > Happy testing! > > Thanks, > Vadim From peter.penzov at gmail.com Sun Dec 14 15:07:58 2014 From: peter.penzov at gmail.com (Peter Penzov) Date: Sun, 14 Dec 2014 17:07:58 +0200 Subject: JavaFX application for different resolutions Message-ID: I'm using Simple JavaFX application on computers with different solution. But on computers with small resolution the appearance is not good. Is there any way to ajust the size of the application according to the screen size? BR, Peter From tbee at tbee.org Sun Dec 14 16:18:19 2014 From: tbee at tbee.org (Tom Eugelink) Date: Sun, 14 Dec 2014 17:18:19 +0100 Subject: JavaFX application for different resolutions In-Reply-To: References: Message-ID: <548DB84B.4010003@tbee.org> Just like with any other application, HTML or Android for example, you can rearrange the layout depending on the screensize and use different icons with less detail, this is called responsive design. HTML offers through CSS support for automatically applying different styles based on the available space (http://en.wikipedia.org/wiki/Responsive_web_design). Hendrik Ebbers tried to do something similar with ResponsiveFX (http://www.guigarage.com/2014/11/responsive-design-javafx/). In the end you still have to engineer your application so it can be responsive, supporting tools and techniques or not. Tom On 14-12-2014 16:07, Peter Penzov wrote: > I'm using Simple JavaFX application on computers with different solution. > But on computers with small resolution the appearance is not good. Is there > any way to ajust the size of the application according to the screen size? > > BR, > Peter From lehmann at media-interactive.de Mon Dec 15 12:25:45 2014 From: lehmann at media-interactive.de (Werner Lehmann) Date: Mon, 15 Dec 2014 13:25:45 +0100 Subject: Select-binding still warns about null steps Message-ID: <548ED349.5090202@media-interactive.de> Hi, it seems as if bindings created with Bindings.selectXXX still do not support null steps fully. With RT-35957 the log level of NPEs caused by null steps was reduced to FINE. Howver, in 8u25 there is a still a warning logged for a perfectly normal operation: > Dez 15, 2014 12:59:44 PM com.sun.javafx.binding.SelectBinding$SelectBindingHelper getObservableValue > WARNING: Exception while evaluating select-binding [window] Example code: > @Override > public void start(Stage primaryStage) throws Exception > { > ObjectBinding binding = Bindings.select(primaryStage.sceneProperty(), "window"); > binding.get(); > } Explanation for this seems obvious, on level WARNING there is at least one line logged always, unaffected by the change to FINE: > final PlatformLogger logger = Logging.getLogger(); > if (logger.isLoggable(Level.WARNING)) { > Logging.getLogger().warning("Exception while evaluating select-binding " + stepsToString()); > if (ex instanceof IllegalStateException) { > logger.warning("Property '" + propertyNames[i] + "' does not exist in " + obj.getClass(), ex); > } else if (ex instanceof NullPointerException) { > logger.fine("Property '" + propertyNames[i] + "' in " + properties[i] + " is null", ex); > } else { > Logging.getLogger().warning("", ex); > } > } As a result I am getting exception warnings logged leading to questions leading to explanations and bug tickets etc. I tried to work around it by reducing the log level: - created file "logging.properties" in classpath root with content "beans.level = OFF" - added VM argument "-Djava.util.logging.config.file=logging.properties" While this works standalone it does not seem to be accepted in a Webstart JNLP file because it is not a whitelisted secure property. Any ideas about that? Thx, Werner From tom.schindl at bestsolution.at Mon Dec 15 13:23:03 2014 From: tom.schindl at bestsolution.at (Tom Schindl) Date: Mon, 15 Dec 2014 14:23:03 +0100 Subject: Scrollbars on *View or better VirtualFlow based UI elements Message-ID: <548EE0B7.7050301@bestsolution.at> Hi, The constant hiding of the horizontal (ListView & TreeView) and vertical (TreeView) makes the interaction with the control very noisy because the viewport size always changes e.g. when expanding & collapsing and or e.g. scrolling a list with cells of different sizes. The native UI-Toolkits (at least OS-X and IIRC) don't do this and always reserve a scrollbar area which makes interacting with the control IMHO a lot better. I looked into VirtualFlow to see if I could hack myself (via reflection) into it and make the scrollbars show up all time but unless I've looked at the wrong places I could not find anything I could do. Am I right? What do others think? Tom -- Thomas Schindl, CTO BestSolution.at EDV Systemhaus GmbH Eduard-Bodem-Gasse 5-7, A-6020 Innsbruck http://www.bestsolution.at/ Reg. Nr. FN 222302s am Firmenbuchgericht Innsbruck From tomas.mikula at gmail.com Mon Dec 15 15:10:24 2014 From: tomas.mikula at gmail.com (Tomas Mikula) Date: Mon, 15 Dec 2014 16:10:24 +0100 Subject: Scrollbars on *View or better VirtualFlow based UI elements In-Reply-To: <548EE0B7.7050301@bestsolution.at> References: <548EE0B7.7050301@bestsolution.at> Message-ID: To add an idea, semi-transparent scrollbars could be shown over the content when the mouse approaches the edge. This would avoid flickering andto save space at the same time. I realize one could not use this if the scrollbars would cover some interactive controls at the edge of the content. Also, I would like to see some new creative way of scrolling the content, especially for cases when the full length of the content is not known, e.g. a ListView with variable cell sizes, or a possibly infinite stream of items that are loaded as needed. In these cases, the scrollbar length always lies about the actual total length of the content. Regards, Tomas On Mon, Dec 15, 2014 at 2:23 PM, Tom Schindl wrote: > Hi, > > The constant hiding of the horizontal (ListView & TreeView) and vertical > (TreeView) makes the interaction with the control very noisy because the > viewport size always changes e.g. when expanding & collapsing and or > e.g. scrolling a list with cells of different sizes. > > The native UI-Toolkits (at least OS-X and IIRC) don't do this and always > reserve a scrollbar area which makes interacting with the control IMHO a > lot better. > > I looked into VirtualFlow to see if I could hack myself (via reflection) > into it and make the scrollbars show up all time but unless I've looked > at the wrong places I could not find anything I could do. Am I right? > What do others think? > > Tom > > -- > Thomas Schindl, CTO > BestSolution.at EDV Systemhaus GmbH > Eduard-Bodem-Gasse 5-7, A-6020 Innsbruck > http://www.bestsolution.at/ > Reg. Nr. FN 222302s am Firmenbuchgericht Innsbruck From lehmann at media-interactive.de Mon Dec 15 15:35:27 2014 From: lehmann at media-interactive.de (Werner Lehmann) Date: Mon, 15 Dec 2014 16:35:27 +0100 Subject: Scrollbars on *View or better VirtualFlow based UI elements In-Reply-To: References: <548EE0B7.7050301@bestsolution.at> Message-ID: <548EFFBF.7090006@media-interactive.de> Hi Tomas, On 15.12.2014 16:10, Tomas Mikula wrote: > To add an idea, semi-transparent scrollbars could be shown over the > content when the mouse approaches the edge. This would avoid > flickering andto save space at the same time. I realize one could not > use this if the scrollbars would cover some interactive controls at > the edge of the content. Sounds similar to invisible scrollbars which appear on hover only. Personally I don't like either one. I guess it is a matter of taste. In a touch scenario it is a bit of problem though because usually you cannot rely on hover events. > Also, I would like to see some new creative way of scrolling the > content, especially for cases when the full length of the content is > not known, e.g. a ListView with variable cell sizes, or a possibly > infinite stream of items that are loaded as needed. In these cases, > the scrollbar length always lies about the actual total length of the > content. If you have variable cell sizes an easy way to map this to a scrollbar is to use the number of items, possibly with some adjustments involving the height of the known cells. From my impression this is what virtual flow does but I could be wrong. An infinite stream of items can be scrolled with the "Google Picasa" light table approach. You can find an implementation of this concept in ControlsFX, see the PlusMinusSlider control. Werner From tomas.mikula at gmail.com Mon Dec 15 16:34:30 2014 From: tomas.mikula at gmail.com (Tomas Mikula) Date: Mon, 15 Dec 2014 17:34:30 +0100 Subject: Scrollbars on *View or better VirtualFlow based UI elements In-Reply-To: <548EFFBF.7090006@media-interactive.de> References: <548EE0B7.7050301@bestsolution.at> <548EFFBF.7090006@media-interactive.de> Message-ID: Hi Werner, On Mon, Dec 15, 2014 at 4:35 PM, Werner Lehmann wrote: > Hi Tomas, > > On 15.12.2014 16:10, Tomas Mikula wrote: >> >> To add an idea, semi-transparent scrollbars could be shown over the >> content when the mouse approaches the edge. This would avoid >> flickering andto save space at the same time. I realize one could not >> use this if the scrollbars would cover some interactive controls at >> the edge of the content. > > > Sounds similar to invisible scrollbars which appear on hover only. > Personally I don't like either one. I guess it is a matter of taste. In a > touch scenario it is a bit of problem though because usually you cannot rely > on hover events. Show scrollbars on hover might be even a better idea. On a touch device, scrollbars could be shown after an initial tiny scroll by swipe. >> Also, I would like to see some new creative way of scrolling the >> content, especially for cases when the full length of the content is >> not known, e.g. a ListView with variable cell sizes, or a possibly >> infinite stream of items that are loaded as needed. In these cases, >> the scrollbar length always lies about the actual total length of the >> content. > > > If you have variable cell sizes an easy way to map this to a scrollbar is to > use the number of items, possibly with some adjustments involving the height > of the known cells. From my impression this is what virtual flow does but I > could be wrong. My point was that any such mapping to a scrollbar is only an estimate of the total content length. So why bother trying to indicate the total length by a scroll bar at all. > An infinite stream of items can be scrolled with the "Google Picasa" light > table approach. You can find an implementation of this concept in > ControlsFX, see the PlusMinusSlider control. Thanks, I wasn't aware of PlusMinusSlider. Best, Tomas From jeff at reportmill.com Mon Dec 15 19:30:56 2014 From: jeff at reportmill.com (Jeff Martin) Date: Mon, 15 Dec 2014 13:30:56 -0600 Subject: JavaScript library for JavaFX fans? Message-ID: <216F05DF-2035-402A-862A-2A3E0F170A36@reportmill.com> I need to do some JavaScript development - any recommendations for a JavaScript library that comes the closest to JavaFX? It seems like a couple years ago I even heard talk about making a JavaScript version of JavaFX (maybe at JavaOne). jeff From kevin.rushforth at oracle.com Mon Dec 15 20:59:21 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Mon, 15 Dec 2014 12:59:21 -0800 Subject: PLEASE READ: 8u-dev open for 8u60 work; update on 8u/9 syncing policy Message-ID: <548F4BA9.8080701@oracle.com> To: All OpenJFX developers I. 8u-dev is now open for 8u60 work I have completed the final integration from FX 8u-dev into 8u prior to the 8u40 RDP2 fork. As a result, the FX 8u-dev repo is unlocked and is now open for 8u60 [1] bug fixes. Here are the rules: * We are no longer under rampdown restriction for 8u-dev; this means that bug fixes may be pushed to 8u-dev without additional approval, subject to our usual code review policy [2], which also allows for post-commit reviews by owners. Use "[8u60]" in the subject of your review requests. * No API changes (including behavioral changes) or new features should go into 8u-dev for 8u60 -- at least not yet. We haven't scoped out the release and, while there will probably be some minor API tweaks for 8u60, we will hold off on other feature work until 9 and focus on bug fixing for 8u60. * If you plan on working on a bug for 8u60, you can and should change the fixVersion to 8u60; if you aren't sure it is feasible for 8u60 and want to leave it targeted to 9 until you are ready to push a fix, that's OK, but please don't forget to change the fixversion to 8u60 once you push it to 8u-dev. * You can go through your bug backlog and target bugs to 8u60, once you prioritize them, but please only target those bugs you are reasonably sure you can fix within the next two or three months, or those that absolutely must be fixed for 8u60 and cannot wait until 9. II. Update on 8u-dev ==> 9-dev syncing policy In order to allow more bug fixing to happen for 8u60, we will continue to sync changes (at least once a week) from 8u-dev to 9-dev for the next several weeks, probably through mid-late January. This means that most bug fixes over the next few weeks should be pushed into 8u-dev and marked as fixed in 8u60. Anyone pushing changes directly into 9-dev (which should only be people working on things that are specific to 9, such as the compiler upgrade, WebKit upgrade, or jigsaw changes) needs to be careful to avoid changes that will cause merge conflicts. Let me know if you have any questions. -- Kevin [1] https://wiki.openjdk.java.net/display/OpenJFX/8u60 [2] https://wiki.openjdk.java.net/display/OpenJFX/Code+Reviews From vadim.pakhnushev at oracle.com Tue Dec 16 12:41:28 2014 From: vadim.pakhnushev at oracle.com (Vadim Pakhnushev) Date: Tue, 16 Dec 2014 15:41:28 +0300 Subject: [8u60] Review request for RT-39541: Firing SimpleUpdateChange does not get propagated properly on SortedList Message-ID: <54902878.9000602@oracle.com> Chien, Kevin, Please review the fix: https://javafx-jira.kenai.com/browse/RT-39541 http://cr.openjdk.java.net/~vadim/RT-39541/webrev.00/ Thanks, Vadim From james.laskey at oracle.com Tue Dec 16 13:11:33 2014 From: james.laskey at oracle.com (Jim Laskey (Oracle)) Date: Tue, 16 Dec 2014 09:11:33 -0400 Subject: JavaScript library for JavaFX fans? In-Reply-To: <216F05DF-2035-402A-862A-2A3E0F170A36@reportmill.com> References: <216F05DF-2035-402A-862A-2A3E0F170A36@reportmill.com> Message-ID: <89D00EFC-21E8-4521-BCB7-D1A3E20EA597@oracle.com> Nashorn JavaScript works with FX very easily. On Dec 15, 2014, at 3:30 PM, Jeff Martin wrote: > I need to do some JavaScript development - any recommendations for a JavaScript library that comes the closest to JavaFX? > > It seems like a couple years ago I even heard talk about making a JavaScript version of JavaFX (maybe at JavaOne). > > jeff From phidias51 at gmail.com Tue Dec 16 14:49:58 2014 From: phidias51 at gmail.com (Mark Fortner) Date: Tue, 16 Dec 2014 06:49:58 -0800 Subject: JavaScript library for JavaFX fans? In-Reply-To: <89D00EFC-21E8-4521-BCB7-D1A3E20EA597@oracle.com> References: <216F05DF-2035-402A-862A-2A3E0F170A36@reportmill.com> <89D00EFC-21E8-4521-BCB7-D1A3E20EA597@oracle.com> Message-ID: Just to be clear, you're looking for a js library that has JavaFX-like components, an event model, threading, graphics, animation and charting. And runs in a browser. You're not looking to use fxml and js to build an application, correct? On Dec 16, 2014 5:13 AM, "Jim Laskey (Oracle)" wrote: > Nashorn JavaScript works with FX very easily. > > On Dec 15, 2014, at 3:30 PM, Jeff Martin wrote: > > > I need to do some JavaScript development - any recommendations for a > JavaScript library that comes the closest to JavaFX? > > > > It seems like a couple years ago I even heard talk about making a > JavaScript version of JavaFX (maybe at JavaOne). > > > > jeff > > From vadim.pakhnushev at oracle.com Tue Dec 16 14:51:11 2014 From: vadim.pakhnushev at oracle.com (Vadim Pakhnushev) Date: Tue, 16 Dec 2014 17:51:11 +0300 Subject: [8u60] Review request for RT-27010: javafx.scene.image.Image() constructor may hangs on corrupted image Message-ID: <549046DF.4050701@oracle.com> Jim, Please review the fix: https://javafx-jira.kenai.com/browse/RT-27010 http://cr.openjdk.java.net/~vadim/RT-27010/webrev.00/ Thanks, Vadim From james.laskey at oracle.com Tue Dec 16 15:07:08 2014 From: james.laskey at oracle.com (Jim Laskey (Oracle)) Date: Tue, 16 Dec 2014 11:07:08 -0400 Subject: JavaScript library for JavaFX fans? In-Reply-To: References: <216F05DF-2035-402A-862A-2A3E0F170A36@reportmill.com> <89D00EFC-21E8-4521-BCB7-D1A3E20EA597@oracle.com> Message-ID: He mentioned JavaFX Script language, so I assume he wants to work with FX directly from Javascript. Look at https://blogs.oracle.com/nashorn/entry/jjs_fx as an example Cheers, -- Jim On Dec 16, 2014, at 10:49 AM, Mark Fortner wrote: > Just to be clear, you're looking for a js library that has JavaFX-like components, an event model, threading, graphics, animation and charting. And runs in a browser. You're not looking to use fxml and js to build an application, correct? > > On Dec 16, 2014 5:13 AM, "Jim Laskey (Oracle)" wrote: > Nashorn JavaScript works with FX very easily. > > On Dec 15, 2014, at 3:30 PM, Jeff Martin wrote: > > > I need to do some JavaScript development - any recommendations for a JavaScript library that comes the closest to JavaFX? > > > > It seems like a couple years ago I even heard talk about making a JavaScript version of JavaFX (maybe at JavaOne). > > > > jeff > From jeff at reportmill.com Tue Dec 16 15:29:29 2014 From: jeff at reportmill.com (Jeff Martin) Date: Tue, 16 Dec 2014 09:29:29 -0600 Subject: JavaScript library for JavaFX fans? In-Reply-To: References: <216F05DF-2035-402A-862A-2A3E0F170A36@reportmill.com> <89D00EFC-21E8-4521-BCB7-D1A3E20EA597@oracle.com> Message-ID: You?re spot on, Mark. I need to do a little lightweight-in-the-browser-without-the-JVM development, and as a long-time Swing/JavaFX developer, I don?t want my fingers/brain to bleed too much. :-) The JavaScript world doesn?t seem as cut-and-dried as Java, iOS, Android development. I?m hoping there?s a popular and capable standard for people who come from the Java world. jeff On Dec 16, 2014, at 9:07 AM, Jim Laskey (Oracle) wrote: > He mentioned JavaFX Script language, so I assume he wants to work with FX directly from Javascript. > > Look at https://blogs.oracle.com/nashorn/entry/jjs_fx as an example > > Cheers, > > -- Jim > > > > On Dec 16, 2014, at 10:49 AM, Mark Fortner wrote: > >> Just to be clear, you're looking for a js library that has JavaFX-like components, an event model, threading, graphics, animation and charting. And runs in a browser. You're not looking to use fxml and js to build an application, correct? >> >> On Dec 16, 2014 5:13 AM, "Jim Laskey (Oracle)" wrote: >> Nashorn JavaScript works with FX very easily. >> >> On Dec 15, 2014, at 3:30 PM, Jeff Martin wrote: >> >> > I need to do some JavaScript development - any recommendations for a JavaScript library that comes the closest to JavaFX? >> > >> > It seems like a couple years ago I even heard talk about making a JavaScript version of JavaFX (maybe at JavaOne). >> > >> > jeff >> > From phidias51 at gmail.com Tue Dec 16 15:42:23 2014 From: phidias51 at gmail.com (Mark Fortner) Date: Tue, 16 Dec 2014 07:42:23 -0800 Subject: JavaScript library for JavaFX fans? In-Reply-To: References: <216F05DF-2035-402A-862A-2A3E0F170A36@reportmill.com> <89D00EFC-21E8-4521-BCB7-D1A3E20EA597@oracle.com> Message-ID: GWT is probably closest to what you're looking for. You write java and it emits HTML and JavaScript. In recent years as JavaScript has been playing catch up though, the popularity of gwt has been on the wane. Angularjs has been gaining a lot of traction as well as Polymer. But these more recent frameworks are not java-like. I'm sure web developers would probably have some better suggestions. Mark On Dec 16, 2014 7:29 AM, "Jeff Martin" wrote: > You?re spot on, Mark. I need to do a little > lightweight-in-the-browser-without-the-JVM development, and as a long-time > Swing/JavaFX developer, I don?t want my fingers/brain to bleed too much. :-) > > The JavaScript world doesn?t seem as cut-and-dried as Java, iOS, Android > development. I?m hoping there?s a popular and capable standard for people > who come from the Java world. > > jeff > > > On Dec 16, 2014, at 9:07 AM, Jim Laskey (Oracle) > wrote: > > He mentioned JavaFX Script language, so I assume he wants to work with FX > directly from Javascript. > > Look at https://blogs.oracle.com/nashorn/entry/jjs_fx as an example > > Cheers, > > -- Jim > > > > On Dec 16, 2014, at 10:49 AM, Mark Fortner wrote: > > Just to be clear, you're looking for a js library that has JavaFX-like > components, an event model, threading, graphics, animation and charting. > And runs in a browser. You're not looking to use fxml and js to build an > application, correct? > On Dec 16, 2014 5:13 AM, "Jim Laskey (Oracle)" > wrote: > >> Nashorn JavaScript works with FX very easily. >> >> On Dec 15, 2014, at 3:30 PM, Jeff Martin wrote: >> >> > I need to do some JavaScript development - any recommendations for a >> JavaScript library that comes the closest to JavaFX? >> > >> > It seems like a couple years ago I even heard talk about making a >> JavaScript version of JavaFX (maybe at JavaOne). >> > >> > jeff >> >> > > From ali.ebrahimi1781 at gmail.com Tue Dec 16 16:00:01 2014 From: ali.ebrahimi1781 at gmail.com (Ali Ebrahimi) Date: Tue, 16 Dec 2014 19:30:01 +0330 Subject: JavaScript library for JavaFX fans? In-Reply-To: References: <216F05DF-2035-402A-862A-2A3E0F170A36@reportmill.com> <89D00EFC-21E8-4521-BCB7-D1A3E20EA597@oracle.com> Message-ID: if you can not forget java just use ZK framework. On Tue, Dec 16, 2014 at 6:59 PM, Jeff Martin wrote: > > You?re spot on, Mark. I need to do a little > lightweight-in-the-browser-without-the-JVM development, and as a long-time > Swing/JavaFX developer, I don?t want my fingers/brain to bleed too much. :-) > > The JavaScript world doesn?t seem as cut-and-dried as Java, iOS, Android > development. I?m hoping there?s a popular and capable standard for people > who come from the Java world. > > jeff > > > On Dec 16, 2014, at 9:07 AM, Jim Laskey (Oracle) > wrote: > > > He mentioned JavaFX Script language, so I assume he wants to work with > FX directly from Javascript. > > > > Look at https://blogs.oracle.com/nashorn/entry/jjs_fx as an example > > > > Cheers, > > > > -- Jim > > > > > > > > On Dec 16, 2014, at 10:49 AM, Mark Fortner wrote: > > > >> Just to be clear, you're looking for a js library that has JavaFX-like > components, an event model, threading, graphics, animation and charting. > And runs in a browser. You're not looking to use fxml and js to build an > application, correct? > >> > >> On Dec 16, 2014 5:13 AM, "Jim Laskey (Oracle)" > wrote: > >> Nashorn JavaScript works with FX very easily. > >> > >> On Dec 15, 2014, at 3:30 PM, Jeff Martin wrote: > >> > >> > I need to do some JavaScript development - any recommendations for a > JavaScript library that comes the closest to JavaFX? > >> > > >> > It seems like a couple years ago I even heard talk about making a > JavaScript version of JavaFX (maybe at JavaOne). > >> > > >> > jeff > >> > > > > From morris.meyer at oracle.com Tue Dec 16 16:29:20 2014 From: morris.meyer at oracle.com (Morris Meyer) Date: Tue, 16 Dec 2014 11:29:20 -0500 Subject: [8u60] Review request for RT-34958: [Ensemble] content in some pages are not centered Message-ID: <54905DE0.1050409@oracle.com> Folks, Could I get a quick review for this fix-up of the alignment in two Ensemble apps? Thanks much. --morris JIRA - https://javafx-jira.kenai.com/browse/RT-34958 WEBREV - http://cr.openjdk.java.net/~morris/RT-34958.01 From morris.meyer at oracle.com Tue Dec 16 18:00:53 2014 From: morris.meyer at oracle.com (Morris Meyer) Date: Tue, 16 Dec 2014 13:00:53 -0500 Subject: [8u60] Review request for RT-34840: [3DViewer] FileNotFoundException: Jfx3dViewerApp_session.properties (Read-only file system) Message-ID: <54907355.8000000@oracle.com> Kevin and Chien, Please review this simple fix for the 3DViewer SessionManager class to take care of read-only file system errors when trying to save the session file. Thanks much, --morris JIRA - https://javafx-jira.kenai.com/browse/RT-34840 WEBREV - http://cr.openjdk.java.net/~morris/RT-34840.01 From morris.meyer at oracle.com Tue Dec 16 19:48:14 2014 From: morris.meyer at oracle.com (Morris Meyer) Date: Tue, 16 Dec 2014 14:48:14 -0500 Subject: [8u60] Review request for RT-39645: Mac OSX Yosemite StageStyle.UTILITY comes up with wrong window decoration Message-ID: <54908C7E.4050102@oracle.com> Kevin and David, Could you please review my changes to Glass-Mac for StageStyle.UTILITY? These have been tested on 10.10. Thanks much, --morris JIRA - https://javafx-jira.kenai.com/browse/RT-39645 WEBREV - http://cr.openjdk.java.net/~morris/RT-39645.01 From morris.meyer at oracle.com Tue Dec 16 20:06:31 2014 From: morris.meyer at oracle.com (Morris Meyer) Date: Tue, 16 Dec 2014 15:06:31 -0500 Subject: [8u60] Review request for RT-39688: Glass-Mac window close deallocation produces a spurious warning Message-ID: <549090C7.3070701@oracle.com> David and Kevin, Please review this very small change to prevent a spurious warning when de-allocation occurs for a NSWindow instance after the Java VM has shutdown. Thanks much, --morris JIRA - https://javafx-jira.kenai.com/browse/RT-39688 WEBREV - http://cr.openjdk.java.net/~morris/RT-39688.01 From mike at plan99.net Tue Dec 16 21:21:38 2014 From: mike at plan99.net (Mike Hearn) Date: Tue, 16 Dec 2014 22:21:38 +0100 Subject: JavaScript library for JavaFX fans? In-Reply-To: References: <216F05DF-2035-402A-862A-2A3E0F170A36@reportmill.com> <89D00EFC-21E8-4521-BCB7-D1A3E20EA597@oracle.com> Message-ID: Watch out for Angular. They're rewriting it from scratch and Angular 2 is totally different to the current Angular. The rate of churn in Javascript web dev is much, much higher than with Java desktop app dev. GWT has been around for a while and Google use it a lot internally. It's not likely to suffer sudden disowning or massive churn. On Tue, Dec 16, 2014 at 4:42 PM, Mark Fortner wrote: > > GWT is probably closest to what you're looking for. You write java and it > emits HTML and JavaScript. In recent years as JavaScript has been playing > catch up though, the popularity of gwt has been on the wane. Angularjs has > been gaining a lot of traction as well as Polymer. But these more recent > frameworks are not java-like. I'm sure web developers would probably have > some better suggestions. > > Mark > On Dec 16, 2014 7:29 AM, "Jeff Martin" wrote: > > > You?re spot on, Mark. I need to do a little > > lightweight-in-the-browser-without-the-JVM development, and as a > long-time > > Swing/JavaFX developer, I don?t want my fingers/brain to bleed too much. > :-) > > > > The JavaScript world doesn?t seem as cut-and-dried as Java, iOS, Android > > development. I?m hoping there?s a popular and capable standard for people > > who come from the Java world. > > > > jeff > > > > > > On Dec 16, 2014, at 9:07 AM, Jim Laskey (Oracle) < > james.laskey at oracle.com> > > wrote: > > > > He mentioned JavaFX Script language, so I assume he wants to work with FX > > directly from Javascript. > > > > Look at https://blogs.oracle.com/nashorn/entry/jjs_fx as an example > > > > Cheers, > > > > -- Jim > > > > > > > > On Dec 16, 2014, at 10:49 AM, Mark Fortner wrote: > > > > Just to be clear, you're looking for a js library that has JavaFX-like > > components, an event model, threading, graphics, animation and charting. > > And runs in a browser. You're not looking to use fxml and js to build an > > application, correct? > > On Dec 16, 2014 5:13 AM, "Jim Laskey (Oracle)" > > wrote: > > > >> Nashorn JavaScript works with FX very easily. > >> > >> On Dec 15, 2014, at 3:30 PM, Jeff Martin wrote: > >> > >> > I need to do some JavaScript development - any recommendations for a > >> JavaScript library that comes the closest to JavaFX? > >> > > >> > It seems like a couple years ago I even heard talk about making a > >> JavaScript version of JavaFX (maybe at JavaOne). > >> > > >> > jeff > >> > >> > > > > > From ltorokrl at gmail.com Wed Dec 17 09:24:33 2014 From: ltorokrl at gmail.com (=?UTF-8?B?TGFkaXNsYXYgVMO2csO2aw==?=) Date: Wed, 17 Dec 2014 10:24:33 +0100 Subject: Building OpenJFX for Linux ARM Message-ID: Can I build OpenJFX for Linux ARM on VirtualBox, guest OS is Ubuntu 12.10? I want build OpenJFX from the latest JavaFX 8u40 repo. From kevin.rushforth at oracle.com Wed Dec 17 13:39:13 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Wed, 17 Dec 2014 05:39:13 -0800 Subject: Building OpenJFX for Linux ARM In-Reply-To: References: Message-ID: <54918781.8070201@oracle.com> Yes, this should work fine, as long as you are building on a 32-bit OS; if it is a 64-bit OS then there is a fair bit more setup involved (mainly you need to install all of the 32-bit libraries). The instructions for building FX for linux-arm are here: https://wiki.openjdk.java.net/display/OpenJFX/Building+OpenJFX#BuildingOpenJFX-LinuxARM They should be up to date. -- Kevin Ladislav T?r?k wrote: > Can I build OpenJFX for Linux ARM on VirtualBox, guest OS is Ubuntu 12.10? > I want build OpenJFX from the latest JavaFX 8u40 repo. > From rfisher at tesis.de Wed Dec 17 16:04:24 2014 From: rfisher at tesis.de (Robert Fisher) Date: Wed, 17 Dec 2014 17:04:24 +0100 Subject: A library for creating graph-like diagrams in JavaFX Message-ID: Hi everyone, In case anyone is interested, we're working on an open source JavaFX library for creating graph-like diagrams: https://github.com/tesis-dynaware/graph-editor It uses EMF so you get undo/redo, serialization, and some other nice features. You can try out a demo here: https://github.com/tesis-dynaware/graph-editor/releases Cheers, Rob From morris.meyer at oracle.com Wed Dec 17 19:35:50 2014 From: morris.meyer at oracle.com (Morris Meyer) Date: Wed, 17 Dec 2014 14:35:50 -0500 Subject: [8u60] Review request for RT-37476 Message-ID: <5491DB16.2010707@oracle.com> Kevin and Jim, Could you please review the following changes to the Ensemble8 GestureEventApp and MultiTouchImageView. I have tested them on my Mac Pro running 10.10.1 with the Apple Magic Trackpad. Thanks much, --morris WEBREV - http://cr.openjdk.java.net/~morris/RT-37476.01/ JIRA - https://javafx-jira.kenai.com/browse/RT-37476 From David.Hill at Oracle.com Wed Dec 17 21:59:42 2014 From: David.Hill at Oracle.com (David Hill) Date: Wed, 17 Dec 2014 16:59:42 -0500 Subject: Adding more samples to embedded Message-ID: <5491FCCE.6090209@Oracle.com> Morris, Kevin, This adds about 34 samples to the embedded launch, and hopefully does not change anything of significance otherwise. This was done by checking the samples worked, and then adding the @embedded tag, and then running the Samples index generator. ( ant -Dplatforms.JDK_1.8.home=/opt/jdk ensemble-generate-samples-class) I checked the index: ant -Dplatforms.JDK_1.8.home=/opt/jdk ensemble-generate-search-index) but it did not generate any changes (happily). Webrev: http://cr.openjdk.java.net/~ddhill/RT-37692/ Jira: https://javafx-jira.kenai.com/browse/RT-37692 Note that I updated the Samples.java using the ant tool rather than adding them in by hand, and am seeing a big diff. -- David Hill Java Embedded Development "A man's feet should be planted in his country, but his eyes should survey the world." -- George Santayana (1863 - 1952) From elina.kleyman at oracle.com Thu Dec 18 16:20:02 2014 From: elina.kleyman at oracle.com (Elina Kleyman) Date: Thu, 18 Dec 2014 08:20:02 -0800 (PST) Subject: [8u60] review request: RT-39477 - Scene not repainted on change to Stage opacity with StageStyle.TRANSPARENT Message-ID: Kevin, Dave, Please review fix for: Jira: https://javafx-jira.kenai.com/browse/RT-39477 Webrev: http://cr.openjdk.java.net/~ekleyman/RT-39477/webrev/ Thanks, Elina From vadim.pakhnushev at oracle.com Thu Dec 18 19:41:43 2014 From: vadim.pakhnushev at oracle.com (Vadim Pakhnushev) Date: Thu, 18 Dec 2014 22:41:43 +0300 Subject: [8u60] Review request for RT-36520: [Logging] Cannot turn off javafx.scene Logging Message-ID: <54932DF7.1050507@oracle.com> Kevin, Please review the fix: https://javafx-jira.kenai.com/browse/RT-36520 http://cr.openjdk.java.net/~vadim/RT-36520/webrev.00/ Thanks, Vadim From swpalmer at gmail.com Thu Dec 18 21:49:16 2014 From: swpalmer at gmail.com (Scott Palmer) Date: Thu, 18 Dec 2014 16:49:16 -0500 Subject: Understanding Layout Message-ID: Short Version: Is there good documentation on how JavaFX performs layout? (Not specific layouts, but layout in general.) Long Version: I was looking into a layout issue in ControlsFX (BreadCrumbBar width is reported incorrectly and it doesn't behave when right-aligned). What I found is that Parent and SkinBase assume that layout has already occurred on child nodes when computing the preferred width/height. The JavaDocs indicate this is a known assumption: * Calculates the preferred width of this {@code SkinBase}. The default * implementation calculates this width as the width of the area occupied * by its managed children when they are positioned at their * current positions at their preferred widths. Parent.computePrefWidth(double height) javadocs contain the exact same comment. Note however that the Region class documents Region.computePrefWidth(double height) differently. It simply states: * Computes the preferred width of this region for the given height. * Region subclasses should override this method to return an appropriate * value based on their content and layout strategy. If the subclass * doesn't have a VERTICAL content bias, then the height parameter can be * ignored. Node.prefWidth(double height), which is what Control.computePrefWidth(double height) delegates to if there is no SkinBase, clearly states: "Returns the node's preferred width for use in layout calculations." It's the "for use in layout calculations" part, combined with the fact that prefWidth relies on the layout having already happened, that confuses me. Clearly layout is working in most cases, so this must all work out in the general case. But as I understand it layout happens top-down, so constraints imposed by the parent container must be accounted for when positioning and sizing the children. That implies that the child nodes are not yet laid out when their preferred size is queried. I fixed the issues I was having with BreadCrumbBar by overriding the implementation of computePrefWidth(double height) with one that does not care about the current X position of the child Nodes. It still relies on the layout bounds via Node.prefWidth(double height), and duplicates some of the calculations that an actual layout will do, but it worked to solve the problems of right-aligned layout and a widthProperty that was clearly lying. I feel like I am missing something fundamental about how Layout works though. Is there documentation that explains the general layout algorithm and how to make sense of the apparent circular dependency? Regards, Scott From james.graham at oracle.com Fri Dec 19 00:20:03 2014 From: james.graham at oracle.com (Jim Graham) Date: Thu, 18 Dec 2014 16:20:03 -0800 Subject: [8u60] review request: RT-33085 static caches in BaseResourceFactory Message-ID: <54936F33.9080700@oracle.com> Phil (and Kevin), Please review: webrev: http://cr.openjdk.java.net/~flar/RT-33085/webrev.01/ Jira: https://javafx-jira.kenai.com/browse/RT-33085 Mainly I'll need Phil to test the impact on printing... ...jim From chien.yang at oracle.com Fri Dec 19 01:43:46 2014 From: chien.yang at oracle.com (Chien Yang) Date: Thu, 18 Dec 2014 17:43:46 -0800 Subject: [8u60] Code Review Request For RT-39666: Add GL_FRAGMENT_PRECISION_HIGH check to existing 2D shaders before setting precision to highp Message-ID: <549382D2.9020104@oracle.com> Hi Kevin and Dave, Please review this fix. JIRA: https://javafx-jira.kenai.com/browse/RT-39666 Webrev: http://cr.openjdk.java.net/~ckyang/RT-39666/webrev.00/ Thanks, - Chien From ltorokrl at gmail.com Fri Dec 19 06:23:57 2014 From: ltorokrl at gmail.com (=?UTF-8?B?TGFkaXNsYXYgVMO2csO2aw==?=) Date: Fri, 19 Dec 2014 07:23:57 +0100 Subject: Is this the end of support raspberrry pi? Message-ID: In JavaFX Jira is enough bugs marked as " Won't Fix" lately. For example: RT-33958, RT-33959, RT-33960, RT-34735 Is it only valid for Ensemble8 running on Raspberry Pi or support javaFX on Raspberry Pi? It's amazing that JavaFX running on Raspberry Pi: I am very grateful for it. Thanks. Keep it up... From martin.sladecek at oracle.com Fri Dec 19 09:12:28 2014 From: martin.sladecek at oracle.com (Martin Sladecek) Date: Fri, 19 Dec 2014 10:12:28 +0100 Subject: Understanding Layout In-Reply-To: References: Message-ID: <5493EBFC.8020409@oracle.com> Hi Scott, On 18.12.2014 22:49, Scott Palmer wrote: > Short Version: > > Is there good documentation on how JavaFX performs layout? (Not specific > layouts, but layout in general.) Not an official documentation I'm afraid (at least I don't know of any), just the javadoc and a few blog posts: Amy Fowler made some short introduction about layouts here: https://amyfowlersblog.wordpress.com/2011/06/02/javafx2-0-layout-a-class-tour/ I tried to explain some parts of the layout process that were confusing people from time to time (based on the JIRA issues that were reported to me): https://blogs.oracle.com/jfxprg/entry/the_peculiarities_of_javafx_layout (I'm sorry I never got to make part 2 :-( ). > > > Long Version: > > I was looking into a layout issue in ControlsFX (BreadCrumbBar width is > reported incorrectly and it doesn't behave when right-aligned). > > What I found is that Parent and SkinBase assume that layout has already > occurred on child nodes when computing the preferred width/height. The > JavaDocs indicate this is a known assumption: > > * Calculates the preferred width of this {@code SkinBase}. The default > * implementation calculates this width as the width of the area > occupied > * by its managed children when they are positioned at their > * current positions at their preferred widths. > > Parent.computePrefWidth(double height) javadocs contain the exact same > comment. > > Note however that the Region class documents Region.computePrefWidth(double > height) differently. It simply states: > > * Computes the preferred width of this region for the given height. > * Region subclasses should override this method to return an > appropriate > * value based on their content and layout strategy. If the subclass > * doesn't have a VERTICAL content bias, then the height parameter can > be > * ignored. > > Node.prefWidth(double height), which is what > Control.computePrefWidth(double height) delegates to if there is no > SkinBase, clearly states: > "Returns the node's preferred width for use in layout calculations." > > It's the "for use in layout calculations" part, combined with the fact that > prefWidth relies on the layout having already happened, that confuses me. > > Clearly layout is working in most cases, so this must all work out in the > general case. But as I understand it layout happens top-down, so > constraints imposed by the parent container must be accounted for when > positioning and sizing the children. That implies that the child nodes are > not yet laid out when their preferred size is queried. > > I fixed the issues I was having with BreadCrumbBar by overriding the > implementation of computePrefWidth(double height) with one that does not > care about the current X position of the child Nodes. It still relies on > the layout bounds via Node.prefWidth(double height), and duplicates some of > the calculations that an actual layout will do, but it worked to solve the > problems of right-aligned layout and a widthProperty that was clearly lying. > > I feel like I am missing something fundamental about how Layout works > though. > Is there documentation that explains the general layout algorithm and how > to make sense of the apparent circular dependency? The way it should work is that pref* min* max* methods should be able to compute the layout without the layout actually happening. This is basically a kind-of 2-pass top-down layout: take a root (or any other parent in a tree) you want to layout. First, the computation of size hints happens (and might be traversing down the tree). After this stage, you know the size hints of the root's children, but no layout happened yet. Now the layout happens and the children are given their sizes (which might not be equal to pref size), the layout is done recursively on the children (now they know their final size they have all the information). Theoretically, you could even cache the size hints in your skins (until some of their prerequisites change) and use them at any stage of the layout pass, even as the parent's sizes change during the layout. This approach also means that size hints cannot depend on their ancestor's size (which is something many people tried to do). But it seems you already understand all this well. Now the confusing parts: * Some default implementation look like they rely on the layout, but this is actually because they have no layout by default. Or more commonly, the layout does just the resize, not movement. This means we can use layout bound's x, y already at compute* methods as this is something not managed by Parent and may be set through relocate() explicitly by the developer. I see SkinBase does actually moves the children by default (to contentX, contentY) and yet still uses layout bounds in compute* methods. This might lead to a bug in certain cases IMO, but usually would work as the position does not change. Maybe some child's margin change could break this, I would have to play with it to find out. Probably one JIRA task here you could file would be to improve the javadoc so that it's clear what is managed by class and what not, so that the developer knows what is expected to be changed explicitly and is never changed from within the class. *Group (with autosize) is an exception and it's preferred size depends on children's layout bounds which depend on the actual layout (!). This might complicate the layout and brings a certain complexity to the whole layout mechanism, so I'm not particularly proud of this, but there was no other way to fix the problems we had with Group without braking backward-compatibility and actually the most important functionality of the Group - that is that it's layout bounds include the full bounds of it's children (inc. effects et al.), which means we can't compute it's preferred size based on the children's size hints, we really need to do the actual layout first. Hope it helps! -Martin From kevin.rushforth at oracle.com Fri Dec 19 15:13:34 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Fri, 19 Dec 2014 07:13:34 -0800 Subject: Is this the end of support raspberrry pi? In-Reply-To: References: Message-ID: <5494409E.7010803@oracle.com> The Raspberry Pi is a platform that JavaFX runs well on, but bugs and especially performance problems, that only happen on Raspberry Pi will be given lower priority. -- Kevin Ladislav T?r?k wrote: > In JavaFX Jira is enough bugs marked as " > Won't Fix" lately. For example: RT-33958, RT-33959, RT-33960, RT-34735 > Is it only valid for Ensemble8 running on Raspberry Pi or support javaFX on > Raspberry Pi? > It's amazing that JavaFX running on Raspberry Pi: > I am very grateful for it. > > Thanks. > Keep it up... > From David.Hill at Oracle.com Fri Dec 19 16:10:35 2014 From: David.Hill at Oracle.com (David Hill) Date: Fri, 19 Dec 2014 11:10:35 -0500 Subject: Review: null pointer in pulse logger Message-ID: <54944DFB.9000800@Oracle.com> Kevin, a small fix in pulse logger, fixing a non-toxic null pointer in pulse logger. https://javafx-jira.kenai.com/browse/RT-39703 the one line diff is in the Jira. -- David Hill Java Embedded Development "A man's feet should be planted in his country, but his eyes should survey the world." -- George Santayana (1863 - 1952) From vadim.pakhnushev at oracle.com Fri Dec 19 16:12:24 2014 From: vadim.pakhnushev at oracle.com (Vadim Pakhnushev) Date: Fri, 19 Dec 2014 19:12:24 +0300 Subject: In(Sanity) Testing Mondays Message-ID: <54944E68.3030803@oracle.com> Reminder, Monday is our weekly sanity testing. You can find your testing assignment at: https://wiki.openjdk.java.net/display/OpenJFX/Sanity+Testing Also please remember that the repo will be locked from 1am PST until 1pm PST. Happy testing! Thanks, Vadim From David.Hill at Oracle.com Fri Dec 19 16:46:38 2014 From: David.Hill at Oracle.com (David Hill) Date: Fri, 19 Dec 2014 11:46:38 -0500 Subject: Is this the end of support raspberrry pi? In-Reply-To: References: Message-ID: <5494566E.4040602@Oracle.com> On 12/19/14, 1:23 AM, Ladislav T?r?k wrote: > In JavaFX Jira is enough bugs marked as " > Won't Fix" lately. For example: RT-33958, RT-33959, RT-33960, RT-34735 > Is it only valid for Ensemble8 running on Raspberry Pi or support javaFX on > Raspberry Pi? > It's amazing that JavaFX running on Raspberry Pi: > I am very grateful for it. > > Thanks. > Keep it up... It is less to do with the support of the PI, but rather a realization that we don't have the internal resources to concentrate on the samples on an embedded platforms. Ensemble8 in particular is a bit of a monster - it is very large (both for memory used and classes consumed, and then of course the index parsing it does on startup) and does a lot of things that are hard to speed up on the Pi. Ensemble8 runs reasonably well on the i.MX6, which is closer to the platforms that that we might support commercial use on. Even there it does not make a great example of a application. Rather than re-re-triage these sets of tasks, I reluctantly closed them, knowing that I can reopen them if and when we have the resources to do the rework needed. Dave -- David Hill Java Embedded Development "A man's feet should be planted in his country, but his eyes should survey the world." -- George Santayana (1863 - 1952) From sven.reimers at gmail.com Fri Dec 19 17:02:11 2014 From: sven.reimers at gmail.com (Sven Reimers) Date: Fri, 19 Dec 2014 18:02:11 +0100 Subject: Is this the end of support raspberrry pi? In-Reply-To: <5494566E.4040602@Oracle.com> References: <5494566E.4040602@Oracle.com> Message-ID: So, the community challenge is to rewrite this beast to make it run smoothly on a pi? -Sven Am 19.12.2014 17:47 schrieb "David Hill" : > On 12/19/14, 1:23 AM, Ladislav T?r?k wrote: > >> In JavaFX Jira is enough bugs marked as " >> Won't Fix" lately. For example: RT-33958, RT-33959, RT-33960, RT-34735 >> Is it only valid for Ensemble8 running on Raspberry Pi or support javaFX >> on >> Raspberry Pi? >> It's amazing that JavaFX running on Raspberry Pi: >> I am very grateful for it. >> >> Thanks. >> Keep it up... >> > It is less to do with the support of the PI, but rather a realization that > we don't have the internal resources to concentrate on the samples on an > embedded platforms. Ensemble8 in particular is a bit of a monster - it is > very large (both for memory used and classes consumed, and then of course > the index parsing it does on startup) and does a lot of things that are > hard to speed up on the Pi. > > Ensemble8 runs reasonably well on the i.MX6, which is closer to the > platforms that that we might support commercial use on. Even there it does > not make a great example of a application. > > Rather than re-re-triage these sets of tasks, I reluctantly closed them, > knowing that I can reopen them if and when we have the resources to do the > rework needed. > > Dave > > -- > David Hill > Java Embedded Development > > "A man's feet should be planted in his country, but his eyes should survey > the world." > -- George Santayana (1863 - 1952) > > From David.Hill at Oracle.com Fri Dec 19 17:13:30 2014 From: David.Hill at Oracle.com (David Hill) Date: Fri, 19 Dec 2014 12:13:30 -0500 Subject: Is this the end of support raspberrry pi? In-Reply-To: References: <5494566E.4040602@Oracle.com> Message-ID: <54945CBA.1020604@Oracle.com> On 12/19/14, 12:02 PM, Sven Reimers wrote: > > So, the community challenge is to rewrite this beast to make it run smoothly on a pi? > If someone wants to look for hot spots (profiling and such), then that certainly would help. And after that, perhaps some donated code would be nice :-) The app is nicely designed in some ways - easily extensible and such, but for a smaller device, those design features don't fit as well. In the modern world of app design, it really makes sense to create a clean app, and then speed it up. I know that I have found that early optimization is problematic as I was often wrong at where the choke points were. Ensemble was made on and for the desktop CPU, and it shows in startups time. Dave > > -Sven > > Am 19.12.2014 17:47 schrieb "David Hill" >: > > On 12/19/14, 1:23 AM, Ladislav T?r?k wrote: > > In JavaFX Jira is enough bugs marked as " > Won't Fix" lately. For example: RT-33958, RT-33959, RT-33960, RT-34735 > Is it only valid for Ensemble8 running on Raspberry Pi or support javaFX on > Raspberry Pi? > It's amazing that JavaFX running on Raspberry Pi: > I am very grateful for it. > > Thanks. > Keep it up... > > It is less to do with the support of the PI, but rather a realization that we don't have the internal resources to concentrate on the samples on an embedded platforms. Ensemble8 in particular is a bit of a monster - it is very large (both for memory used and classes consumed, and then of course the index parsing it does on startup) and does a lot of things that are hard to speed up on the Pi. > > Ensemble8 runs reasonably well on the i.MX6, which is closer to the platforms that that we might support commercial use on. Even there it does not make a great example of a application. > > Rather than re-re-triage these sets of tasks, I reluctantly closed them, knowing that I can reopen them if and when we have the resources to do the rework needed. > > Dave > > -- > David Hill > Java Embedded Development > > "A man's feet should be planted in his country, but his eyes should survey the world." > -- George Santayana (1863 - 1952) > -- David Hill Java Embedded Development "A man's feet should be planted in his country, but his eyes should survey the world." -- George Santayana (1863 - 1952) From swpalmer at gmail.com Fri Dec 19 18:04:01 2014 From: swpalmer at gmail.com (Scott Palmer) Date: Fri, 19 Dec 2014 13:04:01 -0500 Subject: Understanding Layout In-Reply-To: <5493EBFC.8020409@oracle.com> References: <5493EBFC.8020409@oracle.com> Message-ID: Thanks Martin that helps a bit. Here's a test case that reproduces the layout issue I was seeing. The layout code is very basic and computation of the size is left to the base class. The computed width is wrong. The error seems to be that the compute* methods in SkinBase simply don't apply. I believe this is the issue I had with BreadCrumbBar in ControlsFX. Would that be your evaluation as well? It seems odd, since the compute* methods in Parent and SkinBase only look at *managed* nodes in the calculation. Doesn't that partially contradict, "...we can use layout bound's x, y already at compute* methods as this is something not managed by Parent and may be set through relocate() explicitly by the developer.", because managed nodes would be positioned by the layout code. Cheers, Scott On Fri, Dec 19, 2014 at 4:12 AM, Martin Sladecek wrote: > > Hi Scott, > > On 18.12.2014 22:49, Scott Palmer wrote: > >> Short Version: >> >> Is there good documentation on how JavaFX performs layout? (Not specific >> layouts, but layout in general.) >> > Not an official documentation I'm afraid (at least I don't know of any), > just the javadoc and a few blog posts: > Amy Fowler made some short introduction about layouts here: > https://amyfowlersblog.wordpress.com/2011/06/02/ > javafx2-0-layout-a-class-tour/ > I tried to explain some parts of the layout process that were confusing > people from time to time (based on the JIRA issues that were reported to > me): > https://blogs.oracle.com/jfxprg/entry/the_peculiarities_of_javafx_layout > (I'm sorry I never got to make part 2 :-( ). > > > >> >> Long Version: >> >> I was looking into a layout issue in ControlsFX (BreadCrumbBar width is >> reported incorrectly and it doesn't behave when right-aligned). >> >> What I found is that Parent and SkinBase assume that layout has already >> occurred on child nodes when computing the preferred width/height. The >> JavaDocs indicate this is a known assumption: >> >> * Calculates the preferred width of this {@code SkinBase}. The >> default >> * implementation calculates this width as the width of the area >> occupied >> * by its managed children when they are positioned at their >> * current positions at their preferred widths. >> >> Parent.computePrefWidth(double height) javadocs contain the exact same >> comment. >> >> Note however that the Region class documents >> Region.computePrefWidth(double >> height) differently. It simply states: >> >> * Computes the preferred width of this region for the given height. >> * Region subclasses should override this method to return an >> appropriate >> * value based on their content and layout strategy. If the subclass >> * doesn't have a VERTICAL content bias, then the height parameter >> can >> be >> * ignored. >> >> Node.prefWidth(double height), which is what >> Control.computePrefWidth(double height) delegates to if there is no >> SkinBase, clearly states: >> "Returns the node's preferred width for use in layout calculations." >> >> It's the "for use in layout calculations" part, combined with the fact >> that >> prefWidth relies on the layout having already happened, that confuses me. >> >> Clearly layout is working in most cases, so this must all work out in the >> general case. But as I understand it layout happens top-down, so >> constraints imposed by the parent container must be accounted for when >> positioning and sizing the children. That implies that the child nodes >> are >> not yet laid out when their preferred size is queried. >> >> I fixed the issues I was having with BreadCrumbBar by overriding the >> implementation of computePrefWidth(double height) with one that does not >> care about the current X position of the child Nodes. It still relies on >> the layout bounds via Node.prefWidth(double height), and duplicates some >> of >> the calculations that an actual layout will do, but it worked to solve the >> problems of right-aligned layout and a widthProperty that was clearly >> lying. >> >> I feel like I am missing something fundamental about how Layout works >> though. >> Is there documentation that explains the general layout algorithm and how >> to make sense of the apparent circular dependency? >> > The way it should work is that pref* min* max* methods > should be able to compute the layout without the layout actually > happening. This is basically a kind-of 2-pass top-down layout: > take a root (or any other parent in a tree) you want to layout. First, the > computation of size hints happens (and might be traversing down the tree). > After this stage, you know the size hints of the root's children, but no > layout happened yet. > Now the layout happens and the children are given their sizes (which might > not be equal to pref size), the layout is done recursively on the children > (now they know their final size they have all the information). > Theoretically, you could even cache the size hints in your skins (until > some of their prerequisites change) and use them at any stage of the layout > pass, even as the parent's sizes change during the layout. > This approach also means that size hints cannot depend on their ancestor's > size (which is something many people tried to do). > But it seems you already understand all this well. > > Now the confusing parts: > * Some default implementation look like they rely on the layout, but this > is actually because they have no layout by default. Or more commonly, the > layout does just the resize, not movement. This means we can use layout > bound's x, y already at compute* methods as this is something not managed > by Parent and may be set through relocate() explicitly by the developer. I > see SkinBase does actually moves the children by default (to contentX, > contentY) and yet still uses layout bounds in compute* methods. This might > lead to a bug in certain cases IMO, but usually would work as the position > does not change. Maybe some child's margin change could break this, I would > have to play with it to find out. > > Probably one JIRA task here you could file would be to improve the javadoc > so that it's clear what is managed by class and what not, so that the > developer knows what is expected to be changed explicitly and is never > changed from within the class. > > *Group (with autosize) is an exception and it's preferred size depends on > children's layout bounds which depend on the actual layout (!). This might > complicate the layout and brings a certain complexity to the whole layout > mechanism, so I'm not particularly proud of this, but there was no other > way to fix the problems we had with Group without braking > backward-compatibility and actually the most important functionality of the > Group - that is that it's layout bounds include the full bounds of it's > children (inc. effects et al.), which means we can't compute it's preferred > size based on the children's size hints, we really need to do the actual > layout first. > > Hope it helps! > > -Martin > From chien.yang at oracle.com Fri Dec 19 19:13:44 2014 From: chien.yang at oracle.com (Chien Yang) Date: Fri, 19 Dec 2014 11:13:44 -0800 Subject: [8u60] Code Review Request For RT-30193: PrismSettings minTextureSize does not work Message-ID: <549478E8.6040907@oracle.com> Hi Jim and Kevin, Please review this fix: JIRA: https://javafx-jira.kenai.com/browse/RT-30193 Webrev: http://cr.openjdk.java.net/~ckyang/RT-30193/webrev.00/ Thanks, - Chien From kevin.rushforth at oracle.com Fri Dec 19 23:43:02 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Fri, 19 Dec 2014 15:43:02 -0800 Subject: [8u60] review request: RT-39702: [SWT] No possibility to select text in FX content by using mouse dragging Message-ID: <5494B806.5080909@oracle.com> Anton, Please review: https://javafx-jira.kenai.com/browse/RT-39702 http://cr.openjdk.java.net/~kcr/RT-39702/webrev.00/ Thanks. -- Kevin From elina.kleyman at oracle.com Sun Dec 21 16:34:28 2014 From: elina.kleyman at oracle.com (Elina Kleyman) Date: Sun, 21 Dec 2014 08:34:28 -0800 (PST) Subject: [8u60] review request: RT-39546 - HelloSanity should close the screen grab window when you leave the section. Message-ID: Kevin, Dave, Please review fix for: JIRA: https://javafx-jira.kenai.com/browse/RT-39546 Webrev: http://cr.openjdk.java.net/~ekleyman/RT-39546/webrev/ Thanks, Elina From fbrunnerlist at gmx.ch Mon Dec 22 12:13:49 2014 From: fbrunnerlist at gmx.ch (Florian Brunner) Date: Mon, 22 Dec 2014 13:13:49 +0100 Subject: SplitPane layout question Message-ID: <1722489.rAVav3zaCZ@andor> Hi, Sometimes when I'm setting the divider positions of a SplitPane programmatically my value get overridden again by some JavaFX internal layout code. For debugging purposes I've added a listener to the position property of the divider and have thrown a RuntimeException to see the stack trace. It looks like this: ------------------------------------------------------------------------------------------ at com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(ExpressionHelper.java:361) at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81) at javafx.beans.property.DoublePropertyBase.fireValueChangedEvent(DoublePropertyBase.java:106) at javafx.beans.property.DoublePropertyBase.markInvalid(DoublePropertyBase.java:113) at javafx.beans.property.DoublePropertyBase.set(DoublePropertyBase.java:146) at javafx.scene.control.SplitPane$Divider.setPosition(SplitPane.java:486) at com.sun.javafx.scene.control.skin.SplitPaneSkin.setAbsoluteDividerPos(SplitPaneSkin.java:310) at com.sun.javafx.scene.control.skin.SplitPaneSkin.setupContentAndDividerForLayout(SplitPaneSkin.java:502) at com.sun.javafx.scene.control.skin.SplitPaneSkin.layoutChildren(SplitPaneSkin.java:817) at javafx.scene.control.Control.layoutChildren(Control.java:589) at javafx.scene.Parent.layout(Parent.java:1074) at javafx.scene.Parent.layout(Parent.java:1080) at javafx.scene.Parent.layout(Parent.java:1080) at javafx.scene.Parent.layout(Parent.java:1080) at javafx.scene.Parent.layout(Parent.java:1080) at javafx.scene.Parent.layout(Parent.java:1080) at javafx.scene.Parent.layout(Parent.java:1080) at javafx.scene.Parent.layout(Parent.java:1080) at javafx.scene.Parent.layout(Parent.java:1080) at javafx.scene.Scene.doLayoutPass(Scene.java:532) at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2363) at com.sun.javafx.tk.Toolkit.lambda$runPulse$28(Toolkit.java:314) at com.sun.javafx.tk.Toolkit$$Lambda$230/25595560.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:313) at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:340) at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:451) at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:431) at com.sun.javafx.tk.quantum.QuantumToolkit.lambda$runToolkit$363(QuantumToolkit.java:298) at com.sun.javafx.tk.quantum.QuantumToolkit$$Lambda$59/174792896.run(Unknown Source) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method) at com.sun.glass.ui.gtk.GtkApplication.lambda$null$45(GtkApplication.java:126) at com.sun.glass.ui.gtk.GtkApplication$$Lambda$55/1472148546.run(Unknown Source) at java.lang.Thread.run(Thread.java:745) ------------------------------------------------------------------------------------------ It doesn't seem to get triggered by some code of mine (at least not directly according to the stack trace). Why is this re-layout happing here? Why does it override the values I've set for the divider positions? How can stop this? Thanks for some insights. -Florian From swpalmer at gmail.com Mon Dec 22 12:19:37 2014 From: swpalmer at gmail.com (Scott Palmer) Date: Mon, 22 Dec 2014 07:19:37 -0500 Subject: SplitPane layout question In-Reply-To: <1722489.rAVav3zaCZ@andor> References: <1722489.rAVav3zaCZ@andor> Message-ID: <1DFC95C0-D2FB-4754-90B3-20229B1C0061@gmail.com> The min/max sizes of the children are probably being respected. Scott > On Dec 22, 2014, at 7:13 AM, Florian Brunner wrote: > > Hi, > > Sometimes when I'm setting the divider positions of a SplitPane > programmatically my value get overridden again by some JavaFX internal layout > code. > > For debugging purposes I've added a listener to the position property of the > divider and have thrown a RuntimeException to see the stack trace. It looks > like this: > > ------------------------------------------------------------------------------------------ > at > com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(ExpressionHelper.java:361) > at > com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81) > at > javafx.beans.property.DoublePropertyBase.fireValueChangedEvent(DoublePropertyBase.java:106) > at > javafx.beans.property.DoublePropertyBase.markInvalid(DoublePropertyBase.java:113) > at > javafx.beans.property.DoublePropertyBase.set(DoublePropertyBase.java:146) > at javafx.scene.control.SplitPane$Divider.setPosition(SplitPane.java:486) > at > com.sun.javafx.scene.control.skin.SplitPaneSkin.setAbsoluteDividerPos(SplitPaneSkin.java:310) > at > com.sun.javafx.scene.control.skin.SplitPaneSkin.setupContentAndDividerForLayout(SplitPaneSkin.java:502) > at > com.sun.javafx.scene.control.skin.SplitPaneSkin.layoutChildren(SplitPaneSkin.java:817) > at javafx.scene.control.Control.layoutChildren(Control.java:589) > at javafx.scene.Parent.layout(Parent.java:1074) > at javafx.scene.Parent.layout(Parent.java:1080) > at javafx.scene.Parent.layout(Parent.java:1080) > at javafx.scene.Parent.layout(Parent.java:1080) > at javafx.scene.Parent.layout(Parent.java:1080) > at javafx.scene.Parent.layout(Parent.java:1080) > at javafx.scene.Parent.layout(Parent.java:1080) > at javafx.scene.Parent.layout(Parent.java:1080) > at javafx.scene.Parent.layout(Parent.java:1080) > at javafx.scene.Scene.doLayoutPass(Scene.java:532) > at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2363) > at com.sun.javafx.tk.Toolkit.lambda$runPulse$28(Toolkit.java:314) > at com.sun.javafx.tk.Toolkit$$Lambda$230/25595560.run(Unknown Source) > at java.security.AccessController.doPrivileged(Native Method) > at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:313) > at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:340) > at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:451) > at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:431) > at > com.sun.javafx.tk.quantum.QuantumToolkit.lambda$runToolkit$363(QuantumToolkit.java:298) > at > com.sun.javafx.tk.quantum.QuantumToolkit$$Lambda$59/174792896.run(Unknown > Source) > at > com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) > at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method) > at > com.sun.glass.ui.gtk.GtkApplication.lambda$null$45(GtkApplication.java:126) > at com.sun.glass.ui.gtk.GtkApplication$$Lambda$55/1472148546.run(Unknown > Source) > at java.lang.Thread.run(Thread.java:745) > ------------------------------------------------------------------------------------------ > > It doesn't seem to get triggered by some code of mine (at least not directly > according to the stack trace). > > Why is this re-layout happing here? > Why does it override the values I've set for the divider positions? > How can stop this? > > Thanks for some insights. > > -Florian From kevin.rushforth at oracle.com Mon Dec 22 20:13:28 2014 From: kevin.rushforth at oracle.com (Kevin Rushforth) Date: Mon, 22 Dec 2014 12:13:28 -0800 Subject: 8u-dev unlocked following this week's sanity testing Message-ID: <54987B68.4040502@oracle.com> From tbee at tbee.org Tue Dec 23 11:27:06 2014 From: tbee at tbee.org (Tom Eugelink) Date: Tue, 23 Dec 2014 12:27:06 +0100 Subject: switching skins at runtime Message-ID: <5499518A.3080301@tbee.org> Is it allowed / supported to execute setSkin with a new skin on a control that is part of a scene? Tom From david.grieve at oracle.com Tue Dec 23 13:36:38 2014 From: david.grieve at oracle.com (David Grieve) Date: Tue, 23 Dec 2014 08:36:38 -0500 Subject: switching skins at runtime In-Reply-To: <5499518A.3080301@tbee.org> References: <5499518A.3080301@tbee.org> Message-ID: <54996FE6.7090007@oracle.com> Yes, it is allowed. But know that there is some code in setSkin that prevents setting a skin that is either instance equal or the same class. On 12/23/14, 6:27 AM, Tom Eugelink wrote: > Is it allowed / supported to execute setSkin with a new skin on a > control that is part of a scene? > > Tom From tbee at tbee.org Tue Dec 23 14:39:25 2014 From: tbee at tbee.org (Tom Eugelink) Date: Tue, 23 Dec 2014 15:39:25 +0100 Subject: switching skins at runtime In-Reply-To: <54996FE6.7090007@oracle.com> References: <5499518A.3080301@tbee.org> <54996FE6.7090007@oracle.com> Message-ID: <54997E9D.4040108@tbee.org> Then this NPE on getSkinnable() when switching Agenda's skin when the control is already shown (instead of when created) must be my doing some how. Thanks! Tom On 23-12-2014 14:36, David Grieve wrote: > Yes, it is allowed. But know that there is some code in setSkin that prevents setting a skin that is either instance equal or the same class. > > On 12/23/14, 6:27 AM, Tom Eugelink wrote: >> Is it allowed / supported to execute setSkin with a new skin on a control that is part of a scene? >> >> Tom > From dave at jfree.org Tue Dec 23 18:52:19 2014 From: dave at jfree.org (David Gilbert) Date: Tue, 23 Dec 2014 19:52:19 +0100 Subject: SplitPane layout question In-Reply-To: <1DFC95C0-D2FB-4754-90B3-20229B1C0061@gmail.com> References: <1722489.rAVav3zaCZ@andor> <1DFC95C0-D2FB-4754-90B3-20229B1C0061@gmail.com> Message-ID: Maybe related to this bug: https://javafx-jira.kenai.com/browse/RT-38851 Best regards, David Gilbert http://www.jfree.org/ On 22 Dec 2014, at 13:19, Scott Palmer wrote: > The min/max sizes of the children are probably being respected. > > Scott > >> On Dec 22, 2014, at 7:13 AM, Florian Brunner wrote: >> >> Hi, >> >> Sometimes when I'm setting the divider positions of a SplitPane >> programmatically my value get overridden again by some JavaFX internal layout >> code. >> >> For debugging purposes I've added a listener to the position property of the >> divider and have thrown a RuntimeException to see the stack trace. It looks >> like this: >> >> ------------------------------------------------------------------------------------------ >> at >> com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(ExpressionHelper.java:361) >> at >> com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81) >> at >> javafx.beans.property.DoublePropertyBase.fireValueChangedEvent(DoublePropertyBase.java:106) >> at >> javafx.beans.property.DoublePropertyBase.markInvalid(DoublePropertyBase.java:113) >> at >> javafx.beans.property.DoublePropertyBase.set(DoublePropertyBase.java:146) >> at javafx.scene.control.SplitPane$Divider.setPosition(SplitPane.java:486) >> at >> com.sun.javafx.scene.control.skin.SplitPaneSkin.setAbsoluteDividerPos(SplitPaneSkin.java:310) >> at >> com.sun.javafx.scene.control.skin.SplitPaneSkin.setupContentAndDividerForLayout(SplitPaneSkin.java:502) >> at >> com.sun.javafx.scene.control.skin.SplitPaneSkin.layoutChildren(SplitPaneSkin.java:817) >> at javafx.scene.control.Control.layoutChildren(Control.java:589) >> at javafx.scene.Parent.layout(Parent.java:1074) >> at javafx.scene.Parent.layout(Parent.java:1080) >> at javafx.scene.Parent.layout(Parent.java:1080) >> at javafx.scene.Parent.layout(Parent.java:1080) >> at javafx.scene.Parent.layout(Parent.java:1080) >> at javafx.scene.Parent.layout(Parent.java:1080) >> at javafx.scene.Parent.layout(Parent.java:1080) >> at javafx.scene.Parent.layout(Parent.java:1080) >> at javafx.scene.Parent.layout(Parent.java:1080) >> at javafx.scene.Scene.doLayoutPass(Scene.java:532) >> at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2363) >> at com.sun.javafx.tk.Toolkit.lambda$runPulse$28(Toolkit.java:314) >> at com.sun.javafx.tk.Toolkit$$Lambda$230/25595560.run(Unknown Source) >> at java.security.AccessController.doPrivileged(Native Method) >> at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:313) >> at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:340) >> at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:451) >> at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:431) >> at >> com.sun.javafx.tk.quantum.QuantumToolkit.lambda$runToolkit$363(QuantumToolkit.java:298) >> at >> com.sun.javafx.tk.quantum.QuantumToolkit$$Lambda$59/174792896.run(Unknown >> Source) >> at >> com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) >> at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method) >> at >> com.sun.glass.ui.gtk.GtkApplication.lambda$null$45(GtkApplication.java:126) >> at com.sun.glass.ui.gtk.GtkApplication$$Lambda$55/1472148546.run(Unknown >> Source) >> at java.lang.Thread.run(Thread.java:745) >> ------------------------------------------------------------------------------------------ >> >> It doesn't seem to get triggered by some code of mine (at least not directly >> according to the stack trace). >> >> Why is this re-layout happing here? >> Why does it override the values I've set for the divider positions? >> How can stop this? >> >> Thanks for some insights. >> >> -Florian From danno.ferrin at oracle.com Tue Dec 23 23:15:45 2014 From: danno.ferrin at oracle.com (Danno Ferrin) Date: Tue, 23 Dec 2014 16:15:45 -0700 Subject: [8u40] review request: RT-39733 - Packaging with a JRE as installed fails codesign on OSX 10.9.5 or 10.10 Message-ID: <0C0A65CF-6C30-45AC-A78C-C09C3C482BFF@oracle.com> Kevin, David, please review JIRA: https://javafx-jira.kenai.com/browse/RT-39733 Webrev: http://cr.openjdk.java.net/~shemnon/RT-39733/webrev.00/ Current Webrev is against 8u-dev , I'll get one against 8u40 soonish. From elina.kleyman at oracle.com Wed Dec 24 15:53:25 2014 From: elina.kleyman at oracle.com (Elina Kleyman) Date: Wed, 24 Dec 2014 07:53:25 -0800 (PST) Subject: FW: [8u60] review request: RT-39546 - HelloSanity should close the screen grab window when you leave the section. Message-ID: <9506d04a-7f79-48a6-9b5c-6b955881d0d2@default> Dave, Morris, Please review new fix for https://javafx-jira.kenai.com/browse/RT-39546 Webrev: http://cr.openjdk.java.net/~ekleyman/RT-39477_final/ Added null case verification. Verified by WindowSceneInitDisposeTest execution, no more exception has been thrown. Thanks, Elina -----Original Message----- From: Elina Kleyman Sent: ????? 21 ????? 2014 18:34 To: Kevin Rushforth; David Hill Cc: openjfx-dev at openjdk.java.net Subject: [8u60] review request: RT-39546 - HelloSanity should close the screen grab window when you leave the section. Kevin, Dave, Please review fix for: JIRA: https://javafx-jira.kenai.com/browse/RT-39546 Webrev: http://cr.openjdk.java.net/~ekleyman/RT-39546/webrev/ Thanks, Elina From peter.penzov at gmail.com Wed Dec 24 20:54:18 2014 From: peter.penzov at gmail.com (Peter Penzov) Date: Wed, 24 Dec 2014 22:54:18 +0200 Subject: Release date for Java 8u40 Message-ID: Hi All, What is the release date for Java 8u40? BR From chien.yang at oracle.com Wed Dec 24 22:42:56 2014 From: chien.yang at oracle.com (Chien Yang) Date: Wed, 24 Dec 2014 14:42:56 -0800 Subject: Release date for Java 8u40 In-Reply-To: References: Message-ID: <549B4170.2070702@oracle.com> Scheduled GA is March 2015: http://openjdk.java.net/projects/jdk8u/releases/8u40.html - Chien On 12/24/2014 12:54 PM, Peter Penzov wrote: > Hi All, > What is the release date for Java 8u40? > > BR From nbpratt at gmail.com Thu Dec 25 01:40:44 2014 From: nbpratt at gmail.com (Nick Pratt) Date: Wed, 24 Dec 2014 20:40:44 -0500 Subject: FX on Raspberry Pi - PiTFT displays Message-ID: Im trying to get a JavaFX app to run on a RaspberryPi with attached TFT display (mapped as /dev/fb1). From my research it seems that Java/OpenJFX uses device 0 by default. I saw a posting in May 2014 about a request/suggestion to perhaps make the device configurable (something in dispmanCursor.c) but the thread didn't have any further activity on it: see: http://mail.openjdk.java.net/pipermail/openjfx-dev/2014-May/013743.html Is it possible to tell OpenJFX to use a different output device other than the default '0' so that JavaFX apps can be run on displays other than the default HDMI output? Regards Nick From peter.penzov at gmail.com Thu Dec 25 23:13:30 2014 From: peter.penzov at gmail.com (Peter Penzov) Date: Fri, 26 Dec 2014 01:13:30 +0200 Subject: TitledPane background color Message-ID: Hi All, I have a question how to change TitledPane background color. I tested this code: public class MainApp extends Application { @Override public void start(Stage stage) throws Exception { TitledPane pane = new TitledPane("Title", null); pane.setStyle("-fx-focus-color: transparent; -fx-background-color: green;"); pane.setCollapsible(false); pane.setPrefSize(300, 500); Scene scene = new Scene(pane); stage.setTitle("JavaFX and Maven"); stage.setScene(scene); stage.show(); } public static void main(String[] args) { launch(args); } } I tried to set the background color to green but when I run the code the background color is gray. What is the proper way to change the background color of the TitledPane body? BR, Peter From mario at datenwort.at Fri Dec 26 09:30:16 2014 From: mario at datenwort.at (Mario Ivankovits) Date: Fri, 26 Dec 2014 09:30:16 +0000 Subject: NPE in VirtualFlow Message-ID: <8D841C30-F2AC-4262-A26D-F49A5C348812@datenwort.at> Hi! Every now and then I get the exception down there (starting with JavaFX 8u40-b18 if I remember correctly) It seems it has something to to with the fact that the items list of one of my TableViews gets cleared and so no cells are visible any more. I was not yet able to always reproduce that. I will try to do that, but probably someone has a clue anyway? BR, Mario java.lang.NullPointerException at com.sun.javafx.scene.control.skin.VirtualFlow.getCellIndex(VirtualFlow.java:1726) at com.sun.javafx.scene.control.skin.VirtualFlow.addLeadingCells(VirtualFlow.java:1274) at com.sun.javafx.scene.control.skin.VirtualFlow.layoutChildren(VirtualFlow.java:1194) at com.sun.javafx.scene.control.skin.VirtualFlow.setCellCount(VirtualFlow.java:231) at com.sun.javafx.scene.control.skin.TableViewSkinBase.updateRowCount(TableViewSkinBase.java:554) at com.sun.javafx.scene.control.skin.VirtualContainerBase.checkState(VirtualContainerBase.java:113) at com.sun.javafx.scene.control.skin.VirtualContainerBase.layoutChildren(VirtualContainerBase.java:108) at com.sun.javafx.scene.control.skin.TableViewSkinBase.layoutChildren(TableViewSkinBase.java:683) at javafx.scene.control.Control.layoutChildren(Control.java:576) at javafx.scene.Parent.layout(Parent.java:1076) at javafx.scene.Parent.layout(Parent.java:1082) at javafx.scene.Parent.layout(Parent.java:1082) at javafx.scene.Parent.layout(Parent.java:1082) at javafx.scene.Parent.layout(Parent.java:1082) at javafx.scene.Parent.layout(Parent.java:1082) at javafx.scene.Parent.layout(Parent.java:1082) at javafx.scene.Parent.layout(Parent.java:1082) at javafx.scene.Parent.layout(Parent.java:1082) at javafx.scene.Parent.layout(Parent.java:1082) at javafx.scene.Scene.doLayoutPass(Scene.java:552) at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2397) at com.sun.javafx.tk.Toolkit.lambda$runPulse$30(Toolkit.java:314) at com.sun.javafx.tk.Toolkit$$Lambda$243/122134773.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:313) at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:340) at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:525) at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:505) at com.sun.javafx.tk.quantum.QuantumToolkit.lambda$runToolkit$400(QuantumToolkit.java:334) at com.sun.javafx.tk.quantum.QuantumToolkit$$Lambda$41/2090707712.run(Unknown Source) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) From tbee at tbee.org Fri Dec 26 21:55:52 2014 From: tbee at tbee.org (Tom Eugelink) Date: Fri, 26 Dec 2014 22:55:52 +0100 Subject: switching skins at runtime In-Reply-To: <54997E9D.4040108@tbee.org> References: <5499518A.3080301@tbee.org> <54996FE6.7090007@oracle.com> <54997E9D.4040108@tbee.org> Message-ID: <549DD968.9050205@tbee.org> Hm, I've got it working, but I need to call a "getChildren().clear()" before I start creating nodes in a skin. If not, the control will retain the nodes an old skin has created. Also any style classes that were assigned remain, but those can be reset easily. Never the less I feel that setSkin() should clear the children and reset the style classes itself? Tom On 23-12-2014 15:39, Tom Eugelink wrote: > Then this NPE on getSkinnable() when switching Agenda's skin when the control is already shown (instead of when created) must be my doing some how. Thanks! > > Tom > > > On 23-12-2014 14:36, David Grieve wrote: >> Yes, it is allowed. But know that there is some code in setSkin that prevents setting a skin that is either instance equal or the same class. >> >> On 12/23/14, 6:27 AM, Tom Eugelink wrote: >>> Is it allowed / supported to execute setSkin with a new skin on a control that is part of a scene? >>> >>> Tom >> > From nbpratt at gmail.com Mon Dec 29 00:35:37 2014 From: nbpratt at gmail.com (Nick Pratt) Date: Sun, 28 Dec 2014 19:35:37 -0500 Subject: Building Openjfx on Centos 6.6 Message-ID: Does anyone have any tips on getting Openjfx (latest source as of 2014-12-28 19:00 EST) to build on a Centos 6.6 box? Im following the wiki for Linux builds and grabbed Gradle 1.8 (does the latest 2.2 work?) but Im failing to build with the following error: [work at nyprod1 rt]# /opt/gradle/bin/gradle :buildSrc:generateGrammarSource UP-TO-DATE :buildSrc:compileJava UP-TO-DATE :buildSrc:compileGroovy UP-TO-DATE :buildSrc:processResources UP-TO-DATE :buildSrc:classes UP-TO-DATE :buildSrc:jar UP-TO-DATE :buildSrc:assemble UP-TO-DATE :buildSrc:compileTestJava UP-TO-DATE :buildSrc:compileTestGroovy UP-TO-DATE :buildSrc:processTestResources UP-TO-DATE :buildSrc:testClasses UP-TO-DATE :buildSrc:test UP-TO-DATE :buildSrc:check UP-TO-DATE :buildSrc:build UP-TO-DATE FAILURE: Build failed with an exception. * Where: Script '/work/WorkingCopies/rt/buildSrc/linux.gradle' line: 78 * What went wrong: A problem occurred evaluating script. > Cannot invoke method split() on null object * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. BUILD FAILED Total time: 8.96 secs If anyone has any tips or suggestions to get this compiling on Centos 6.x they would be most appreciated. From morris.meyer at oracle.com Mon Dec 29 02:11:20 2014 From: morris.meyer at oracle.com (Morris Meyer) Date: Sun, 28 Dec 2014 21:11:20 -0500 Subject: Building Openjfx on Centos 6.6 In-Reply-To: References: Message-ID: <41420E9B-67A0-4B90-A0D7-A8116A3A970E@oracle.com> What JDK are you using? That looks like an older version of the String class. Gradle 1.8 is recommended. --mm > On Dec 28, 2014, at 7:35 PM, Nick Pratt wrote: > > Does anyone have any tips on getting Openjfx (latest source as of > 2014-12-28 19:00 EST) to build on a Centos 6.6 box? > > Im following the wiki for Linux builds and grabbed Gradle 1.8 (does the > latest 2.2 work?) but Im failing to build with the following error: > > [work at nyprod1 rt]# /opt/gradle/bin/gradle > > :buildSrc:generateGrammarSource UP-TO-DATE > > :buildSrc:compileJava UP-TO-DATE > > :buildSrc:compileGroovy UP-TO-DATE > > :buildSrc:processResources UP-TO-DATE > > :buildSrc:classes UP-TO-DATE > > :buildSrc:jar UP-TO-DATE > > :buildSrc:assemble UP-TO-DATE > > :buildSrc:compileTestJava UP-TO-DATE > > :buildSrc:compileTestGroovy UP-TO-DATE > > :buildSrc:processTestResources UP-TO-DATE > > :buildSrc:testClasses UP-TO-DATE > > :buildSrc:test UP-TO-DATE > > :buildSrc:check UP-TO-DATE > > :buildSrc:build UP-TO-DATE > > > FAILURE: Build failed with an exception. > > > * Where: > > Script '/work/WorkingCopies/rt/buildSrc/linux.gradle' line: 78 > > > * What went wrong: > > A problem occurred evaluating script. > >> Cannot invoke method split() on null object > > > * Try: > > Run with --stacktrace option to get the stack trace. Run with --info or > --debug option to get more log output. > > > BUILD FAILED > > > Total time: 8.96 secs > > > If anyone has any tips or suggestions to get this compiling on Centos 6.x > they would be most appreciated. From lehmann at media-interactive.de Mon Dec 29 10:53:34 2014 From: lehmann at media-interactive.de (Werner Lehmann) Date: Mon, 29 Dec 2014 11:53:34 +0100 Subject: switching skins at runtime In-Reply-To: <549DD968.9050205@tbee.org> References: <5499518A.3080301@tbee.org> <54996FE6.7090007@oracle.com> <54997E9D.4040108@tbee.org> <549DD968.9050205@tbee.org> Message-ID: <54A132AE.1060303@media-interactive.de> I think this is something you need to do in SkinBase.dispose. Werner On 26.12.2014 22:55, Tom Eugelink wrote: > Hm, I've got it working, but I need to call a "getChildren().clear()" > before I start creating nodes in a skin. If not, the control will > retain the nodes an old skin has created. Also any style classes that > were assigned remain, but those can be reset easily. > > Never the less I feel that setSkin() should clear the children and > reset the style classes itself? From lehmann at media-interactive.de Mon Dec 29 10:55:53 2014 From: lehmann at media-interactive.de (Werner Lehmann) Date: Mon, 29 Dec 2014 11:55:53 +0100 Subject: switching skins at runtime In-Reply-To: <54A1308A.6030303@tbee.org> References: <5499518A.3080301@tbee.org> <54996FE6.7090007@oracle.com> <54997E9D.4040108@tbee.org> <549DD968.9050205@tbee.org> <54A11FB9.9000707@media-interactive.de> <54A1308A.6030303@tbee.org> Message-ID: <54A13339.1070406@media-interactive.de> That's what I meant: clear children, or undo whatever you are doing to them, in dispose(). At any rate I wouldn't know if that is correct. It is just how I assume this would work. On 29.12.2014 11:44, Tom Eugelink wrote: > That works for unbinding listeners to skinnable and the reset code for style class, I still need to clear the childeren. > > Tom From tbee at tbee.org Mon Dec 29 11:14:20 2014 From: tbee at tbee.org (Tom Eugelink) Date: Mon, 29 Dec 2014 12:14:20 +0100 Subject: switching skins at runtime In-Reply-To: <54A13339.1070406@media-interactive.de> References: <5499518A.3080301@tbee.org> <54996FE6.7090007@oracle.com> <54997E9D.4040108@tbee.org> <549DD968.9050205@tbee.org> <54A11FB9.9000707@media-interactive.de> <54A1308A.6030303@tbee.org> <54A13339.1070406@media-interactive.de> Message-ID: <54A1378C.3060601@tbee.org> Clearing the children in dispose does not work, the control than actually has no nodes what so ever, so that still is done when building the new skin. Tom On 29-12-2014 11:55, Werner Lehmann wrote: > That's what I meant: clear children, or undo whatever you are doing to them, in dispose(). At any rate I wouldn't know if that is correct. It is just how I assume this would work. > > On 29.12.2014 11:44, Tom Eugelink wrote: >> That works for unbinding listeners to skinnable and the reset code for style class, I still need to clear the childeren. >> >> Tom From David.Hill at Oracle.com Mon Dec 29 18:27:20 2014 From: David.Hill at Oracle.com (David Hill) Date: Mon, 29 Dec 2014 13:27:20 -0500 Subject: FX on Raspberry Pi - PiTFT displays In-Reply-To: References: Message-ID: <54A19D08.90609@Oracle.com> On 12/24/14, 8:40 PM, Nick Pratt wrote: > Im trying to get a JavaFX app to run on a RaspberryPi with attached TFT > display (mapped as /dev/fb1). From my research it seems that Java/OpenJFX > uses device 0 by default. I saw a posting in May 2014 about a > request/suggestion to perhaps make the device configurable (something > in dispmanCursor.c) > but the thread didn't have any further activity on it: > see: http://mail.openjdk.java.net/pipermail/openjfx-dev/2014-May/013743.html > > Is it possible to tell OpenJFX to use a different output device other than > the default '0' so that JavaFX apps can be run on displays other than the > default HDMI output? > > Regards > > Nick Nick, - looks like Daniel fixed this one: https://javafx-jira.kenai.com/browse/RT-36960 settings are in the Jira. -- David Hill Java Embedded Development "A man's feet should be planted in his country, but his eyes should survey the world." -- George Santayana (1863 - 1952) From nbpratt at gmail.com Mon Dec 29 18:35:52 2014 From: nbpratt at gmail.com (Nick Pratt) Date: Mon, 29 Dec 2014 13:35:52 -0500 Subject: FX on Raspberry Pi - PiTFT displays In-Reply-To: <54A19D08.90609@Oracle.com> References: <54A19D08.90609@Oracle.com> Message-ID: Thats great - thanks for the JIRA link. I just need to get the openjfx to cross compile on my ubuntu box and I'm golden! Nick On Mon, Dec 29, 2014 at 1:27 PM, David Hill wrote: > On 12/24/14, 8:40 PM, Nick Pratt wrote: > >> Im trying to get a JavaFX app to run on a RaspberryPi with attached TFT >> display (mapped as /dev/fb1). From my research it seems that Java/OpenJFX >> uses device 0 by default. I saw a posting in May 2014 about a >> request/suggestion to perhaps make the device configurable (something >> in dispmanCursor.c) >> but the thread didn't have any further activity on it: >> see: http://mail.openjdk.java.net/pipermail/openjfx-dev/2014- >> May/013743.html >> >> Is it possible to tell OpenJFX to use a different output device other than >> the default '0' so that JavaFX apps can be run on displays other than the >> default HDMI output? >> >> Regards >> >> Nick >> > Nick, - looks like Daniel fixed this one: > > https://javafx-jira.kenai.com/browse/RT-36960 > > settings are in the Jira. > > -- > David Hill > Java Embedded Development > > "A man's feet should be planted in his country, but his eyes should survey > the world." > -- George Santayana (1863 - 1952) > > From mike at plan99.net Mon Dec 29 23:28:49 2014 From: mike at plan99.net (Mike Hearn) Date: Mon, 29 Dec 2014 23:28:49 +0000 Subject: 3D shape not clipped by ScrollPane properly? Message-ID: I have a ScrollPane into which I put a Pane with a min width/height, and then I place a Button and a Sphere. For both of them I use setLayoutX/Y to move them around. Now when I scroll the ScrollPane I can see it move the button around correctly, and the sphere, but the sphere is able to draw over the scrollbars. It's not being clipped like the Button is. I have not configured any special cameras or the like. Do 3D objects clip differently to 2D objects? If so, why? From nbpratt at gmail.com Tue Dec 30 02:46:50 2014 From: nbpratt at gmail.com (Nick Pratt) Date: Mon, 29 Dec 2014 21:46:50 -0500 Subject: Building Openjfx on Centos 6.6 In-Reply-To: <41420E9B-67A0-4B90-A0D7-A8116A3A970E@oracle.com> References: <41420E9B-67A0-4B90-A0D7-A8116A3A970E@oracle.com> Message-ID: So I made some progress here: I had installed Ubuntu 14.x 64-bit version. Once I installed the ia32-libs (replacement versions for Ubuntu 14 since ia32-libs) isnt available anymore, I got the ARM HF to build. I installed on my Pi, but Im getting link errors when I try and run a JFX program: java -Djavafx.platform=monocle -Dmonocle.screen.fb=/dev/fb1 -jar JavaFXApp.jar Exception in thread "main" java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767) Caused by: java.lang.RuntimeException: java.lang.UnsatisfiedLinkError: com.sun.glass.ui.monocle.linux.Udev._open()J at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:296) at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:216) at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:653) at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:314) at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:305) ... 5 more Caused by: java.lang.UnsatisfiedLinkError: com.sun.glass.ui.monocle.linux.Udev._open()J at com.sun.glass.ui.monocle.linux.Udev._open(Native Method) at com.sun.glass.ui.monocle.linux.Udev.(Udev.java:68) at com.sun.glass.ui.monocle.linux.Udev.getInstance(Udev.java:54) at com.sun.glass.ui.monocle.linux.LinuxInputDeviceRegistry.(LinuxInputDeviceRegistry.java:77) at com.sun.glass.ui.monocle.linux.LinuxPlatform.createInputDeviceRegistry(LinuxPlatform.java:19) at com.sun.glass.ui.monocle.NativePlatform.getInputDeviceRegistry(NativePlatform.java:58) at com.sun.glass.ui.monocle.MonocleApplication.(MonocleApplication.java:78) at com.sun.glass.ui.monocle.MonoclePlatformFactory.createApplication(MonoclePlatformFactory.java:45) at com.sun.glass.ui.Application.run(Application.java:145) at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:281) ... 9 more So then I figured I try and get an Ubuntu 12.x 32-bit VM up and running and use that for a OpenJFX build since this is mentioned in the OpenJFX wiki. However, a clean install cant run sudo apt-get update due to missing package definitions - have Ubuntu (or whoever maintains this set of repos) removed the older 12.x packages (or started to)? I cant get gcc installed or updated because of this - and this is a fresh install direct from the Ubuntu 12.0.4 .iso On a related note, its not clear to me what Im supposed to do after compiling OpenJFX - what needs to be installed and where does it need to go - JAVA_HOME/jre/lib ? (just replace everything in there?) On Sun, Dec 28, 2014 at 9:11 PM, Morris Meyer wrote: > What JDK are you using? That looks like an older version of the String > class. Gradle 1.8 is recommended. > > --mm > > > > On Dec 28, 2014, at 7:35 PM, Nick Pratt wrote: > > > > Does anyone have any tips on getting Openjfx (latest source as of > > 2014-12-28 19:00 EST) to build on a Centos 6.6 box? > > > > Im following the wiki for Linux builds and grabbed Gradle 1.8 (does the > > latest 2.2 work?) but Im failing to build with the following error: > > > > [work at nyprod1 rt]# /opt/gradle/bin/gradle > > > > :buildSrc:generateGrammarSource UP-TO-DATE > > > > :buildSrc:compileJava UP-TO-DATE > > > > :buildSrc:compileGroovy UP-TO-DATE > > > > :buildSrc:processResources UP-TO-DATE > > > > :buildSrc:classes UP-TO-DATE > > > > :buildSrc:jar UP-TO-DATE > > > > :buildSrc:assemble UP-TO-DATE > > > > :buildSrc:compileTestJava UP-TO-DATE > > > > :buildSrc:compileTestGroovy UP-TO-DATE > > > > :buildSrc:processTestResources UP-TO-DATE > > > > :buildSrc:testClasses UP-TO-DATE > > > > :buildSrc:test UP-TO-DATE > > > > :buildSrc:check UP-TO-DATE > > > > :buildSrc:build UP-TO-DATE > > > > > > FAILURE: Build failed with an exception. > > > > > > * Where: > > > > Script '/work/WorkingCopies/rt/buildSrc/linux.gradle' line: 78 > > > > > > * What went wrong: > > > > A problem occurred evaluating script. > > > >> Cannot invoke method split() on null object > > > > > > * Try: > > > > Run with --stacktrace option to get the stack trace. Run with --info or > > --debug option to get more log output. > > > > > > BUILD FAILED > > > > > > Total time: 8.96 secs > > > > > > If anyone has any tips or suggestions to get this compiling on Centos 6.x > > they would be most appreciated. > From j.kapitza at schwarze-allianz.de Tue Dec 30 11:40:13 2014 From: j.kapitza at schwarze-allianz.de (Jens Kapitza) Date: Tue, 30 Dec 2014 12:40:13 +0100 Subject: Building Openjfx on Centos 6.6 In-Reply-To: References: Message-ID: <54A28F1D.3020404@schwarze-allianz.de> Hi Nick, i've read you found a solution, i had the same Problem (linux.grandle) in build folder there were some empty build files. as far as i can remember linux_tools.... the script tries to find cflags and linker options but there is an empty file (i've just deleted this file, clean rebuild works) the error with grandle 1.8 was behind this line 78 ^^ for the link errors; have you copied the libs (.so) files into your openjdk build (after the build there is a sdk folder with libs and jar) the so file have to be in the openjdk lib folder or (i think should work somewhere below /usr/lib -- Jens Kapitza Am 29.12.2014 um 01:35 schrieb Nick Pratt: > Does anyone have any tips on getting Openjfx (latest source as of > 2014-12-28 19:00 EST) to build on a Centos 6.6 box? > > Im following the wiki for Linux builds and grabbed Gradle 1.8 (does the > latest 2.2 work?) but Im failing to build with the following error: > > [work at nyprod1 rt]# /opt/gradle/bin/gradle > > :buildSrc:generateGrammarSource UP-TO-DATE > > :buildSrc:compileJava UP-TO-DATE > > :buildSrc:compileGroovy UP-TO-DATE > > :buildSrc:processResources UP-TO-DATE > > :buildSrc:classes UP-TO-DATE > > :buildSrc:jar UP-TO-DATE > > :buildSrc:assemble UP-TO-DATE > > :buildSrc:compileTestJava UP-TO-DATE > > :buildSrc:compileTestGroovy UP-TO-DATE > > :buildSrc:processTestResources UP-TO-DATE > > :buildSrc:testClasses UP-TO-DATE > > :buildSrc:test UP-TO-DATE > > :buildSrc:check UP-TO-DATE > > :buildSrc:build UP-TO-DATE > > > FAILURE: Build failed with an exception. > > > * Where: > > Script '/work/WorkingCopies/rt/buildSrc/linux.gradle' line: 78 > > > * What went wrong: > > A problem occurred evaluating script. > >> Cannot invoke method split() on null object > > * Try: > > Run with --stacktrace option to get the stack trace. Run with --info or > --debug option to get more log output. > > > BUILD FAILED > > > Total time: 8.96 secs > > > If anyone has any tips or suggestions to get this compiling on Centos 6.x > they would be most appreciated. From nbpratt at gmail.com Tue Dec 30 12:37:28 2014 From: nbpratt at gmail.com (Nick Pratt) Date: Tue, 30 Dec 2014 07:37:28 -0500 Subject: Building Openjfx on Centos 6.6 In-Reply-To: <54A28F1D.3020404@schwarze-allianz.de> References: <54A28F1D.3020404@schwarze-allianz.de> Message-ID: Thanks - Do I have to use OpenJDK or will the latest Oracle JDK (8u25 at time of writing) work? Nick On Tue, Dec 30, 2014 at 6:40 AM, Jens Kapitza wrote: > Hi Nick, > > i've read you found a solution, i had the same Problem (linux.grandle) > > in build folder there were some empty build files. as far as i can > remember linux_tools.... > the script tries to find cflags and linker options but there is an empty > file (i've just deleted this file, clean rebuild works) > > > the error with grandle 1.8 was behind this line 78 ^^ > > > > for the link errors; have you copied the libs (.so) files into your > openjdk build (after the build there is a sdk folder with libs and jar) > > the so file have to be in the openjdk lib folder or (i think should work > somewhere below /usr/lib > > > -- > Jens Kapitza > > Am 29.12.2014 um 01:35 schrieb Nick Pratt: > >> Does anyone have any tips on getting Openjfx (latest source as of >> 2014-12-28 19:00 EST) to build on a Centos 6.6 box? >> >> Im following the wiki for Linux builds and grabbed Gradle 1.8 (does the >> latest 2.2 work?) but Im failing to build with the following error: >> >> [work at nyprod1 rt]# /opt/gradle/bin/gradle >> >> :buildSrc:generateGrammarSource UP-TO-DATE >> >> :buildSrc:compileJava UP-TO-DATE >> >> :buildSrc:compileGroovy UP-TO-DATE >> >> :buildSrc:processResources UP-TO-DATE >> >> :buildSrc:classes UP-TO-DATE >> >> :buildSrc:jar UP-TO-DATE >> >> :buildSrc:assemble UP-TO-DATE >> >> :buildSrc:compileTestJava UP-TO-DATE >> >> :buildSrc:compileTestGroovy UP-TO-DATE >> >> :buildSrc:processTestResources UP-TO-DATE >> >> :buildSrc:testClasses UP-TO-DATE >> >> :buildSrc:test UP-TO-DATE >> >> :buildSrc:check UP-TO-DATE >> >> :buildSrc:build UP-TO-DATE >> >> >> FAILURE: Build failed with an exception. >> >> >> * Where: >> >> Script '/work/WorkingCopies/rt/buildSrc/linux.gradle' line: 78 >> >> >> * What went wrong: >> >> A problem occurred evaluating script. >> >> Cannot invoke method split() on null object >>> >> >> * Try: >> >> Run with --stacktrace option to get the stack trace. Run with --info or >> --debug option to get more log output. >> >> >> BUILD FAILED >> >> >> Total time: 8.96 secs >> >> >> If anyone has any tips or suggestions to get this compiling on Centos 6.x >> they would be most appreciated. >> > > From nbpratt at gmail.com Tue Dec 30 13:16:35 2014 From: nbpratt at gmail.com (Nick Pratt) Date: Tue, 30 Dec 2014 08:16:35 -0500 Subject: Building Openjfx on Centos 6.6 In-Reply-To: <54A28F1D.3020404@schwarze-allianz.de> References: <54A28F1D.3020404@schwarze-allianz.de> Message-ID: Ok, I setup a fresh Ubuntu 12.0.4 server install on a VM (32 bit this time), installed Gradle 1.8, Oracle JDK 1.8u25 (x86 version, removed the existing jfxrt.jar), grabbed all the latest OpenJFX source and Pi/Arm tool chain and rebuilt. I copied the resulting contents of ./rt/build/armv6hf-sdk/rt over the top of JDK_HOME/jre/ on my Pi, but I'm still hitting a link error when running a JavaFX app: pi at raspberrypi ~ $ java -jar JavaFXApp.jar Exception in thread "main" java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767) Caused by: java.lang.RuntimeException: java.lang.UnsatisfiedLinkError: com.sun.glass.ui.monocle.linux.Udev._open()J at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:296) at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:216) at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:653) at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:314) at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:305) ... 5 more Caused by: java.lang.UnsatisfiedLinkError: com.sun.glass.ui.monocle.linux.Udev._open()J at com.sun.glass.ui.monocle.linux.Udev._open(Native Method) at com.sun.glass.ui.monocle.linux.Udev.(Udev.java:68) at com.sun.glass.ui.monocle.linux.Udev.getInstance(Udev.java:54) at com.sun.glass.ui.monocle.linux.LinuxInputDeviceRegistry.(LinuxInputDeviceRegistry.java:77) at com.sun.glass.ui.monocle.linux.LinuxPlatform.createInputDeviceRegistry(LinuxPlatform.java:19) at com.sun.glass.ui.monocle.NativePlatform.getInputDeviceRegistry(NativePlatform.java:58) at com.sun.glass.ui.monocle.MonocleApplication.(MonocleApplication.java:78) at com.sun.glass.ui.monocle.MonoclePlatformFactory.createApplication(MonoclePlatformFactory.java:45) at com.sun.glass.ui.Application.run(Application.java:145) at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:281) ... 9 more pi at raspberrypi ~ $ which java /opt/java/bin/java I look at a couple of libs within the ./jre/lib/arm folder (one I replaced, one original): pi at raspberrypi /opt/java/jre/lib/arm $ file libjava.so libjava.so: ELF 32-bit LSB shared object, ARM, version 1 (SYSV), dynamically linked, BuildID[sha1]=0x85ac21c4b5e873e5ed15d80b0e64fb4c38122e8f, not stripped pi at raspberrypi /opt/java/jre/lib/arm $ file libjavafx_iio.so libjavafx_iio.so: ELF 32-bit LSB shared object, ARM, version 1 (SYSV), dynamically linked, BuildID[sha1]=0xd4b0794ac7451d58e5bf2ab6d8c856b2aa0005e5, not stripped So the latter looks correct (the former was supplied by Oracle) My C knowledge is extremely rusty (like 15 years old), and that was mostly on MS Windows - how do I check which shared lib contains the com.sun.glass.ui.monocle.linux.Udev._open()J method? Perhaps this is a gcc/link problem - did I use a different version of the compiler than I was supposed to and my version has mangled things differently, or did I install all the .so files in the wrong place (I put them all in /opt/java/jre/lib/arm): pi at raspberrypi /opt/java/jre/lib/arm $ ls -la | grep "Dec 30" drwxr-xr-x 12 pi pi 4096 Dec 30 07:46 .. -rwxrwxr-x 1 pi pi 61200 Dec 30 07:54 libdecora_sse.so -rwxr-xr-x 1 pi pi 134489 Dec 30 07:54 libfxplugins.so -rwxrwxr-x 1 pi pi 31428 Dec 30 07:54 libglass_monocle.so -rwxrwxr-x 1 pi pi 15946 Dec 30 07:54 libglass_monocle_x11.so -rwxrwxr-x 1 pi pi 193850 Dec 30 07:54 libglass.so -rwxr-xr-x 1 pi pi 1530711 Dec 30 07:54 libgstreamer-lite.so -rwxrwxr-x 1 pi pi 23301 Dec 30 07:54 libjavafx_font_freetype.so -rwxrwxr-x 1 pi pi 20564 Dec 30 07:54 libjavafx_font_pango.so -rwxrwxr-x 1 pi pi 14950 Dec 30 07:54 libjavafx_font.so -rwxrwxr-x 1 pi pi 218614 Dec 30 07:54 libjavafx_iio.so -rwxr-xr-x 1 pi pi 224345 Dec 30 07:54 libjfxmedia.so -rwxr-xr-x 1 pi pi 30879536 Dec 30 07:54 libjfxwebkit.so -rwxrwxr-x 1 pi pi 42591 Dec 30 07:54 libprism_common.so -rwxrwxr-x 1 pi pi 59640 Dec 30 07:54 libprism_es2_eglfb.so -rwxrwxr-x 1 pi pi 54149 Dec 30 07:54 libprism_es2_monocle.so -rwxrwxr-x 1 pi pi 56508 Dec 30 07:54 libprism_sw.so *Compile machine (Ubuntu 12 ISO):* @ubuntu:~/work/rt/build/armv6hf-sdk/rt$ uname -a Linux ubuntu 3.13.0-43-generic #72~precise1-Ubuntu SMP Tue Dec 9 12:14:42 UTC 2014 i686 i686 i386 GNU/Linux @ubuntu:~/work/rt/build/armv6hf-sdk/rt$ gcc --version gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3 @ubuntu:~/work/rt/build/armv6hf-sdk/rt$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 12.04.5 LTS Release: 12.04 Codename: precise On Tue, Dec 30, 2014 at 6:40 AM, Jens Kapitza wrote: > Hi Nick, > > i've read you found a solution, i had the same Problem (linux.grandle) > > in build folder there were some empty build files. as far as i can > remember linux_tools.... > the script tries to find cflags and linker options but there is an empty > file (i've just deleted this file, clean rebuild works) > > > the error with grandle 1.8 was behind this line 78 ^^ > > > > for the link errors; have you copied the libs (.so) files into your > openjdk build (after the build there is a sdk folder with libs and jar) > > the so file have to be in the openjdk lib folder or (i think should work > somewhere below /usr/lib > > > -- > Jens Kapitza > > Am 29.12.2014 um 01:35 schrieb Nick Pratt: > >> Does anyone have any tips on getting Openjfx (latest source as of >> 2014-12-28 19:00 EST) to build on a Centos 6.6 box? >> >> Im following the wiki for Linux builds and grabbed Gradle 1.8 (does the >> latest 2.2 work?) but Im failing to build with the following error: >> >> [work at nyprod1 rt]# /opt/gradle/bin/gradle >> >> :buildSrc:generateGrammarSource UP-TO-DATE >> >> :buildSrc:compileJava UP-TO-DATE >> >> :buildSrc:compileGroovy UP-TO-DATE >> >> :buildSrc:processResources UP-TO-DATE >> >> :buildSrc:classes UP-TO-DATE >> >> :buildSrc:jar UP-TO-DATE >> >> :buildSrc:assemble UP-TO-DATE >> >> :buildSrc:compileTestJava UP-TO-DATE >> >> :buildSrc:compileTestGroovy UP-TO-DATE >> >> :buildSrc:processTestResources UP-TO-DATE >> >> :buildSrc:testClasses UP-TO-DATE >> >> :buildSrc:test UP-TO-DATE >> >> :buildSrc:check UP-TO-DATE >> >> :buildSrc:build UP-TO-DATE >> >> >> FAILURE: Build failed with an exception. >> >> >> * Where: >> >> Script '/work/WorkingCopies/rt/buildSrc/linux.gradle' line: 78 >> >> >> * What went wrong: >> >> A problem occurred evaluating script. >> >> Cannot invoke method split() on null object >>> >> >> * Try: >> >> Run with --stacktrace option to get the stack trace. Run with --info or >> --debug option to get more log output. >> >> >> BUILD FAILED >> >> >> Total time: 8.96 secs >> >> >> If anyone has any tips or suggestions to get this compiling on Centos 6.x >> they would be most appreciated. >> > > From David.Hill at Oracle.com Tue Dec 30 14:27:05 2014 From: David.Hill at Oracle.com (David Hill) Date: Tue, 30 Dec 2014 09:27:05 -0500 Subject: FX on Raspberry Pi - PiTFT displays In-Reply-To: References: <54A19D08.90609@Oracle.com> Message-ID: <54A2B639.3070500@Oracle.com> On 12/29/14, 1:35 PM, Nick Pratt wrote: > Thats great - thanks for the JIRA link. > > I just need to get the openjfx to cross compile on my ubuntu box and I'm golden! Nick, Let me know (perhaps off list) if you find something in the instructions that is not working or could be clarified. I set up a OpenJFX build on a clean virtual box probably 3 months ago, but then again - I knew what I was doing :-) Dave > > > Nick > > On Mon, Dec 29, 2014 at 1:27 PM, David Hill > wrote: > > On 12/24/14, 8:40 PM, Nick Pratt wrote: > > Im trying to get a JavaFX app to run on a RaspberryPi with attached TFT > display (mapped as /dev/fb1). From my research it seems that Java/OpenJFX > uses device 0 by default. I saw a posting in May 2014 about a > request/suggestion to perhaps make the device configurable (something > in dispmanCursor.c) > but the thread didn't have any further activity on it: > see: http://mail.openjdk.java.net/pipermail/openjfx-dev/2014-May/013743.html > > Is it possible to tell OpenJFX to use a different output device other than > the default '0' so that JavaFX apps can be run on displays other than the > default HDMI output? > > Regards > > Nick > > Nick, - looks like Daniel fixed this one: > > https://javafx-jira.kenai.com/browse/RT-36960 > > settings are in the Jira. > > -- > David Hill > Java Embedded Development > > "A man's feet should be planted in his country, but his eyes should survey the world." > -- George Santayana (1863 - 1952) > > -- David Hill Java Embedded Development "A man's feet should be planted in his country, but his eyes should survey the world." -- George Santayana (1863 - 1952) From leonid.popov at oracle.com Tue Dec 30 15:06:43 2014 From: leonid.popov at oracle.com (Leonid Popov) Date: Tue, 30 Dec 2014 19:06:43 +0400 Subject: [9] Review request for RT-34443: [WebView] solar system web page is slow, has rendering problems and throws exceptions Message-ID: <54A2BF83.9030806@oracle.com> Please review the fix made by PeterZ: http://cr.openjdk.java.net/~loneid/RT-34443/v0/ for the issue: http://javafx-jira.kenai.com/browse/RT-34443 -- -- Thanks, Leonid From David.Hill at Oracle.com Wed Dec 31 21:19:30 2014 From: David.Hill at Oracle.com (David Hill) Date: Wed, 31 Dec 2014 16:19:30 -0500 Subject: Building Openjfx on Centos 6.6 In-Reply-To: References: <41420E9B-67A0-4B90-A0D7-A8116A3A970E@oracle.com> Message-ID: <54A46862.7030709@Oracle.com> Nick found a good one, took me a while to find the obvious :-p The UnsatisfiedLinkError was caused by old ARM JFX jars that were not overriden when he copied the new bits into the JDK. On ARM we have a split set of jars for FX that we ship, but when we build, we only build the single jfxrt.jar like the desktop. The split is post build packaging. So Nick was mixing old and new jars, which is what the Wiki told him to do. Doh. I updated the wiki for OpenJFX building and cross building with some clarifications, notes and such, so hopefully the next solider will not find so many mines. Dave On 12/29/14, 9:46 PM, Nick Pratt wrote: > So I made some progress here: > > I had installed Ubuntu 14.x 64-bit version. Once I installed the ia32-libs > (replacement versions for Ubuntu 14 since ia32-libs) isnt available > anymore, I got the ARM HF to build. I installed on my Pi, but Im getting > link errors when I try and run a JFX program: > > java -Djavafx.platform=monocle -Dmonocle.screen.fb=/dev/fb1 -jar > JavaFXApp.jar > > Exception in thread "main" java.lang.reflect.InvocationTargetException > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke(Method.java:483) > > at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767) > > Caused by: java.lang.RuntimeException: java.lang.UnsatisfiedLinkError: > com.sun.glass.ui.monocle.linux.Udev._open()J > > at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:296) > > at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:216) > > at > com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:653) > > at > com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:314) > > at > com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:305) > > ... 5 more > > Caused by: java.lang.UnsatisfiedLinkError: > com.sun.glass.ui.monocle.linux.Udev._open()J > > at com.sun.glass.ui.monocle.linux.Udev._open(Native Method) > > at com.sun.glass.ui.monocle.linux.Udev.(Udev.java:68) > > at com.sun.glass.ui.monocle.linux.Udev.getInstance(Udev.java:54) > > at > com.sun.glass.ui.monocle.linux.LinuxInputDeviceRegistry.(LinuxInputDeviceRegistry.java:77) > > at > com.sun.glass.ui.monocle.linux.LinuxPlatform.createInputDeviceRegistry(LinuxPlatform.java:19) > > at > com.sun.glass.ui.monocle.NativePlatform.getInputDeviceRegistry(NativePlatform.java:58) > > at > com.sun.glass.ui.monocle.MonocleApplication.(MonocleApplication.java:78) > > at > com.sun.glass.ui.monocle.MonoclePlatformFactory.createApplication(MonoclePlatformFactory.java:45) > > at com.sun.glass.ui.Application.run(Application.java:145) > > at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:281) > > ... 9 more > > > > So then I figured I try and get an Ubuntu 12.x 32-bit VM up and running and > use that for a OpenJFX build since this is mentioned in the OpenJFX wiki. > However, a clean install cant run sudo apt-get update due to missing > package definitions - have Ubuntu (or whoever maintains this set of repos) > removed the older 12.x packages (or started to)? I cant get gcc installed > or updated because of this - and this is a fresh install direct from the > Ubuntu 12.0.4 .iso > > On a related note, its not clear to me what Im supposed to do after > compiling OpenJFX - what needs to be installed and where does it need to go > - JAVA_HOME/jre/lib ? (just replace everything in there?) > > > > On Sun, Dec 28, 2014 at 9:11 PM, Morris Meyer > wrote: > >> What JDK are you using? That looks like an older version of the String >> class. Gradle 1.8 is recommended. >> >> --mm >> >> >>> On Dec 28, 2014, at 7:35 PM, Nick Pratt wrote: >>> >>> Does anyone have any tips on getting Openjfx (latest source as of >>> 2014-12-28 19:00 EST) to build on a Centos 6.6 box? >>> >>> Im following the wiki for Linux builds and grabbed Gradle 1.8 (does the >>> latest 2.2 work?) but Im failing to build with the following error: >>> >>> [work at nyprod1 rt]# /opt/gradle/bin/gradle >>> >>> :buildSrc:generateGrammarSource UP-TO-DATE >>> >>> :buildSrc:compileJava UP-TO-DATE >>> >>> :buildSrc:compileGroovy UP-TO-DATE >>> >>> :buildSrc:processResources UP-TO-DATE >>> >>> :buildSrc:classes UP-TO-DATE >>> >>> :buildSrc:jar UP-TO-DATE >>> >>> :buildSrc:assemble UP-TO-DATE >>> >>> :buildSrc:compileTestJava UP-TO-DATE >>> >>> :buildSrc:compileTestGroovy UP-TO-DATE >>> >>> :buildSrc:processTestResources UP-TO-DATE >>> >>> :buildSrc:testClasses UP-TO-DATE >>> >>> :buildSrc:test UP-TO-DATE >>> >>> :buildSrc:check UP-TO-DATE >>> >>> :buildSrc:build UP-TO-DATE >>> >>> >>> FAILURE: Build failed with an exception. >>> >>> >>> * Where: >>> >>> Script '/work/WorkingCopies/rt/buildSrc/linux.gradle' line: 78 >>> >>> >>> * What went wrong: >>> >>> A problem occurred evaluating script. >>> >>>> Cannot invoke method split() on null object >>> >>> * Try: >>> >>> Run with --stacktrace option to get the stack trace. Run with --info or >>> --debug option to get more log output. >>> >>> >>> BUILD FAILED >>> >>> >>> Total time: 8.96 secs >>> >>> >>> If anyone has any tips or suggestions to get this compiling on Centos 6.x >>> they would be most appreciated. -- David Hill Java Embedded Development "A man's feet should be planted in his country, but his eyes should survey the world." -- George Santayana (1863 - 1952)