8309041: Swingutilities2 methods requesting focus can have a Cause

Reviewed-by: tr, dnguyen
This commit is contained in:
Prasanta Sadhukhan 2026-03-16 02:12:25 +00:00
parent 1606564edd
commit 7484701e18

View File

@ -44,6 +44,7 @@ import java.awt.Rectangle;
import java.awt.RenderingHints;
import java.awt.Shape;
import java.awt.Toolkit;
import java.awt.event.FocusEvent;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
@ -795,7 +796,7 @@ public class SwingUtilities2 {
*/
public static void adjustFocus(JComponent c) {
if (!c.hasFocus() && c.isRequestFocusEnabled()) {
c.requestFocus();
c.requestFocus(FocusEvent.Cause.MOUSE_EVENT);
}
}
@ -1646,7 +1647,7 @@ public class SwingUtilities2 {
FocusTraversalPolicy policy = container.getFocusTraversalPolicy();
Component comp = policy.getDefaultComponent(container);
if (comp!=null) {
comp.requestFocus();
comp.requestFocus(FocusEvent.Cause.TRAVERSAL);
return comp;
}
}
@ -1656,13 +1657,13 @@ public class SwingUtilities2 {
Component comp = policy.getComponentAfter(rootAncestor, container);
if (comp!=null && SwingUtilities.isDescendingFrom(comp, container)) {
comp.requestFocus();
comp.requestFocus(FocusEvent.Cause.TRAVERSAL);
return comp;
}
}
}
if (component.isFocusable()) {
component.requestFocus();
component.requestFocus(FocusEvent.Cause.TRAVERSAL);
return component;
}
return null;