| Other |
|---|
| tbdUnresolved |
|
Blocks :
|
|
|
Blocks :
|
|
|
Blocks :
|
|
|
Blocks :
|
|
|
Duplicate :
|
|
|
Duplicate :
|
|
|
Relates :
|
|
|
Relates :
|
The PresentingPainter's run method has a call to presentable.prepare in which it passes a null. This ends up taking an enormous amount of time. Passing the clip makes this much faster. I don't think that passing the clip is the only thing that needs to be done here (it is so slow, measuring > 100ms, that it implies that whenever the entire scene has been redrawn that we will see sub <10fps performance which is unacceptable).
Nevertheless, this patch seems to fix the issue for FishSim.
diff -r 022ed295ff86 -r be94eec3b5b2 javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PresentingPainter.java
--- a/javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PresentingPainter.java Wed Mar 14 04:36:56 2012 +0100
+++ b/javafx-ui-quantum/src/com/sun/javafx/tk/quantum/PresentingPainter.java Wed Mar 14 04:37:14 2012 +0100
@@ -73,7 +73,7 @@
paintImpl(g);
}
- if (!presentable.prepare(null)) {
+ if (!presentable.prepare((g == null ? null : g.getClipRect())) {
disposePresentable();
scene.entireSceneNeedsRepaint();
return;
|