diff --git a/C#/AutoHotInterception/AutoHotInterception.csproj b/C#/AutoHotInterception/AutoHotInterception.csproj index 65938c3..cd0b459 100644 --- a/C#/AutoHotInterception/AutoHotInterception.csproj +++ b/C#/AutoHotInterception/AutoHotInterception.csproj @@ -46,6 +46,9 @@ + + + if not exist "$(TargetDir)x86" mkdir "$(TargetDir)x86" diff --git a/C#/AutoHotInterception/ToDo.md b/C#/AutoHotInterception/ToDo.md new file mode 100644 index 0000000..9248836 --- /dev/null +++ b/C#/AutoHotInterception/ToDo.md @@ -0,0 +1,15 @@ +# Fix issues with Numlock/Pause +BlueChipps in AHI Discord has a proposed fix [here](https://github.com/bluechipps/AutoHotInterception/tree/pause_numlock_support) + +# Poor coding of extended keys +Currently, there is an `.ignore` flag on `KeyboardState` +When an extended code comes in (eg extended Shift or Ctrl), then the key may be ignored and `block` could never be set +so the extended modifier will always be passed through. +Implement better system: +* When an extended modifier is seen, add it to a buffer +* When the next key comes in, check if it is subscribed and blocked +* If it is, then purge the buffer +* If it is not, play back the buffered extended key code and then play back the unblocked key + +Del is a good example: +If Del (Above arrow keys, not on Numpad) is pressed while NumLock is off, it sends an Extended LCtrl, then the Pause Key