From b5acb61771d31fa31266a545b485d72ee92a655c Mon Sep 17 00:00:00 2001 From: Adam Date: Fri, 7 Jun 2019 19:06:46 -0400 Subject: [PATCH] key remapping: fix clearing input when plugin is turned on --- .../plugins/keyremapping/KeyRemappingListener.java | 11 +++-------- .../plugins/keyremapping/KeyRemappingPlugin.java | 2 ++ 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/keyremapping/KeyRemappingListener.java b/runelite-client/src/main/java/net/runelite/client/plugins/keyremapping/KeyRemappingListener.java index ba1b3cfa29..56cf3bbedc 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/keyremapping/KeyRemappingListener.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/keyremapping/KeyRemappingListener.java @@ -191,23 +191,18 @@ class KeyRemappingListener extends MouseAdapter implements KeyListener switch (e.getKeyCode()) { case KeyEvent.VK_ENTER: + case KeyEvent.VK_ESCAPE: plugin.setTyping(false); clientThread.invoke(plugin::lockChat); break; - case KeyEvent.VK_ESCAPE: - plugin.setTyping(false); - clientThread.invoke(() -> - { - client.setVar(VarClientStr.CHATBOX_TYPED_TEXT, ""); - plugin.lockChat(); - }); - break; case KeyEvent.VK_BACK_SPACE: + // Only lock chat on backspace when the typed text is now empty if (Strings.isNullOrEmpty(client.getVar(VarClientStr.CHATBOX_TYPED_TEXT))) { plugin.setTyping(false); clientThread.invoke(plugin::lockChat); } + break; } } } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/keyremapping/KeyRemappingPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/keyremapping/KeyRemappingPlugin.java index 89d833c92b..0bfebefdb1 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/keyremapping/KeyRemappingPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/keyremapping/KeyRemappingPlugin.java @@ -183,6 +183,8 @@ public class KeyRemappingPlugin extends Plugin if (chatboxInput != null) { chatboxInput.setText(getPlayerNameWithIcon() + ": " + PRESS_ENTER_TO_CHAT); + // Typed text can be non-empty on plugin start, so clear it now + client.setVar(VarClientStr.CHATBOX_TYPED_TEXT, ""); } }