Java Solaris Communities Sun Store Join SDN My Profile Why Join?
 
Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 6682536
Votes 0
Synopsis java\awt\FullScreen\NonfocusableFrameFullScreenTest\NonfocusableFrameFullScreenTest.java fails
Category java:classes_awt
Reported Against
Release Fixed , 7(b36) (Bug ID:2163739)
State 6-Fix Understood, bug
Priority: 3-Medium
Related Bugs
Submit Date 01-APR-2008
Description
java\awt\FullScreen\NonfocusableFrameFullScreenTest\NonfocusableFrameFullScreenTest.java fails in windows 
with 1.6.0_10 builds.

Steps to reproduce:

Run the above testcase

Click on "setAlwaysOnTop"
Observe the frame is always on top.
Click on "to full-screen"
Click on "to windowed"
 
Observe that the frame is not always on top . Expected result is it has to be on top.

I tested this with 1.6.0 b104 build where it is passing.
And with 1.6.0_10 b11,b12,b13,b14 it is failing.
Posted Date : 2008-04-01 06:12:24.0
Work Around
A user may reset alwaysOnTop property on exiting fullscreen by himself.
Evaluation
We could reproduce this with JDK6u10b21 and JDK6u10b27 on WindowsXP box with Classical theme. 
Not reproducible with JDK6.0b105 in the same environment. Not tried with JDK7.
Posted Date : 2008-05-20 17:03:53.0

When the D3D pipeline can not be enabled
  we use GDI for "full screen exclusive" mode - which is basically
  emulated by making the window maximized and always on top on 
  the native level:
  awt_Win32GraphicsDevice.cpp:enterFullScreenExclusive:
    if (!::SetWindowPos(hWnd, HWND_TOPMOST, 0, 0, 0, 0, 
                        SWP_NOMOVE|SWP_NOOWNERZORDER|SWP_NOSIZE)) 

  awt_Win32GraphicsDevice.cpp:exitFullScreenExclusive:
    if (!::SetWindowPos(hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, 
                        SWP_NOMOVE|SWP_NOOWNERZORDER|SWP_NOSIZE)) 

  We should only remove TOPMOST if the frame is not "always 
  on top". This can be done either at the java (in Win32GD), or on the
  native level.

  The D3DGraphicsDevice has some code that does this already,
  but Win32GraphicsDevice doesn't.
Posted Date : 2008-05-27 22:58:08.0

It appears this is not in fact a regression in the GDI code - the bug was already
there - but 6u10 exposed the bug as it disables DDraw. But that could already happen,
and is in fact the default on Vista.

NB There is a JDK 7 port, but after the merge of the D3D port into JDK 7,
that fix should be re-verified.
Posted Date : 2008-07-25 23:13:51.0

It would be fine if we can fix this in 6u16 - the fix is ready in JDK7 and looks pretty small and safe.
Posted Date : 2009-04-10 16:58:16.0
Comments
  
  Include a link with my name & email   


PLEASE NOTE: JDK6 is formerly known as Project Mustang