Hi, Alan.
A few comments about the test:
- It is a mac specific and JtregNativeJdk should compile it on mac only
- It should close all windows at the end, currently it leaves Finder
opened.
- it tries to use NSWindowStyleMask/NSWindowStyleMaskTitled which are
available in >10.12. We only plan to move to 10.9 soon. So the test
should skip it or use NSInteger/NSTitledWindowMask for macOS <
MAC_OS_X_VERSION_10_12.
- It looks like other tests in JtregNativeJdk.gmk use libtest+Some
useful name, I suggest to use the same instead of bugid(same for the
test name "Test.java").
BUILD_JDK_JTREG_LIBRARIES_LIBS_libtest819432
On 02/04/2018 19:35, Alan Snyder wrote:
Please review the following change to the macOS AWT.
Bug: https://bugs.openjdk.java.net/browse/JDK-8194327
Webrev: http://cr.openjdk.java.net/~serb/alans/8194327/webrev.00/
The goal of this change is to allow a Java desktop application on macOS to
properly coexist with a native utility panel, such as the native color chooser.
The native color chooser is an example of a window that can become the key
(focused) window but cannot become the main window.
If the previously active window is a Java frame, it should resign key window
status (lose focus), but retain the main window status.
A window that is main but not key does not own the keyboard focus, but it
appears active, and if it is using the screen menu bar,
it may be invoked to process a menu item action (if the menu item is not
already handled by the key window).
The current macOS AWT does not support this combination of window states. A
Java window is either key and main, or neither.
When the color chooser becomes key (obtains focus), the Java frame resigns both
key and main status.
This change allows the key window status to be resigned while retaining the
main window status, with the appropriate behavior.
Note that with this change, it remains impossible to implement a Java window
that behaves like the native color chooser (i.e., can become key but not main).
That would require a much bigger change.
Alan
--
Best regards, Sergey.