From 2c645beddf2b3f88dbe01769b14bd7dec1a85d15 Mon Sep 17 00:00:00 2001 From: bigguy345 Date: Fri, 26 Dec 2025 18:15:13 +0200 Subject: [PATCH] Improved hover state hover logic --- .../java/noppes/npcs/client/gui/util/GuiScriptTextArea.java | 2 +- .../client/gui/util/script/interpreter/hover/HoverState.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/noppes/npcs/client/gui/util/GuiScriptTextArea.java b/src/main/java/noppes/npcs/client/gui/util/GuiScriptTextArea.java index 474376335..028f46293 100644 --- a/src/main/java/noppes/npcs/client/gui/util/GuiScriptTextArea.java +++ b/src/main/java/noppes/npcs/client/gui/util/GuiScriptTextArea.java @@ -1020,7 +1020,7 @@ public class GuiScriptTextArea extends GuiNpcTextField { */ private void updateHoverState(int xMouse, int yMouse) { // Don't show tooltips when not active, clicking, or when overlays are visible - if (!active || !isEnabled() || clicked || searchBar.isVisible() || + if (!isEnabled() || clicked || searchBar.isVisible() || goToLineDialog.isVisible() || KEYS_OVERLAY.isVisible() || renameHandler.isActive()) { hoverState.clearHover(); return; diff --git a/src/main/java/noppes/npcs/client/gui/util/script/interpreter/hover/HoverState.java b/src/main/java/noppes/npcs/client/gui/util/script/interpreter/hover/HoverState.java index d1d4435ba..65e9d7c2d 100644 --- a/src/main/java/noppes/npcs/client/gui/util/script/interpreter/hover/HoverState.java +++ b/src/main/java/noppes/npcs/client/gui/util/script/interpreter/hover/HoverState.java @@ -19,7 +19,7 @@ import noppes.npcs.client.gui.util.script.interpreter.Token; public class HoverState { /** Minimum hover time (ms) before showing tooltip */ - private static final long HOVER_DELAY_MS = 500; + private static final long HOVER_DELAY_MS = 100; // ==================== STATE ==================== @@ -151,6 +151,7 @@ public class HoverState { public void update(int mouseX, int mouseY, Token token, int tokenX, int tokenY, int tokenW) { lastMouseX = mouseX; lastMouseY = mouseY; + clickToPinEnabled=false; // If a token has been pinned by click, ignore mouse movement updates if (pinnedToken != null) { // keep pinned tooltip visible