From 3215ebd6d5b41cc62c4a568789f2fd2504fbdd6c Mon Sep 17 00:00:00 2001 From: Albert Y <76888457+filterpaper@users.noreply.github.com> Date: Sat, 20 May 2023 20:16:36 +0800 Subject: [PATCH] Add a change log for PR20584 (#20998) --- docs/ChangeLog/20230528/PR20584.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 docs/ChangeLog/20230528/PR20584.md diff --git a/docs/ChangeLog/20230528/PR20584.md b/docs/ChangeLog/20230528/PR20584.md new file mode 100644 index 000000000000..e9e49f5730a2 --- /dev/null +++ b/docs/ChangeLog/20230528/PR20584.md @@ -0,0 +1,3 @@ +Two new boolean callback functions, `pre_process_record_kb` and `pre_process_record_user`, are added in this change. They are called at the beginning of `process_record`, right before `process_combo`. + +Similar to existing `*_kb` and `*_user` callback functions, returning `false` will halt further processing of key events. The `pre_process_record_user` function will allow user space opportunity to handle or capture an input before it undergoes quantum processing. For example, while action tapping is still resolving the tap or hold output of a mod-tap key, `pre_process_record_user` can capture the next key record of an input event that follows. That key record can be used to influence the [decision of the mod-tap](https://docs.qmk.fm/#/tap_hold) key that is currently undergoing quantum processing.