Bug 995 - Linux + Java 7 + Dual screen issue
Summary: Linux + Java 7 + Dual screen issue
Status: UNCONFIRMED
Alias: None
Product: Jogl
Classification: JogAmp
Component: x11 (show other bugs)
Version: 2
Hardware: All linux
: --- major
Assignee: Sven Gothel
URL:
Depends on:
Blocks:
 
Reported: 2014-03-06 00:13 CET by Kendzi
Modified: 2014-06-03 23:27 CEST (History)
1 user (show)

See Also:
Type: ---
SCM Refs:
Workaround: ---


Attachments
TestCase (17.58 KB, text/x-java)
2014-03-06 00:14 CET, Kendzi
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kendzi 2014-03-06 00:13:15 CET
It is not possible to use JOGL application on dual screen linux with java 7.

This is upstream from http://forum.jogamp.org/Linux-Java-7-Dual-screen-issue-td4030862.html#a4031778

It seems that JOGL create context correctly only for one of the screens. When application windows is launched on “first” screen, content is shown and application is working correctly. But when window is moved to “second” screen window become is blank. No error is throw. When I move window back to “first” screen correct content of window will appear again. So in short Jogl application is working correctly only on one of the screens. 

This bug appear only when I try to run application using java 7. On java 6 application is working on both screens correctly.

I'm working on Ubuntu 64 13.10, graphic card is integrated intel with jogl 2.1.4. 

Work wrong on Java7 JDK 64 1.7.0_45-b18. 
Work correct on Java6 JDK 64 1.6.0_45-b06. 

Test case:
https://github.com/sgothel/jogl-demos/blob/master/src/demos/gears/Gears.java

In line 63 replace new GLCanvas(); with call of function:
 
public static GLCanvas createCanvas() {
   // create a profile, in this case OpenGL 2 or later
   GLProfile profile = GLProfile.get(GLProfile.GL2);

   // configure context
   GLCapabilities capabilities = new GLCapabilities(profile);

   // setup z-buffer
   capabilities.setDepthBits(16);

   // for anti-aliasing
   // FIXME cause problem:
   capabilities.setSampleBuffers(true);
   capabilities.setNumSamples(2);

   // initialize a GLDrawable of your choice
   return new GLCanvas(capabilities);
}

When setSampleBuffers and setNumSamples is comment out application is working correctly, but when un-commented application freeze. 

This example freeze on both screens but my application (kendzi3d) freeze only when moving to second screen. In both case commenting out of setSampleBuffers and setNumSamples solve problem.
Comment 1 Kendzi 2014-03-06 00:14:20 CET
Created attachment 605 [details]
TestCase
Comment 2 Kendzi 2014-06-03 23:26:39 CEST
Any ideas or updates?