SUGGESTED FIX
That's how it was fixed in Mustang and perhaps in update release of 1.5.0
*** /awt/yan/child2/webrev.5062118/src/solaris/classes/sun/awt/X11/XComponentPeer.java- 2004-09-06 16:34:54.000000000 +0400
--- /awt/yan/child2/webrev.5062118/src/solaris/classes/sun/awt/X11/XComponentPeer.java 2004-09-06 16:34:54.000000000 +0400
*** 126,142 ****
}
enabled = target.isEnabled();
// If any of our ancestors are disabled, we should be too
! Component parent = target.getParent();
! while (parent != null) {
! if (!parent.isEnabled()) {
setEnabled(false);
break;
}
- parent = parent.getParent();
}
enableLog.log(Level.FINE, "Initial enable state: {0}", new Object[] {Boolean.valueOf(enabled)});
if (target.isVisible()) {
show();
--- 126,142 ----
}
enabled = target.isEnabled();
// If any of our ancestors are disabled, we should be too
! Component comp = target;
! while( !(comp == null || comp instanceof Window) ) {
! comp = comp.getParent();
! if( comp != null && !comp.isEnabled() ) {
setEnabled(false);
break;
}
}
enableLog.log(Level.FINE, "Initial enable state: {0}", new Object[] {Boolean.valueOf(enabled)});
if (target.isVisible()) {
show();
###@###.### 10/21/04 06:42 GMT
|