diff --git a/src/main/java/chylex/bettercontrols/gui/BetterControlsScreen.java b/src/main/java/chylex/bettercontrols/gui/BetterControlsScreen.java
index 6b74adf..d68a7a0 100644
--- a/src/main/java/chylex/bettercontrols/gui/BetterControlsScreen.java
+++ b/src/main/java/chylex/bettercontrols/gui/BetterControlsScreen.java
@@ -205,7 +205,7 @@ public class BetterControlsScreen extends OptionsSubScreen {
 	
 	private void generateKeyBindingWithModifierOption(final int y, final List<GuiEventListener> elements, final LiteralText text, final KeyBindingWithModifier binding) {
 		final CycleButtonWidget<ModifierKey> modifierButton = new CycleButtonWidget<>(col4(2), y, COL4_W, MODIFIER_OPTIONS, binding.getModifier(), binding::setModifier);
-		final KeyBindingWidget bindingButton = new KeyBindingWidget(col4(3), y, COL4_W, binding, this::startEditingKeyBinding);
+		final KeyBindingWidget bindingButton = new KeyBindingWidget(col4(3), y, COL4_W, text, binding, this::startEditingKeyBinding);
 		bindingButton.linkButtonToBoundState(modifierButton);
 		
 		generateLeftSideText(y, elements, text);
diff --git a/src/main/java/chylex/bettercontrols/gui/elements/KeyBindingWidget.java b/src/main/java/chylex/bettercontrols/gui/elements/KeyBindingWidget.java
index 663d484..848b45b 100644
--- a/src/main/java/chylex/bettercontrols/gui/elements/KeyBindingWidget.java
+++ b/src/main/java/chylex/bettercontrols/gui/elements/KeyBindingWidget.java
@@ -1,5 +1,6 @@
 package chylex.bettercontrols.gui.elements;
 import chylex.bettercontrols.util.Key;
+import chylex.bettercontrols.util.LiteralText;
 import com.mojang.blaze3d.platform.InputConstants;
 import net.minecraft.ChatFormatting;
 import net.minecraft.client.KeyMapping;
@@ -23,16 +24,16 @@ public final class KeyBindingWidget extends Button {
 	private final Consumer<KeyBindingWidget> onEditingStarted;
 	private boolean isEditing;
 	
-	public KeyBindingWidget(final int x, final int y, final int width, final int height, final KeyMapping binding, final Consumer<KeyBindingWidget> onEditingStarted) {
+	public KeyBindingWidget(final int x, final int y, final int width, final int height, final LiteralText bindingName, final KeyMapping binding, final Consumer<KeyBindingWidget> onEditingStarted) {
 		super(x, y, width, height, TextComponent.EMPTY, btn -> {});
 		this.binding = binding;
-		this.bindingName = new TranslatableComponent(binding.saveString());
+		this.bindingName = bindingName;
 		this.onEditingStarted = onEditingStarted;
 		updateKeyBindingText();
 	}
 	
-	public KeyBindingWidget(final int x, final int y, final int width, final KeyMapping binding, final Consumer<KeyBindingWidget> onEditingStarted) {
-		this(x, y, width, 20, binding, onEditingStarted);
+	public KeyBindingWidget(final int x, final int y, final int width, final LiteralText bindingName, final KeyMapping binding, final Consumer<KeyBindingWidget> onEditingStarted) {
+		this(x, y, width, 20, bindingName, binding, onEditingStarted);
 	}
 	
 	public void linkButtonToBoundState(final AbstractButton button) {