aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/classes/javax/media/opengl/GLJPanel.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/classes/javax/media/opengl/GLJPanel.java b/src/classes/javax/media/opengl/GLJPanel.java
index 3e08ab079..180ae2111 100644
--- a/src/classes/javax/media/opengl/GLJPanel.java
+++ b/src/classes/javax/media/opengl/GLJPanel.java
@@ -795,7 +795,7 @@ public class GLJPanel extends JPanel implements GLAutoDrawable {
}
public boolean getAutoSwapBufferMode() {
- if (!hardwareAccelerationDisabled) {
+ if (!hardwareAccelerationDisabled && !oglPipelineEnabled) {
return pbuffer.getAutoSwapBufferMode();
} else {
return drawableHelper.getAutoSwapBufferMode();
@@ -803,7 +803,15 @@ public class GLJPanel extends JPanel implements GLAutoDrawable {
}
public void swapBuffers() {
- if (!hardwareAccelerationDisabled) {
+ // In the current implementation this is basically a no-op. Both
+ // the pbuffer and pixmap based rendering paths use a single-
+ // buffered surface so swapping the buffers doesn't do anything.
+ // We also don't currently have the provision to skip copying the
+ // data to the Swing portion of the GLJPanel in any of the
+ // rendering paths.
+ if (oglPipelineEnabled) {
+ // Do nothing
+ } else if (!hardwareAccelerationDisabled) {
pbuffer.swapBuffers();
} else {
drawableHelper.invokeGL(offscreenDrawable, offscreenContext, swapBuffersAction, initAction);