GDK on Windows doesn't handle keypad/numpad events correctly
Basically, see this GDK returns incorrect keysyms for keypad on Windows. I couldn't get any helpful answer there, so I'll report it here.
The GDK keysyms returned on Windows when using the numpad/keypad are broken. An example being not differentiating between GDK_KEY_Home and GDK_KEY_KP_Home. The KP_0 - KP_9 keysyms work, but any other keypad presses return incorrect (non-keypad) keysyms on Windows, it works fine on Linux.
In the Discourse thread linked at the top you can find a minimal code example that exposes the problem. If you compile and run it on Linux it'll work as expected (ie according to the GDK docs), if you run it on Windows, it fails to recognize the keypad input and returns incorrect values.