The dynamic_macro_record_key_user() user hook should trigger on every call to dynamic_macro_record_key(). Code in the else block only triggers when the recording has reached the end of the available buffer. This moves the hook call out of the conditional block. A more useful action should still be added for the else block. Fixes#16173