<AWT Dev> [9] Review request for 8139581: AWT components are not drawn after removal and addition to a container
Anton Litvinov
anton.litvinov at oracle.com
Tue Jan 26 19:48:51 UTC 2016
Hello,
Could you please review the following fix for the bug.
Bug: https://bugs.openjdk.java.net/browse/JDK-8139581
Webrev: http://cr.openjdk.java.net/~alitvinov/8139581/jdk9/webrev.00
The bug consists in the fact that sometimes X11 "Expose" events arriving
in Toolkit thread during execution of
"XBaseWindow.init(XCreateWindowParams)" method in another thread are not
handled in the method "XBaseWindow.dispatchToWindow(XEvent)", because
"XBaseWindow.initialising" field equals "NOT_INITIALISED" and
"XBaseWindow.checkInitialised()" returns "false". A result of such not
handled "Expose" events is not drawn AWT component, which is inserted
back to AWT container, and whose "java.awt.Component.paint(Graphics)"
method is not called.
The fix removes "InitialiseState.NOT_INITIALISED" from the code and this
lets the mechanism of waiting for "INITIALISED" state work as designed
in the method "XBaseWindow.checkInitialised".
Thank you,
Anton
More information about the awt-dev
mailing list