Windows: co-existence with kMonad?
bogorad opened this issue · 2 comments
I use kMonad for windows. It doesn't look like Warpd is receiving the keys emitted by kMonad/win. Is it even possible?
I believe kmonad uses the same hook used by warpd, so I would not expect them to place nicely. The windows port was done in a weekend and should be considered experimental. I am currently in the process of porting most of warpd's useful features to https://github.com/rvaiya/keyd and doing a proper port to other platforms, which should ultimately provide comparable functionality to kmonad.
Both KMonad and warpd use the same keyboard hook (SetWindowsHookEx(WH_KEYBOARD_LL)
), but I think that should not necessarily mean they can't work together.
I believe the order in which the keyboard hooks are installed is what matters: if you run warpd first, then KMonad second, then KMonad will get the keyboard events from Windows, drop them or generate new events or forward untouched events to the next hook (warpd).
However, you may need to remove the LLKHF_INJECTED
check which is going to be evaluated to true
when KMonad generates new keyboard events that are passed down to warpd:
warpd/src/platform/windows/windows.c
Lines 30 to 31 in 01650ea