<AWT Dev>  Review Request: 8211435 Exception in thread "AWT-EventQueue-1" java.lang.IllegalArgumentException: null source
Sergey.Bylokhov at oracle.com
Wed Oct 24 21:31:48 UTC 2018
Please review the fix for jdk 12.
In the DefaultKeyboardFocusManager class we have a special field "activeWindow", which stores the currently active window. It is used in two similar cases:
1. If the java window gets "WINDOW_ACTIVATED" event it will try to send "WINDOW_DEACTIVATED" to the old active window, which is stored in the "activeWindow" field.
2. If the java component lost the focus, and the opposite component is not a java component, then it will try to send "WINDOW_DEACTIVATED" to the old active window, which is stored in the "activeWindow" field.
The difference in these two cases is that in "case 1" we check the old active window to null, and the second case has no such check. The bug is reproduced in non-standalone mode, when we have a few Appcontexts and this field might be updated by different EDT in parallel.
Note that the test is for OSX only, because of another bug: JDK-8204142
Best regards, Sergey.
More information about the awt-dev