Index: /trunk/src/org/openstreetmap/josm/gui/dialogs/FilterDialog.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/dialogs/FilterDialog.java	(revision 4765)
+++ /trunk/src/org/openstreetmap/josm/gui/dialogs/FilterDialog.java	(revision 4766)
@@ -90,8 +90,8 @@
 
     private static final KeyStroke ENABLE_FILTER_SHORTCUT
-    = Shortcut.registerShortcut("core_multikey:enableFilter", "", 'E', Shortcut.GROUP_DIRECT, KeyEvent.CTRL_DOWN_MASK + KeyEvent.ALT_DOWN_MASK).getKeyStroke();
+    = Shortcut.registerShortcut("core_multikey:enableFilter", tr("Multikey: {0}", tr("Enable filter")), 'E', Shortcut.GROUP_DIRECT, KeyEvent.CTRL_DOWN_MASK + KeyEvent.ALT_DOWN_MASK).getKeyStroke();
 
     private static final KeyStroke HIDING_FILTER_SHORTCUT
-    = Shortcut.registerShortcut("core_multikey:hidingFilter", "", 'H', Shortcut.GROUP_DIRECT, KeyEvent.CTRL_DOWN_MASK + KeyEvent.ALT_DOWN_MASK).getKeyStroke();
+    = Shortcut.registerShortcut("core_multikey:hidingFilter", tr("Multikey: {0}", tr("Hide filter")), 'H', Shortcut.GROUP_DIRECT, KeyEvent.CTRL_DOWN_MASK + KeyEvent.ALT_DOWN_MASK).getKeyStroke();
 
 
Index: /trunk/src/org/openstreetmap/josm/gui/dialogs/LayerListDialog.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/dialogs/LayerListDialog.java	(revision 4765)
+++ /trunk/src/org/openstreetmap/josm/gui/dialogs/LayerListDialog.java	(revision 4766)
@@ -445,5 +445,5 @@
             putValue(SHORT_DESCRIPTION, tr("Toggle visible state of the selected layer."));
             putValue("help", HelpUtil.ht("/Dialog/LayerList#ShowHideLayer"));
-            putValue(ACCELERATOR_KEY, Shortcut.registerShortcut("core_multikey:showHideLayer", "", 'S', Shortcut.GROUP_DIRECT, KeyEvent.SHIFT_DOWN_MASK).getKeyStroke());
+            putValue(ACCELERATOR_KEY, Shortcut.registerShortcut("core_multikey:showHideLayer", tr("Multikey: {0}", tr("Show/hide layer")), 'S', Shortcut.GROUP_DIRECT, KeyEvent.SHIFT_DOWN_MASK).getKeyStroke());
             if (init) {
                 updateEnabledState();
@@ -632,5 +632,5 @@
             putValue(SMALL_ICON, ImageProvider.get("dialogs", "activate"));
             putValue(SHORT_DESCRIPTION, tr("Activate the selected layer"));
-            putValue(ACCELERATOR_KEY, Shortcut.registerShortcut("core_multikey:activateLayer", "", 'A', Shortcut.GROUP_DIRECT, KeyEvent.SHIFT_DOWN_MASK).getKeyStroke());
+            putValue(ACCELERATOR_KEY, Shortcut.registerShortcut("core_multikey:activateLayer",  tr("Multikey: {0}", tr("Activate layer")), 'A', Shortcut.GROUP_DIRECT, KeyEvent.SHIFT_DOWN_MASK).getKeyStroke());
             putValue("help", HelpUtil.ht("/Dialog/LayerList#ActivateLayer"));
         }
Index: /trunk/src/org/openstreetmap/josm/gui/layer/JumpToMarkerActions.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/layer/JumpToMarkerActions.java	(revision 4765)
+++ /trunk/src/org/openstreetmap/josm/gui/layer/JumpToMarkerActions.java	(revision 4766)
@@ -34,5 +34,5 @@
 
         public JumpToNextMarker(JumpToMarkerLayer layer) {
-            putValue(ACCELERATOR_KEY, Shortcut.registerShortcut("core_multikey:nextMarker", "", 'J', Shortcut.GROUP_DIRECT, KeyEvent.ALT_DOWN_MASK + KeyEvent.CTRL_DOWN_MASK).getKeyStroke());
+            putValue(ACCELERATOR_KEY, Shortcut.registerShortcut("core_multikey:nextMarker", tr("Multikey: {0}", tr("Next marker")), 'J', Shortcut.GROUP_DIRECT, KeyEvent.ALT_DOWN_MASK + KeyEvent.CTRL_DOWN_MASK).getKeyStroke());
             putValue(SHORT_DESCRIPTION, tr("Jump to next marker"));
             putValue(NAME, tr("Jump to next marker"));
@@ -90,5 +90,5 @@
             this.layer = (Layer)layer;
 
-            putValue(ACCELERATOR_KEY, Shortcut.registerShortcut("core_multikey:previousMarker", "", 'P', Shortcut.GROUP_DIRECT, KeyEvent.ALT_DOWN_MASK + KeyEvent.CTRL_DOWN_MASK).getKeyStroke());
+            putValue(ACCELERATOR_KEY, Shortcut.registerShortcut("core_multikey:previousMarker", tr("Multikey: {0}", tr("Previos marker")), 'P', Shortcut.GROUP_DIRECT, KeyEvent.ALT_DOWN_MASK + KeyEvent.CTRL_DOWN_MASK).getKeyStroke());
             putValue(SHORT_DESCRIPTION, tr("Jump to previous marker"));
             putValue(NAME, tr("Jump to previous marker"));
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/PrefJPanel.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/PrefJPanel.java	(revision 4765)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/PrefJPanel.java	(revision 4766)
@@ -375,5 +375,5 @@
             ListSelectionModel lsm = panel.shortcutTable.getSelectionModel(); // can't use e here
             if (!lsm.isSelectionEmpty()) {
-                int row = lsm.getMinSelectionIndex();
+                int row = panel.shortcutTable.convertRowIndexToModel(lsm.getMinSelectionIndex());
                 Shortcut sc = (Shortcut)panel.model.getValueAt(row, -1);
                 panel.cbDefault.setSelected(!sc.getAssignedUser());
@@ -414,5 +414,5 @@
             if (lsm != null && !lsm.isSelectionEmpty()) {
                 if (e != null) { // only if we've been called by a user action
-                    int row = lsm.getMinSelectionIndex();
+                    int row = panel.shortcutTable.convertRowIndexToModel(lsm.getMinSelectionIndex());
                     Shortcut sc = (Shortcut)panel.model.getValueAt(row, -1);
                     sc.setAssignedUser(!panel.cbDefault.isSelected());
