About KeyCode, KeySym, Modifiers, Crossplatform and reliable code

That is really nice that you pick this up. I have been using the vtkWidgetCallbackMapper in C++, which I find quite confusing. I often prefer to use VTK without Qt and even developed my own small library for executing a call in the main thread since I need an alternative to QueuedConnection. In Python, I sometimes ask for the ‘SHIFT’ modified in a callback and even if I hold down shift I often see a result that the modifier is not enabled. Here it would be much simpler if the keysym contained the modifier as well. Thanks for looking into this