Button: enabled Button.defaultButtonFollowsFocus on Windows, which allows pressing focused button with <kbd>Enter</kbd> key (as in Windows LaF)

This commit is contained in:
Karl Tauber
2019-12-16 18:11:48 +01:00
parent f20803ae57
commit 475b258e4a
4 changed files with 12 additions and 0 deletions

View File

@@ -12,6 +12,8 @@ FlatLaf Change Log
- TabbedPane: Support background color for selected tabs.
- CheckBox: changed `CheckBox.arc` from radius to diameter to be consistent with
`Button.arc` and `Component.arc`
- Button: Enabled `Button.defaultButtonFollowsFocus` on Windows, which allows
pressing focused button with <kbd>Enter</kbd> key (as in Windows LaF).
- Fixed clipped borders at 125%, 150% and 175% scaling when outer focus width is
zero (default in "Flat Light" and "Flat Dark" themes).

View File

@@ -94,6 +94,7 @@ Button.margin=2,14,2,14
Button.iconTextGap=4
Button.rollover=true
Button.defaultButtonFollowsFocus=false
[win]Button.defaultButtonFollowsFocus=true
Button.default.borderWidth=1

View File

@@ -77,6 +77,9 @@ class ControlBar
EventQueue.invokeLater( () -> {
// update info label because user scale factor may change
updateInfoLabel();
// this is necessary because embedded JOptionPane's "steal" the default button
frame.getRootPane().setDefaultButton( closeButton );
} );
}
} );

View File

@@ -143,6 +143,9 @@ public class FlatTestFrame
KeyStroke.getKeyStroke( KeyEvent.VK_ESCAPE, 0, false ),
JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT );
// make the "close" button the default button
getRootPane().setDefaultButton( closeButton );
// close frame
closeButton.addActionListener(e -> dispose());
@@ -170,6 +173,9 @@ public class FlatTestFrame
// enable/disable scale factor combobox
updateScaleFactorComboBox();
// this is necessary because embedded JOptionPane's "steal" the default button
getRootPane().setDefaultButton( closeButton );
} );
}
} );