diff --git a/runelite-api/src/main/java/net/runelite/api/events/MenuEntryAdded.java b/runelite-api/src/main/java/net/runelite/api/events/MenuEntryAdded.java index 442c2dc1b3..7b9c0d3fb3 100644 --- a/runelite-api/src/main/java/net/runelite/api/events/MenuEntryAdded.java +++ b/runelite-api/src/main/java/net/runelite/api/events/MenuEntryAdded.java @@ -24,7 +24,7 @@ */ package net.runelite.api.events; -import lombok.Setter; +import lombok.Getter; import net.runelite.api.MenuEntry; /** @@ -44,11 +44,11 @@ public class MenuEntryAdded extends MenuEntry implements Event * Checks if count is the same, but doesn't check if there's * been multiple changes */ - @Setter + @Getter private boolean modified; - public boolean hasBeenModified() + public void setModified() { - return modified; + this.modified = true; } } diff --git a/runelite-api/src/main/java/net/runelite/api/events/MenuOpened.java b/runelite-api/src/main/java/net/runelite/api/events/MenuOpened.java index b697153738..221c8b9d0d 100644 --- a/runelite-api/src/main/java/net/runelite/api/events/MenuOpened.java +++ b/runelite-api/src/main/java/net/runelite/api/events/MenuOpened.java @@ -24,6 +24,8 @@ */ package net.runelite.api.events; +import lombok.AccessLevel; +import lombok.Setter; import net.runelite.api.MenuEntry; import lombok.Data; @@ -38,6 +40,7 @@ public class MenuOpened implements Event * in menuEntries is changed, so the changes can be * propagated through to the client. */ + @Setter(AccessLevel.NONE) private boolean modified; /** @@ -62,4 +65,9 @@ public class MenuOpened implements Event return null; } + + public void setModified() + { + this.modified = true; + } } 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 58962ca97a..b7a96caa27 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 @@ -240,7 +240,7 @@ public class MenuManager // Need to set the event entries to prevent conflicts event.setMenuEntries(arrayEntries); - event.setModified(true); + event.setModified(); } private void onMenuEntryAdded(MenuEntryAdded event) @@ -889,7 +889,7 @@ public class MenuManager } @AllArgsConstructor - private class SortMapping implements Comparable + private static class SortMapping implements Comparable { private final int priority; private final MenuEntry entry; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityPlugin.java index fcceef31f9..4edaf9e0b1 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityPlugin.java @@ -541,7 +541,10 @@ public class AgilityPlugin extends Plugin changed |= checkAndModify(entry); } - event.setModified(changed); + if (changed) + { + event.setModified(); + } } private boolean checkAndModify(MenuEntry old) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/chattranslation/ChatTranslationPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/chattranslation/ChatTranslationPlugin.java index 8fcdc625c1..924edace6b 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/chattranslation/ChatTranslationPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/chattranslation/ChatTranslationPlugin.java @@ -202,7 +202,7 @@ public class ChatTranslationPlugin extends Plugin implements KeyListener newEntries[i].setOpcode(MenuOpcode.RUNELITE.getId()); event.setMenuEntries(newEntries); - event.setModified(true); + event.setModified(); return; } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/corp/CorpPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/corp/CorpPlugin.java index a6f6a5f9e9..de2bf402a0 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/corp/CorpPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/corp/CorpPlugin.java @@ -258,7 +258,7 @@ public class CorpPlugin extends Plugin } event.setOpcode(NPC_SECOND_OPTION.getId() + MENU_ACTION_DEPRIORITIZE_OFFSET); - event.setModified(true); + event.setModified(); } private void onConfigChanged(ConfigChanged configChanged) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/devtools/DevToolsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/devtools/DevToolsPlugin.java index 96d8dd9d4b..bfe3140920 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/devtools/DevToolsPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/devtools/DevToolsPlugin.java @@ -407,7 +407,7 @@ public class DevToolsPlugin extends Plugin } entry.setTarget(entry.getTarget() + " " + ColorUtil.prependColorTag("(" + info + ")", JagexColors.MENU_TARGET)); - entry.setModified(true); + entry.setModified(); } } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangePlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangePlugin.java index 51eea405fc..a9c03d0939 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangePlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangePlugin.java @@ -448,7 +448,7 @@ public class GrandExchangePlugin extends Plugin case WidgetID.SHOP_INVENTORY_GROUP_ID: menuEntry.setOption(SEARCH_GRAND_EXCHANGE); menuEntry.setOpcode(MenuOpcode.RUNELITE.getId()); - menuEntry.setModified(true); + menuEntry.setModified(); } } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/grounditems/GroundItemsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/grounditems/GroundItemsPlugin.java index 35faedbe02..2c705ac6d5 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/grounditems/GroundItemsPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/grounditems/GroundItemsPlugin.java @@ -983,7 +983,7 @@ public class GroundItemsPlugin extends Plugin { final String optionText = telegrabEntry ? "Cast" : "Take"; lastEntry.setOption(ColorUtil.prependColorTag(optionText, color)); - lastEntry.setModified(true); + lastEntry.setModified(); } if (mode == BOTH || mode == NAME) @@ -1003,14 +1003,14 @@ public class GroundItemsPlugin extends Plugin } lastEntry.setTarget(target); - lastEntry.setModified(true); + lastEntry.setModified(); } } if (this.showMenuItemQuantities && itemComposition.isStackable() && quantity > 1) { lastEntry.setTarget(lastEntry.getTarget() + " (" + quantity + ")"); - lastEntry.setModified(true); + lastEntry.setModified(); } if (this.removeIgnored && lastEntry.getOption().equals("Take") && hiddenItemList.contains(Text.removeTags(lastEntry.getTarget()))) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/inventorytags/InventoryTagsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/inventorytags/InventoryTagsPlugin.java index c6e7dd75c4..9623ecafc6 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/inventorytags/InventoryTagsPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/inventorytags/InventoryTagsPlugin.java @@ -250,7 +250,7 @@ public class InventoryTagsPlugin extends Plugin // Need to set the event entries to prevent conflicts event.setMenuEntries(menuList); - event.setModified(true); + event.setModified(); } } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPlugin.java index 389ef8f84b..6c92270e37 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPlugin.java @@ -578,7 +578,7 @@ public class MenuEntrySwapperPlugin extends Plugin } event.setMenuEntries(menu_entries.toArray(new MenuEntry[0])); - event.setModified(true); + event.setModified(); } public void onMenuEntryAdded(MenuEntryAdded event) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/npchighlight/NpcIndicatorsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/npchighlight/NpcIndicatorsPlugin.java index 58c5ad1d14..cdcdd34416 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/npchighlight/NpcIndicatorsPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/npchighlight/NpcIndicatorsPlugin.java @@ -311,7 +311,7 @@ public class NpcIndicatorsPlugin extends Plugin { final String target = ColorUtil.prependColorTag(Text.removeTags(event.getTarget()), this.getHighlightColor); event.setTarget(target); - event.setModified(true); + event.setModified(); } else if (hotKeyPressed && type == MenuOpcode.EXAMINE_NPC.getId()) { diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java index 1d92f52e7d..e9e82eabaa 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java @@ -750,7 +750,7 @@ public abstract class RSClientMixin implements RSClient client.getCallbacks().post(MenuEntryAdded.class, event); - if (event.hasBeenModified() && client.getMenuOptionCount() == newCount) + if (event.isModified() && client.getMenuOptionCount() == newCount) { options[oldCount] = event.getOption(); targets[oldCount] = event.getTarget();