aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/moe/nea/firmament/mixins/MixinKeybindsScreen.java
diff options
context:
space:
mode:
authornea <nea@nea.moe>2023-10-28 04:07:47 +0200
committernea <nea@nea.moe>2023-10-28 04:07:47 +0200
commitad490f2ea7967cb6bb97cb797b33aa3554de46a5 (patch)
treec45cf7f4b8a6d60399fcc46f793c75bd8387211d /src/main/java/moe/nea/firmament/mixins/MixinKeybindsScreen.java
parent9e7da2829cdc949d211ef5021131b4a48ddc3054 (diff)
downloadfirmament-ad490f2ea7967cb6bb97cb797b33aa3554de46a5.tar.gz
firmament-ad490f2ea7967cb6bb97cb797b33aa3554de46a5.tar.bz2
firmament-ad490f2ea7967cb6bb97cb797b33aa3554de46a5.zip
Rename mixins after what they do, rather than where they do it
[no changelog] Mixins are now named after what they do, and mixins for the same class that do different things should be in two separate mixins now.
Diffstat (limited to 'src/main/java/moe/nea/firmament/mixins/MixinKeybindsScreen.java')
-rw-r--r--src/main/java/moe/nea/firmament/mixins/MixinKeybindsScreen.java59
1 files changed, 0 insertions, 59 deletions
diff --git a/src/main/java/moe/nea/firmament/mixins/MixinKeybindsScreen.java b/src/main/java/moe/nea/firmament/mixins/MixinKeybindsScreen.java
deleted file mode 100644
index 3a17983..0000000
--- a/src/main/java/moe/nea/firmament/mixins/MixinKeybindsScreen.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * SPDX-FileCopyrightText: 2023 Linnea Gräf <nea@nea.moe>
- *
- * SPDX-License-Identifier: GPL-3.0-or-later
- */
-
-package moe.nea.firmament.mixins;
-
-import moe.nea.firmament.gui.config.ManagedConfig;
-import moe.nea.firmament.keybindings.FirmamentKeyBindings;
-import net.minecraft.client.MinecraftClient;
-import net.minecraft.client.gui.screen.option.ControlsListWidget;
-import net.minecraft.client.gui.widget.ButtonWidget;
-import net.minecraft.client.option.KeyBinding;
-import net.minecraft.text.Text;
-import org.spongepowered.asm.mixin.Final;
-import org.spongepowered.asm.mixin.Mixin;
-import org.spongepowered.asm.mixin.Mutable;
-import org.spongepowered.asm.mixin.Shadow;
-import org.spongepowered.asm.mixin.injection.At;
-import org.spongepowered.asm.mixin.injection.Inject;
-import org.spongepowered.asm.mixin.injection.ModifyArg;
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
-
-@Mixin(ControlsListWidget.KeyBindingEntry.class)
-public class MixinKeybindsScreen {
-
- @Mutable
- @Shadow
- @Final
- private ButtonWidget editButton;
-
- @Shadow
- @Final
- private KeyBinding binding;
-
- @Shadow
- @Final
- private ButtonWidget resetButton;
-
- @ModifyArg(method = "<init>", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/widget/ButtonWidget;builder(Lnet/minecraft/text/Text;Lnet/minecraft/client/gui/widget/ButtonWidget$PressAction;)Lnet/minecraft/client/gui/widget/ButtonWidget$Builder;"))
- public ButtonWidget.PressAction onInit(ButtonWidget.PressAction action) {
- ManagedConfig config = FirmamentKeyBindings.INSTANCE.getKeyBindings().get(binding);
- if (config == null) return action;
- return button -> {
- config.showConfigEditor(MinecraftClient.getInstance().currentScreen);
- };
- }
-
- @Inject(method = "update", at = @At("HEAD"), cancellable = true)
- public void onUpdate(CallbackInfo ci) {
- ManagedConfig config = FirmamentKeyBindings.INSTANCE.getKeyBindings().get(binding);
- if (config == null) return;
- resetButton.active = false;
- editButton.setMessage(Text.translatable("firmament.keybinding.external"));
- ci.cancel();
- }
-
-}