[8] Review request for 7149062: [macosx] dock menu don't show available frames (original) (raw)

Anthony Petrov anthony.petrov at oracle.com
Wed Apr 18 05:37:53 PDT 2012


Hello,

Please review a fix for http://bugs.sun.com/view_bug.do?bug_id=7149062 at:

http://cr.openjdk.java.net/~anthony/8-26-windowListInDockMenu-7149062.0/

The AWTWindow class now inherits from NSObject and implements the NSWindowDelegate protocol. The real NSWindow object is held in the nsWindow property of the AWTWindow class, and is represented by either an AWTWindow_Normal or AWTWindow_Panel instance. These two classes inherit from NSWindow and NSPanel correspondingly. Note, however, that we still return a reference to the NSWindow/NSPanel instance to Java so that the pointer could be used with CWrapper methods directly. A reference to an associated AWTWindow instance is always available as (AWTWindow*)[nsWindow delegate].

All windows that inherit from NSWindow are added to the windows list in the dock icon menu by default. We use NSPanel-based windows for UTILITY, HUD, NONACTIVATING, and HIDES_ON_DEACTIVATE windows only, because these kinds of windows typically don't represent main application windows, and thus aren't expected to be added to the windows list. Besides, UTILITY (and HUD?) windows just have to be NSPanels.

This fix is going to be back-ported to 7u6 later on.

-- best regards, Anthony



More information about the macosx-port-dev mailing list