From 9400d1a94daf57b0f1a3f79e8ebd99e1434ee201 Mon Sep 17 00:00:00 2001 From: Ganom <8338284+Ganom@users.noreply.github.com> Date: Mon, 12 Oct 2020 13:57:55 -0400 Subject: [PATCH] menumanager: restore force left click functionality. (#2819) --- .../java/net/runelite/client/menus/MenuManager.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/menus/MenuManager.java b/runelite-client/src/main/java/net/runelite/client/menus/MenuManager.java index 2a96a24d76..899161bfce 100644 --- a/runelite-client/src/main/java/net/runelite/client/menus/MenuManager.java +++ b/runelite-client/src/main/java/net/runelite/client/menus/MenuManager.java @@ -318,8 +318,14 @@ public class MenuManager if (leftClickEntry == null) { - // stop being null smh - leftClickEntry = entries[menuOptionCount - 1]; + Arrays.stream(entries) + .filter(Objects::nonNull) + .filter(MenuEntry::isForceLeftClick) + .findFirst() + .ifPresentOrElse( + (entry) -> leftClickEntry = entry, + () -> leftClickEntry = entries[menuOptionCount - 1] + ); } client.setMenuEntries(entries); @@ -434,7 +440,7 @@ public class MenuManager void onMenuOptionClicked(MenuOptionClicked event) { // option and target will be the same if this one came from "tempMenuAction" - if (!client.isMenuOpen() && !event.getOption().equals(event.getTarget()) && event.isAuthentic()) + if (!client.isMenuOpen() && event.isAuthentic()) { if (!event.equals(leftClickEntry)) {