Open Dzienny opened 10 years ago
The feature was unfinished because LWJGL didn't support key modifier flags. The flags indicate which combination of CTRL, SHIFT, and ALT keys was pressed
Lwjgl reads these keys (ctrl, shift, alt) directly, so the flags can be added manually.
Actually, some flags are there already -> https://github.com/andrewphorn/ClassiCube-Client/blob/master/src/main/java/com/mojang/minecraft/player/InputHandlerImpl.java
Example: If the hacks are on, then: keylist[7] is a flag for SHIFT keylist[8] is a flag for CTRL
TextHotKey extension doesn't work. I noticed that there is some code to handle this extension, but it hasn't been finished.
Also, the extension should have a new behaviour that would allow the server to easily remove all the key bindings with one packet. I suggest that could be done with, for example, a packet that contains KeyCode equal to 0.
If someone feels like implementing it - the new release of MCDzienny (11.8) has a plugin that could be helpful for testing. It's in plugins tab -> Keyboard Shortcuts. It provides server side implementation for TextHotKey extension. Mind that currently this feature of MCDzienny works only on Windows, the mono version hasn't been done yet.