JDK-4313607 : JDK_1.3.b01/x86: Non-resizable attribute gets resizable behavior in Openwin env.
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 1.3.0
  • Priority: P1
  • Status: Resolved
  • Resolution: Fixed
  • OS: solaris_8
  • CPU: x86
  • Submitted: 2000-02-17
  • Updated: 2000-10-20
  • Resolved: 2000-04-25
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
1.3.0 1.3Fixed
Related Reports
Relates :  
Relates :  
Relates :  
Description
JDK-runtime-13rc1/tests/api/java_awt/interactive/FrameTests.html#FrameTests jck_
execute_positive FrameTests_FrameTests fails in openwin environment.

the non-resizable attribute is resizable in openwin environment (frametest 0002 and frametest 0004).
Please note: the non-resizable attribute can be resized only once, then it will become non-resizable attribute.

I used the following script to run the test.
Start the test using the script and try to resize the attribute (frametest 0002 and frametest 0004). In the display it says it is non-resizable. But attribute can be resized very first time. If you try to resize it again, it shrinks to its original size and becomes non-resizable.

bkante@jtg-i113$ /usr/java1.3/bin/java -fullversion
java full version "katleman.2000.02.08.15.58"

bkante@jtg-i113$ FrameTests_FrameTests.ksh
#!/bin/ksh

PATH=/usr/java1.3/bin:/bin
DISPLAY=jtg-i113:0.0
CLASSPATH=/export/home/jtg-test/tonga_1.3.b01/hotspot/jtg-i113/JCK-runtime-13rc1.api.interact
ive/bkante.Solaris.x86/FrameTests_FrameTests:/net/ultraowl.eng/export/ultraowl1/javatb/testba
se/src/JCK-runtime-13rc1/classes:/net/ultraowl.eng/export/ultraowl1/javatb/testbase/src/JCK-r
untime-13rc1/javatest.jar
LD_LIBRARY_PATH=/net/ultraowl.eng/export/ultraowl1/javatb/testbase/src/JCK-runtime-13rc1/lib/
intel

while [ $# -gt 0 ];
do
  if [ $1 = "-jdk" ]; then
    shift 1
    PATH=${1}/bin:${PATH}
    shift 1
  else
    if [ $1 = "-d" ]; then
      shift 1
      if [ $# -gt 0  ]; then
        DISPLAY=$1
        shift 1
      else
        DISPLAY=:0.0
      fi
    fi
  fi
done

export PATH
export DISPLAY
export CLASSPATH
export LD_LIBRARY_PATH
#export JAVA_COMPILER none
/usr/java1.3/bin/java -hotspot -Djava.security.policy=/net/ultraowl.eng/export/ultraowl1/javat
b/testbase/src/JCK-runtime-13rc1/lib/jck.policy -Xfuture  javasoft.sqe.tests.api.java.awt.int
eractive.Frame.FrameTests  -TestCaseID ALL
##Exit status of execution step=97

#args decoded
#STATUS:Failed.tests: 4; passed: 2; failed: 2; first test case failure: FrameTest0002
#FrameTest0001: Passed. Frame with non-resizable attribute cannot be resized.
#FrameTest0002: Failed. Frame test does NOT work as expected. It is resizable in both cases
#FrameTest0003: Passed. OKAY
#FrameTest0004: Failed. Frame test does NOT work as expected. The non-resizable frame can be
resized

Comments
CONVERTED DATA BugTraq+ Release Management Values COMMIT TO FIX: kestrel-solaris FIXED IN: kestrel-solaris INTEGRATED IN: 1.3
14-06-2004

SUGGESTED FIX Name: dsR10078 Date: 04/28/2000 ###@###.### For non-resizable top-levels call awt_util_setShellNotResizable() from reshape() regardless of whether the shell widget is already reparented or not. ======================================================================
11-06-2004

EVALUATION Commit to Kestrel-Solaris (JCK failure). eric.hawkes@eng 2000-03-24 Name: dsR10078 Date: 04/28/2000 ###@###.### The bug is occasionally reprodusible with several window managers (in my environment most readily with OLWM) on both x86 and sparc. Originally a native shell created for the non-resizable Frame is resizable. We turn it to non-resizable after the shell is reparented, insets values are calculated and we reshape the shell to the correct size. The shell is reshaped with XtVaSetValues call that tries to update XtN{x,y,width,height} resources. This call eventually makes a geometry request to reshape the shell widget. This request is forwarded to the XToolkit routine RootGeometryManager(), which calls XConfigureWindow() to perform actual reshape. XConfigureWindow() is documented to generate a ConfigureNotify event to announce changes. Xlib Reference Manual also specifies that "The client should wait for the ConfigureNotify event to find out the size and position of the window". So does Xt: RootGeometryManager() waits for the ConfigureNotify event. It often happens that this event is not generated for some reason. In this case we will block in Xt and since the shell widget for our Frame is still resizable at this moment, the user will be able to resize it until we are timed out several seconds later. ====================================================================== This bug was in fact integarated in Kestrel-Solaris. The fix made it into ladybird with the merge. There is a putbcak comment for it in the history file for Merlin as well. eric.hawkes@eng 2000-10-13
13-10-2000