GLS language errors (Was: Internal error: Error loading stock shader FillRoundRect_LinearGradient,_PAD on Vivante ARM)
When I run the glslangValidator on FillRoundRect_LinearGradient_PAD.frag it gives the following error: ERROR: 0:19: 'non-constant global initializer' : not supported with this profile: es When I move pixcoord's declaration on line 19 into the main() function it gives no errors. This is the full output of find -name "*.frag" -exec glslangValidator {} \; ERROR: 0:53: 'oTexCoords' : undeclared identifier ERROR: 0:53: 'texture2D' : no matching overloaded function found ERROR: 0:53: '=' : cannot convert from 'const float' to 'temp highp 4-component vector of float' ERROR: 3 compilation errors. No code generated. ERROR: 0:55: 'oTexCoords' : undeclared identifier ERROR: 0:55: 'texture2D' : no matching overloaded function found ERROR: 0:55: 'scalar swizzle' : not supported with this profile: es ERROR: 0:55: 'rgb' : vector field selection out of range ERROR: 0:55: '=' : cannot convert from 'const float' to 'temp highp 3-component vector of float' ERROR: 5 compilation errors. No code generated. ERROR: 0:53: 'oTexCoords' : undeclared identifier ERROR: 0:53: 'texture2D' : no matching overloaded function found WARNING: 0:53: 'return' : type conversion on return values was not explicitly allowed until version 420 ERROR: 2 compilation errors. No code generated. ERROR: 0:55: 'oTexCoords' : undeclared identifier ERROR: 0:55: 'texture2D' : no matching overloaded function found ERROR: 0:55: 'scalar swizzle' : not supported with this profile: es ERROR: 0:55: 'rgb' : vector field selection out of range ERROR: 0:55: '=' : cannot convert from 'const float' to 'temp highp 3-component vector of float' ERROR: 5 compilation errors. No code generated. ERROR: 0:18: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:18: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:53: 'oTexCoords' : undeclared identifier ERROR: 0:53: 'texture2D' : no matching overloaded function found ERROR: 0:53: '=' : cannot convert from 'const float' to 'temp highp 4-component vector of float' ERROR: 3 compilation errors. No code generated. ERROR: 0:55: 'oTexCoords' : undeclared identifier ERROR: 0:55: 'texture2D' : no matching overloaded function found ERROR: 0:55: 'scalar swizzle' : not supported with this profile: es ERROR: 0:55: 'rgb' : vector field selection out of range ERROR: 0:55: '=' : cannot convert from 'const float' to 'temp highp 3-component vector of float' ERROR: 5 compilation errors. No code generated. ERROR: 0:53: 'oTexCoords' : undeclared identifier ERROR: 0:53: 'texture2D' : no matching overloaded function found WARNING: 0:53: 'return' : type conversion on return values was not explicitly allowed until version 420 ERROR: 2 compilation errors. No code generated. ERROR: 0:55: 'oTexCoords' : undeclared identifier ERROR: 0:55: 'texture2D' : no matching overloaded function found ERROR: 0:55: 'scalar swizzle' : not supported with this profile: es ERROR: 0:55: 'rgb' : vector field selection out of range ERROR: 0:55: '=' : cannot convert from 'const float' to 'temp highp 3-component vector of float' ERROR: 5 compilation errors. No code generated. ERROR: 0:19: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:19: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:19: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:17: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:19: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:19: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:19: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:19: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:19: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:19: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:19: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:17: 'non-constant global initializer' : not supported with this profile: es ERROR: 1 compilation errors. No code generated. ERROR: 0:18: 'non-constant global initializer' : not supported
RE: [Review request] 8090477: Customizable visibility timing for Tooltip
Hi Jonathan, I saw that was already reviewed, good!. I tested it also and it works like a charm. Thanks, Diego
ProgressIndicator indeterminate transition bugs
Hi all, We found two important bugs in ProgressIndicator that are related with the following tickets: https://bugs.openjdk.java.net/browse/JDK-8094829 https://bugs.openjdk.java.net/browse/JDK-8094078 Now are quite critical because in a 4K monitor may cause OutOfMemoryException. Using the following example: " public class JFXMain extends Application{ @Override public void start(Stage primaryStage) throws Exception { HBox root = new HBox(); ToggleButton toggleButton = new ToggleButton(); ProgressIndicator progressIndicator = new ProgressIndicator(ProgressIndicator.INDETERMINATE_PROGRESS); StackPane stackPane = new StackPane(progressIndicator); stackPane.visibleProperty().bind(toggleButton.selectedProperty()); root.getChildren().addAll(toggleButton, stackPane); primaryStage.setScene(new Scene(root)); primaryStage.show(); } } " ** First bug ** Starting the Progress Indicator with indeterminate progress will trigger: rebuildTimeline by ProgressIndicatorSkin and in line 599 start the animation even is not shown already: indeterminateTransition.playFromStart(); ** Second bug ** With the last commits in ProgressIndicator, as commented in JDK-8094829, the listeners do not care about the real visibility of the node(before it was used impl_treeVisibleProperty()). The consequence is that the ProgressIndicator in the example won´t be stopped. I can imagine that impl_treeVisibleProperty() should not be used and Jonathan G. said: " but I can't reliably fix that without an API such as what I expect the treeVisible API should do." But we did not find such alternative property. The solution we though is the usage of internal tree visible property like this: 1. Modify method: " protected void updateAnimation(boolean isTreeVisible) { " 2. Remove current calls to method in " @Override protected void handleControlPropertyChanged(String p) { super.handleControlPropertyChanged(p); if ("INDETERMINATE".equals(p)) { initialize(); } else if ("PROGRESS".equals(p)) { updateProgress(); } } " 3. Add listener at the end of the IndeterminateSpinner contructor the visibility listener: " private IndeterminateSpinner(boolean spinEnabled, Paint fillOverride) { [...] impl_treeVisibleProperty().addListener((obs, oldVal, newVal) ->{ updateAnimation(newVal); }); } " What do you think? Additional note: I would like to add one more thing. I think that could be very good a property ReadOnlyBooleanProperty treeVisibleProperty() available in all Nodes. Please let me know if we can do something else. Diego
Re: ProgressIndicator indeterminate transition bugs
If you can, are you able to file bug reports for these? -- Jonathan On 29/02/16 10:49 AM, Cirujano Cuesta, Diego wrote: Hi all, We found two important bugs in ProgressIndicator that are related with the following tickets: https://bugs.openjdk.java.net/browse/JDK-8094829 https://bugs.openjdk.java.net/browse/JDK-8094078 Now are quite critical because in a 4K monitor may cause OutOfMemoryException. Using the following example: " public class JFXMain extends Application{ @Override public void start(Stage primaryStage) throws Exception { HBox root = new HBox(); ToggleButton toggleButton = new ToggleButton(); ProgressIndicator progressIndicator = new ProgressIndicator(ProgressIndicator.INDETERMINATE_PROGRESS); StackPane stackPane = new StackPane(progressIndicator); stackPane.visibleProperty().bind(toggleButton.selectedProperty()); root.getChildren().addAll(toggleButton, stackPane); primaryStage.setScene(new Scene(root)); primaryStage.show(); } } " ** First bug ** Starting the Progress Indicator with indeterminate progress will trigger: rebuildTimeline by ProgressIndicatorSkin and in line 599 start the animation even is not shown already: indeterminateTransition.playFromStart(); ** Second bug ** With the last commits in ProgressIndicator, as commented in JDK-8094829, the listeners do not care about the real visibility of the node(before it was used impl_treeVisibleProperty()). The consequence is that the ProgressIndicator in the example won´t be stopped. I can imagine that impl_treeVisibleProperty() should not be used and Jonathan G. said: " but I can't reliably fix that without an API such as what I expect the treeVisible API should do." But we did not find such alternative property. The solution we though is the usage of internal tree visible property like this: 1. Modify method: " protected void updateAnimation(boolean isTreeVisible) { " 2. Remove current calls to method in " @Override protected void handleControlPropertyChanged(String p) { super.handleControlPropertyChanged(p); if ("INDETERMINATE".equals(p)) { initialize(); } else if ("PROGRESS".equals(p)) { updateProgress(); } } " 3. Add listener at the end of the IndeterminateSpinner contructor the visibility listener: " private IndeterminateSpinner(boolean spinEnabled, Paint fillOverride) { [...] impl_treeVisibleProperty().addListener((obs, oldVal, newVal) ->{ updateAnimation(newVal); }); } " What do you think? Additional note: I would like to add one more thing. I think that could be very good a property ReadOnlyBooleanProperty treeVisibleProperty() available in all Nodes. Please let me know if we can do something else. Diego
RE: ProgressIndicator indeterminate transition bugs
Hi Jonathan: I thought they would be reopened that´s why I did not create them. Here there are: JI-9029954 JI-9029955 By the way I also created another one for a few weeks (28.01.2016) JI-9029025 but I did not receive anything else. I do not know if I am creating the bugs in a wrong place or what. I am using: http://bugreport.java.com/ What can I do in order to write comments in the JBS bugs? Thanks, Diego -Original Message- From: Jonathan Giles [mailto:jonathan.gi...@oracle.com] Sent: Sonntag, 28. Februar 2016 22:54 To: Cirujano Cuesta, Diego; openjfx-dev@openjdk.java.net Subject: Re: ProgressIndicator indeterminate transition bugs If you can, are you able to file bug reports for these? -- Jonathan On 29/02/16 10:49 AM, Cirujano Cuesta, Diego wrote: > Hi all, > > We found two important bugs in ProgressIndicator that are related with the > following tickets: > > https://bugs.openjdk.java.net/browse/JDK-8094829 > https://bugs.openjdk.java.net/browse/JDK-8094078 > > Now are quite critical because in a 4K monitor may cause OutOfMemoryException. > > Using the following example: > " > public class JFXMain extends Application{ > > @Override > public void start(Stage primaryStage) throws Exception { > HBox root = new HBox(); > ToggleButton toggleButton = new ToggleButton(); > ProgressIndicator progressIndicator = new > ProgressIndicator(ProgressIndicator.INDETERMINATE_PROGRESS); > StackPane stackPane = new StackPane(progressIndicator); > stackPane.visibleProperty().bind(toggleButton.selectedProperty()); > root.getChildren().addAll(toggleButton, stackPane); > primaryStage.setScene(new Scene(root)); > primaryStage.show(); > } > } > " > > ** First bug ** > > Starting the Progress Indicator with indeterminate progress will > trigger: rebuildTimeline by ProgressIndicatorSkin and in line 599 > start the animation even is not shown already: > indeterminateTransition.playFromStart(); > > ** Second bug ** > > With the last commits in ProgressIndicator, as commented in JDK-8094829, the > listeners do not care about the real visibility of the node(before it was > used impl_treeVisibleProperty()). The consequence is that the > ProgressIndicator in the example won´t be stopped. > > I can imagine that impl_treeVisibleProperty() should not be used and Jonathan > G. said: " but I can't reliably fix that without an API such as what I expect > the treeVisible API should do." But we did not find such alternative property. > > The solution we though is the usage of internal tree visible property like > this: > > 1. Modify method: > " > protected void updateAnimation(boolean isTreeVisible) { " > 2. Remove current calls to method in > " > @Override protected void handleControlPropertyChanged(String p) { > super.handleControlPropertyChanged(p); > > if ("INDETERMINATE".equals(p)) { > initialize(); > } else if ("PROGRESS".equals(p)) { > updateProgress(); > } > } > " > 3. Add listener at the end of the IndeterminateSpinner contructor the > visibility listener: > " > private IndeterminateSpinner(boolean spinEnabled, Paint > fillOverride) { > [...] > impl_treeVisibleProperty().addListener((obs, oldVal, newVal) ->{ > updateAnimation(newVal); > }); > } > " > > What do you think? > > Additional note: I would like to add one more thing. I think that could be > very good a property ReadOnlyBooleanProperty treeVisibleProperty() available > in all Nodes. > > Please let me know if we can do something else. > > Diego