Index: trunk/src/org/openstreetmap/josm/gui/preferences/shortcut/PrefJPanel.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/shortcut/PrefJPanel.java	(revision 18224)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/shortcut/PrefJPanel.java	(revision 18227)
@@ -19,6 +19,4 @@
 
 import javax.swing.AbstractAction;
-import javax.swing.BoxLayout;
-import javax.swing.DefaultComboBoxModel;
 import javax.swing.JCheckBox;
 import javax.swing.JLabel;
@@ -189,6 +187,8 @@
     private void initComponents() {
         CbAction action = new CbAction(this);
-        setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
-        add(buildFilterPanel());
+        GBC gbc = GBC.eol().insets(3).fill(GBC.HORIZONTAL);
+
+        setLayout(new GridBagLayout());
+        add(buildFilterPanel(), gbc);
 
         // This is the list of shortcuts:
@@ -206,7 +206,6 @@
         listScrollPane.setViewportView(shortcutTable);
 
-        JPanel listPane = new JPanel(new GridLayout());
-        listPane.add(listScrollPane);
-        add(listPane);
+        gbc.weighty = 1;
+        add(listScrollPane, gbc.fill(GBC.BOTH));
 
         // and here follows the edit area. I won't object to someone re-designing it, it looks, um, "minimalistic" ;)
@@ -223,5 +222,5 @@
         cbAlt.setText(ALT); // see above for why no tr()
         tfKey.setAction(action);
-        tfKey.setModel(new DefaultComboBoxModel<>(keyList.values().toArray(new String[keyList.size()])));
+        tfKey.getModel().addAllElements(keyList.values());
         cbMeta.setAction(action);
         cbMeta.setText(META); // see above for why no tr()
@@ -243,5 +242,6 @@
         action.actionPerformed(null); // init checkboxes
 
-        add(shortcutEditPane);
+        gbc.weighty = 0;
+        add(shortcutEditPane, gbc);
     }
 
