From 42e6b1d7c24add35dbdff37dacdcf466f88e9652 Mon Sep 17 00:00:00 2001 From: imreallybadatnames Date: Sun, 12 May 2024 00:45:17 +1100 Subject: [PATCH 1/4] fix focus --- .../de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java b/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java index b48bee30ae..04b798d4ca 100644 --- a/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java +++ b/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java @@ -50,7 +50,6 @@ protected void setup() { int j = (this.height - this.backgroundHeight) / 2; this.nameField = new TextFieldWidget(this.textRenderer, i + 62, j + 24, 98, 12, Text.translatable("container.spectrum.bedrock_anvil")); - this.nameField.setFocusUnlocked(false); this.nameField.setEditableColor(-1); this.nameField.setUneditableColor(-1); this.nameField.setDrawsBackground(false); @@ -60,7 +59,6 @@ protected void setup() { this.addSelectableChild(this.nameField); this.loreField = new TextFieldWidget(this.textRenderer, i + 45, j + 76, 116, 12, Text.translatable("container.spectrum.bedrock_anvil.lore")); - this.loreField.setFocusUnlocked(false); this.loreField.setEditableColor(-1); this.loreField.setUneditableColor(-1); this.loreField.setDrawsBackground(false); @@ -93,10 +91,8 @@ public boolean keyPressed(int keyCode, int scanCode, int modifiers) { if (keyCode == GLFW.GLFW_KEY_TAB) { Element focusedElement = getFocused(); if (focusedElement == this.nameField) { - this.nameField.setFocused(false); setFocused(this.loreField); } else if (focusedElement == this.loreField) { - this.loreField.setFocused(false); setFocused(this.nameField); } } From 3e54e78c764e31695b62a140e1349db5c6f5ddb1 Mon Sep 17 00:00:00 2001 From: imreallybadatnames Date: Sun, 12 May 2024 00:54:50 +1100 Subject: [PATCH 2/4] couple nits --- .../spectrum/inventories/BedrockAnvilScreen.java | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java b/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java index 04b798d4ca..23a03c216a 100644 --- a/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java +++ b/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java @@ -1,6 +1,5 @@ package de.dafuqs.spectrum.inventories; -import com.mojang.blaze3d.systems.*; import de.dafuqs.spectrum.*; import de.dafuqs.spectrum.helpers.*; import de.dafuqs.spectrum.networking.*; @@ -84,17 +83,17 @@ public void resize(MinecraftClient client, int width, int height) { @Override public boolean keyPressed(int keyCode, int scanCode, int modifiers) { - if (keyCode == 256) { - this.client.player.closeHandledScreen(); + if (keyCode == GLFW.GLFW_KEY_ESCAPE) { + this.close(); + return true; } if (keyCode == GLFW.GLFW_KEY_TAB) { Element focusedElement = getFocused(); - if (focusedElement == this.nameField) { - setFocused(this.loreField); - } else if (focusedElement == this.loreField) { - setFocused(this.nameField); - } + if (focusedElement == this.nameField) + this.setFocused(this.loreField); + else if (focusedElement == this.loreField) + this.setFocused(this.nameField); } return this.nameField.keyPressed(keyCode, scanCode, modifiers) || this.nameField.isActive() From 5f00369f6e58965ff7db74cb18d36843f1aeb041 Mon Sep 17 00:00:00 2001 From: imreallybadatnames Date: Sun, 12 May 2024 12:55:56 +1100 Subject: [PATCH 3/4] remove "parasitic" key handling --- .../de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java b/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java index 23a03c216a..e0a31b0d11 100644 --- a/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java +++ b/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java @@ -96,8 +96,7 @@ else if (focusedElement == this.loreField) this.setFocused(this.nameField); } - return this.nameField.keyPressed(keyCode, scanCode, modifiers) || this.nameField.isActive() - || this.loreField.keyPressed(keyCode, scanCode, modifiers) || this.loreField.isActive() + return this.getFocused() != null && this.getFocused().keyPressed(keyCode, scanCode, modifiers) || super.keyPressed(keyCode, scanCode, modifiers); } From 7b8cde2dd28dbb4d695e6700f379651e6418a097 Mon Sep 17 00:00:00 2001 From: imreallybadatnames Date: Sun, 12 May 2024 13:46:53 +1100 Subject: [PATCH 4/4] forgor --- .../dafuqs/spectrum/inventories/BedrockAnvilScreen.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java b/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java index e0a31b0d11..2bdf413e92 100644 --- a/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java +++ b/src/main/java/de/dafuqs/spectrum/inventories/BedrockAnvilScreen.java @@ -89,14 +89,15 @@ public boolean keyPressed(int keyCode, int scanCode, int modifiers) { } if (keyCode == GLFW.GLFW_KEY_TAB) { - Element focusedElement = getFocused(); + Element focusedElement = this.getFocused(); if (focusedElement == this.nameField) this.setFocused(this.loreField); else if (focusedElement == this.loreField) this.setFocused(this.nameField); + return true; } - - return this.getFocused() != null && this.getFocused().keyPressed(keyCode, scanCode, modifiers) + + return (this.getFocused() != null && this.getFocused().keyPressed(keyCode, scanCode, modifiers)) || super.keyPressed(keyCode, scanCode, modifiers); } @@ -193,5 +194,5 @@ public void onSlotUpdate(ScreenHandler handler, int slotId, ItemStack stack) { this.setFocused(this.nameField); } } - + }