<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi,<div>Please review a fix for&nbsp;CR 7124375: [macosx]&nbsp;Focus isn't transfered as expected between components.&nbsp;</div><div>The main issue addressed by this fix is that information about current focused window and focus owner isn't shared among&nbsp;LWKeyboardFocusManagerPeer instances. Also, while the current&nbsp;KeyboardFocusManager&nbsp;code makes it look like each KeyboardFocusManager instance needs its own peer instance, the reality is different because both WKeyboardFocusManagerPeer and XKeyboardManagerPeer doesn't have non static fields. In other words, all the WKeyboardFocusManagerPeer/XKeyboardManagerPeer fields are static. Therefore, there is no need in in multiple peer instances, one singleton peer shared among all the&nbsp;KeyboardFocusManager instances is enough. This fix addresses that issue as well by explicitly turning&nbsp;KeyboardManagerPeer&nbsp;implementations into singletons for the sake of cleaner code.</div><div><br></div><div>Bug:&nbsp;<a href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7124375">http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7124375</a></div><div>Webrev:&nbsp;<a href="http://cr.openjdk.java.net/~leonidr/7124375/webrev.00/">http://cr.openjdk.java.net/~leonidr/7124375/webrev.00/</a></div><div><br></div><div>Thanks,</div><div>Leonid.</div><div><br></div></body></html>