[OpenJDK 2D-Dev] [PATCH] 6636469: Java Fullscreen Exclusive Mode not working with Xorg server 1.3.0 and above

Dan Munckton lists at munckfish.net
Sat Dec 8 13:43:36 UTC 2007


Hi Oleg, Dmitry, Yuri, all

Please find attached my first attempt at fixing bug 6636469 [0].


APPROACH

The fix is really simple it just checks to make sure RANDR's version is
1.2 or greater if usingXinerama is true, if this is all fine it proceeds
to load the libXrandr funcs.

For the moment I've completely ignored 6599351, and not touched any of
the Xinerama loading code at all. 

BTW I note that with 6599351 the user has an old style X dual-head
config without using Xinerama - I found a note on the Debian Xrandr1.2
Howto wiki page [1] explaining that this configuration should crash
Xserver 1.3. Does it behave differently in Solaris X?


TESTING

The equipment I have here will allow me to test single monitor setups
with X servers 1.2 and 1.3. Java now behaves as expected in the
following cases:

1) Xserver 1.2 + 1 monitor + Xrandr
	Expect: isFullScreenSupported: true
	Result: PASS

2) Xserver 1.2 + 1 monitor + Xinerama enabled (Xinerama won't actually
load but Xrandr and DRI won't load either)
	Expect: isFullScreenSupported: false
	Result: PASS

3) Xserver 1.3 + 1 monitor + Xrandr + fake Xinerama
	Expect: isFullScreenSupported: true
	Result: PASS

4) Xserver 1.3 + 1 monitor + Xinerama enabled (Xinerama won't actually
load but Xrandr and DRI won't load either)
	Expect: isFullScreenSupported: false
	Result: PASS


TESTING TODO

I have an external LCD monitor at work which I can hook up to my laptop
next week. This should allow me to test out Xrandr 1.2 multi-monitor
setups. I'll post results as soon as complete.

However I don't think I can test out Xinerama dual head configs. I tried
to set this up once before but failed - I'm still not 100% certain if
Xinerama is actually compiled into my X server I will need to check this
out properly. 

If anyone here has a multi monitor setup already and would be prepared
to help me test the following scenarios I'd be very grateful.

5) Xserver 1.2 + 2 monitor + Xinerama (Xrandr and DRI won't load)
	Expect: isFullScreenSupported: false

6) Xserver 1.3 + 2 monitors + Xinerama
	Expect: isFullScreenSupported: false

I am also still to run the jtreg tests against this. I will come back
with results.

Also, do I need to mail both awt-dev and 2d-dev or will just one do in
future?

Cheers

Dan


[0] http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6636469
[1] Section VI.3 of http://wiki.debian.org/XStrikeForce/HowToRandR12
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 6636469_first_attempt.diff
Type: text/x-patch
Size: 2917 bytes
Desc: not available
URL: <http://mail.openjdk.java.net/pipermail/2d-dev/attachments/20071208/a2ca4740/6636469_first_attempt.diff>


More information about the 2d-dev mailing list