From 4d594684dea6e9e19a76921ba78cc2151bb2cc33 Mon Sep 17 00:00:00 2001 From: isXander Date: Wed, 1 Feb 2023 15:52:42 +0000 Subject: [PATCH] fix conflicting key/controller binds --- .../isxander/controlify/bindings/ControllerBindings.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/main/java/dev/isxander/controlify/bindings/ControllerBindings.java b/src/main/java/dev/isxander/controlify/bindings/ControllerBindings.java index d182cbe..280d407 100644 --- a/src/main/java/dev/isxander/controlify/bindings/ControllerBindings.java +++ b/src/main/java/dev/isxander/controlify/bindings/ControllerBindings.java @@ -1,6 +1,8 @@ package dev.isxander.controlify.bindings; import com.google.gson.JsonObject; +import dev.isxander.controlify.Controlify; +import dev.isxander.controlify.InputMode; import dev.isxander.controlify.controller.Controller; import dev.isxander.controlify.event.ControlifyEvents; import dev.isxander.controlify.mixins.KeyMappingAccessor; @@ -44,6 +46,7 @@ public class ControllerBindings { ControlifyEvents.CONTROLLER_BIND_REGISTRY.invoker().onRegisterControllerBinds(this, controller); ControlifyEvents.CONTROLLER_STATE_UPDATED.register(this::imitateVanillaClick); + ControlifyEvents.INPUT_MODE_CHANGED.register(mode -> KeyMapping.releaseAll()); } public BindingSupplier register(ControllerBinding binding) { @@ -76,6 +79,9 @@ public class ControllerBindings { } private void imitateVanillaClick(Controller controller) { + if (Controlify.getInstance().getCurrentInputMode() != InputMode.CONTROLLER) + return; + for (var binding : registry().values()) { KeyMapping vanillaKey = binding.override(); if (vanillaKey == null) continue;