summaryrefslogtreecommitdiff
path: root/libjava/classpath/java/awt/DefaultKeyboardFocusManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/classpath/java/awt/DefaultKeyboardFocusManager.java')
-rw-r--r--libjava/classpath/java/awt/DefaultKeyboardFocusManager.java10
1 files changed, 6 insertions, 4 deletions
diff --git a/libjava/classpath/java/awt/DefaultKeyboardFocusManager.java b/libjava/classpath/java/awt/DefaultKeyboardFocusManager.java
index a60cefd9c9d..037cb834c40 100644
--- a/libjava/classpath/java/awt/DefaultKeyboardFocusManager.java
+++ b/libjava/classpath/java/awt/DefaultKeyboardFocusManager.java
@@ -274,10 +274,12 @@ public class DefaultKeyboardFocusManager extends KeyboardFocusManager
public boolean dispatchKeyEvent (KeyEvent e)
{
- Component focusOwner = getGlobalPermanentFocusOwner ();
-
+ Component focusOwner = getFocusOwner();
+ if (focusOwner == null)
+ focusOwner = getFocusedWindow();
+
if (focusOwner != null)
- redispatchEvent(focusOwner, e);
+ redispatchEvent(focusOwner, e);
// Loop through all registered KeyEventPostProcessors, giving
// each a chance to process this event.
@@ -294,7 +296,7 @@ public class DefaultKeyboardFocusManager extends KeyboardFocusManager
// MenuShortcut.
if (postProcessKeyEvent (e))
return true;
-
+
// Always return true.
return true;
}