updated ShortcutRecorder framework