diff --git a/src/main/java/codechicken/nei/guihook/GuiContainerManager.java b/src/main/java/codechicken/nei/guihook/GuiContainerManager.java index 0011e528..788087d5 100644 --- a/src/main/java/codechicken/nei/guihook/GuiContainerManager.java +++ b/src/main/java/codechicken/nei/guihook/GuiContainerManager.java @@ -664,12 +664,12 @@ public class GuiContainerManager { } } + hotkeys.remove(null); + hotkeys.remove(""); + if (!hotkeys.isEmpty()) { List hotkeystips = new ArrayList<>(); - Map> messages = new HashMap<>(); - hotkeys.remove(null); - hotkeys.remove(""); for (Map.Entry entry : hotkeys.entrySet()) { messages.computeIfAbsent(entry.getValue(), m -> new ArrayList<>()).add(entry.getKey()); @@ -704,13 +704,19 @@ public class GuiContainerManager { } } else if (NEIClientConfig.getBooleanSetting("inventory.hotkeysHelpText")) { + Map hotkeys = new HashMap<>(); boolean existsHotkeys = false; synchronized (instanceTooltipHandlers) { for (IContainerTooltipHandler handler : instanceTooltipHandlers) { - if (!handler.handleHotkeys(window, mousex, mousey, new HashMap<>()).isEmpty()) { - existsHotkeys = true; - break; + if (!(hotkeys = handler.handleHotkeys(window, mousex, mousey, hotkeys)).isEmpty()) { + hotkeys.remove(""); + hotkeys.remove(null); + + if (!hotkeys.isEmpty()) { + existsHotkeys = true; + break; + } } } }