← Back to team overview

openjdk team mailing list archive

[Bug 154613] Re: Xinerama prevents Java fullscreen exclusive mode in Gutsy

 

I get something of an error regardless which JVM I use (I used java6,
java5, and downloaded 1.4.2 directly from Sun).  I'm not sure exactly
how related this is, but I get other problems (I have a Java app whose
Oracle JDBC driver can't even do a simple connect to a database).  The
JVM doesn't CRASH, but it does have a few xinerama references in the
stack trace.  I don't know if this is related to bug #174759 or not, but
see attachment in case it rings any bells.

** Attachment added: "Error appearing in stdout occasionally while running a Java app"
   http://launchpadlibrarian.net/13839426/assertion_failure.txt

-- 
Xinerama prevents Java fullscreen exclusive mode in Gutsy
https://bugs.launchpad.net/bugs/154613
You received this bug notification because you are a member of OpenJDK,
which is subscribed to openjdk-6 in ubuntu.

Status in Source Package "icedtea-java7" in Ubuntu: Won't Fix
Status in Source Package "openjdk-6" in Ubuntu: Fix Released
Status in Source Package "sun-java6" in Ubuntu: In Progress

Bug description:
Update: This bug has evolved a little, the summary for this bug now reflects the root cause of the problem, discovered later in the comments. It seems Java fullscreen exclusive mode is not supported when Xinerama is present in Xorg. In Gutsy it seems it is there on all installations (that I've tested) which means no Java fullscreen exclusive mode apps/games will run.

Original Description: While testing a Java fullscreen mode application in Gutsy I have discovered that Java does not find the full list of supported display modes it only lists the current screen resolution even though the xrandr command lists all supported screen modes. Consequently it cannot use full screen exclusive mode in any other resolution than the current one in use. This is a regression as the problem does not occur in Feisty.

I've tested this on 2 completely different machines first with Feisty and then with Gutsy.

I've attached a sample Java program DisplayModeLister which outputs a list of supported screen modes. Here's it's output on Gutsy:

  1: 1440 x 900 @ 0Hz -1bit

Here's the xrandr command's output on Gutsy:

  Screen 0: minimum 320 x 200, current 1440 x 900, maximum 1440 x 1200
  VGA-0 disconnected (normal left inverted right)
  LVDS connected 1440x900+0+0 (normal left inverted right) 0mm x 0mm
     1440x900       59.9*+
     1280x800       60.0  
     1280x768       60.0  
     1024x768       60.0  
     800x600        60.3  
     640x480        59.9  
  S-video disconnected (normal left inverted right)
  DVI-0 disconnected (normal left inverted right)

Here's DisplayModeLister's output on the same machine running Feisty:

  1: 1440 x 900 @ 60Hz -1bit
  2: 1024 x 768 @ 60Hz -1bit
  3:  800 x 600 @ 60Hz -1bit
  4:  640 x 480 @ 60Hz -1bit
  5:  640 x 350 @ 60Hz -1bit
  6:  640 x 400 @ 60Hz -1bit
  7:  720 x 400 @ 60Hz -1bit
  8: 1152 x 864 @ 60Hz -1bit
  9:  832 x 624 @ 60Hz -1bit
 10: 1280 x 768 @ 60Hz -1bit
 11: 1280 x 800 @ 60Hz -1bit
 12: 1152 x 768 @ 60Hz -1bit

This result is the same in Java 5 and 6. Here are the package versions:

Feisty:
  * sun-java6 6-00-2ubuntu2
  * xorg 1:7.2-0ubuntu11
  * libxrandr 1.2.0-3ubuntu1
  * xrandr 1.0.2-0ubuntu1

Gutsy:
  * sun-java6 6-03-0ubuntu2
  * xorg 1:7.2-5ubuntu13
  * libxrandr 2:1.2.1-1
  * xrandr 1:1.2.2-0ubuntu1