The accelerator cache maintains a 1:1 mapping for key→command and a 1:n mapping for command→keys. When a new command is set for a key it was previously only updating the key→command map and then adding the key to the command→keys map. It never removed the key from the command→keys map for the old command. When the menus are eventually updated, it looks up whether each item has a shortcut based on the item’s command. Because the old command was never removed, this ended up making it display the same key binding on multiple menu items. Change-Id: I6d75834f4c49b1f5c105ec40cb27b8e73006152d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190928 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
UNO Framework
Toolbars, menus, UNO stuff, including accelerators and interaction, etc.