JDK-4511021 : Revisit how KeyboardFocusManager clears its fields
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 1.4.0
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2001-10-04
  • Updated: 2002-04-04
  • Resolved: 2002-04-04
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
1.4.1 hopperFixed
Related Reports
Relates :  
Relates :  
Description
This bug is filed in response to bug 4495338.  Although the 4495338 fix is valid, the bug itself could be indicative of additional problems with how KeyboardFocusManager clears its fields.  This issue should be investigated further.

Comments
CONVERTED DATA BugTraq+ Release Management Values COMMIT TO FIX: hopper FIXED IN: hopper INTEGRATED IN: hopper
24-08-2004

EVALUATION Should be looked at for hopper ###@###.### 2001-10-04 Name: rpR10076 Date: 11/16/2001 commit to hopper and tiger ====================================================================== Name: osR10079 Date: 03/21/2002 DefaultKeyboardFocusManager clears KeyboardFocusManager fields (such as activeWindow, focusedWindow, focusOwner etc) in response to appropriate events. But toplevel doesn't receive WINDOW_DEACTIVATED and WINDOW_LOST_FOCUS after disposing. This happens because we remove all events for it and its children from EventQueue due toplevel's disposing. To fix this i suggest not to remove Window-, Focus-, KeyEvents and also Sequenced- and SentEvents since they wrap some Window- and FocusEvents. For this reason i add boolean paramenter removeAllEvents to EventQueue.removeSourceEvents() (since we still need to remove all events for MenuComponents). Also i removed clearStaticWindowRefs() method from KeyboardFocusManager (this method was introduced by Brent for quick fix of this problem in Merlin). ###@###.### ======================================================================
24-08-2004