diff --git a/runelite-api/src/main/java/net/runelite/api/ScriptID.java b/runelite-api/src/main/java/net/runelite/api/ScriptID.java
index 4000d0e727..778b271036 100644
--- a/runelite-api/src/main/java/net/runelite/api/ScriptID.java
+++ b/runelite-api/src/main/java/net/runelite/api/ScriptID.java
@@ -67,6 +67,11 @@ public final class ScriptID
*/
public static final int CLEAR_CHATBOX_PANEL = 677;
+ /**
+ * Builds the chatbox input widget
+ */
+ public static final int CHAT_PROMPT_INIT = 223;
+
/**
* Queries the completion state of a quest by its struct id
*
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/chatcommands/ChatKeyboardListener.java b/runelite-client/src/main/java/net/runelite/client/plugins/chatcommands/ChatKeyboardListener.java
index 3b6de082f4..dc9c1fffe1 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/chatcommands/ChatKeyboardListener.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/chatcommands/ChatKeyboardListener.java
@@ -28,6 +28,7 @@ import java.awt.event.KeyEvent;
import javax.inject.Inject;
import javax.inject.Singleton;
import net.runelite.api.Client;
+import net.runelite.api.ScriptID;
import net.runelite.api.VarClientStr;
import net.runelite.client.callback.ClientThread;
import net.runelite.client.input.KeyListener;
@@ -82,11 +83,19 @@ public class ChatKeyboardListener implements KeyListener
replacement = "";
}
- clientThread.invoke(() -> client.setVar(VarClientStr.CHATBOX_TYPED_TEXT, replacement));
+ clientThread.invoke(() ->
+ {
+ client.setVar(VarClientStr.CHATBOX_TYPED_TEXT, replacement);
+ client.runScript(ScriptID.CHAT_PROMPT_INIT);
+ });
}
break;
case KeyEvent.VK_BACK_SPACE:
- clientThread.invoke(() -> client.setVar(VarClientStr.CHATBOX_TYPED_TEXT, ""));
+ clientThread.invoke(() ->
+ {
+ client.setVar(VarClientStr.CHATBOX_TYPED_TEXT, "");
+ client.runScript(ScriptID.CHAT_PROMPT_INIT);
+ });
break;
}
}