Release v0.0.5-alpha
Pre-release
Pre-release
·
15 commits
to main
since this release
chore: proper keybind handling and better input blocking system (#53) * chore: move CigaretteScreen instance into Cigarette pkg * create keybinding helper * create Minecraft Keyboard mixin * remove KeyBinding mod initializer * add binding and press checks * add input blocking methods * add mouse blocking enabled by default when keys are blocked * create keybind wrappers and InputBlocker class * use new wrappers * add mouse blocking * add method to trigger virtual key press * fix: wrapped keybinds do not receive events * properly support mouse events (no scrolling) * add virtual key holding and releasing * fix: mouse virtual state desyncing from physical state after unblocking * create tick helper to schedule events to occur in X ticks * add hold/release for X ticks functionality * chore: add javadocs to TickHelper * chore: finish javadocs in KeybindHelper * chore: rename keys to make sense * add most other native keybinds * chore: finish javadocs in MinecraftKeybind * remove asMouse in favor of a constructor arg * chore: finish javadocs in VirtualKeybind * fix: missing checks on whether keybind is a mouse binding when comparing against mouse inputs * chore: add javadocs to InputBlocker * add methods for setting the default and current bounded key * add registering method for virtual keybinds * update KeybindWidget to use VirtualKeybind * fix: pressing escape to unbind keybind closes GUI afterwards * fix: keybinds loaded from config do not work * remove KeyBindingAccessor and KeyboardInputMixin and update modules that used those * fix: virtual keybinds trigger inside of GUIs * fix crash when attempting to bridge on a mode that is disabled * remove restriction on keys that can be bound * fix virtual keybinds queueing events when modules are disabled * fix: mouse events duplicate when in GUIs