From 2791d22f62504b11ee17ba847fbc68b0eeb22a71 Mon Sep 17 00:00:00 2001 From: Adam Date: Fri, 24 May 2019 20:49:06 -0400 Subject: [PATCH] quest list plugin: fix removing widets on shutdown --- .../plugins/questlist/QuestListPlugin.java | 35 +++++++++++++++---- 1 file changed, 28 insertions(+), 7 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/questlist/QuestListPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/questlist/QuestListPlugin.java index 2ebf2a4318..0a18b8d2c9 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/questlist/QuestListPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/questlist/QuestListPlugin.java @@ -25,6 +25,13 @@ package net.runelite.client.plugins.questlist; import com.google.common.collect.ImmutableList; +import java.util.Arrays; +import java.util.Collection; +import java.util.Comparator; +import java.util.EnumMap; +import java.util.List; +import java.util.stream.Collectors; +import javax.inject.Inject; import lombok.AllArgsConstructor; import lombok.Data; import lombok.Getter; @@ -51,13 +58,6 @@ import net.runelite.client.game.chatbox.ChatboxTextInput; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.util.Text; -import javax.inject.Inject; -import java.util.Arrays; -import java.util.Collection; -import java.util.Comparator; -import java.util.EnumMap; -import java.util.List; -import java.util.stream.Collectors; @PluginDescriptor( name = "Quest List", @@ -93,6 +93,22 @@ public class QuestListPlugin extends Plugin private QuestState currentFilterState; + @Override + protected void startUp() + { + clientThread.invoke(this::addQuestButtons); + } + + @Override + protected void shutDown() + { + Widget header = client.getWidget(WidgetInfo.QUESTLIST_BOX); + if (header != null) + { + header.deleteAllChildren(); + } + } + @Subscribe public void onGameStateChanged(GameStateChanged e) { @@ -110,6 +126,11 @@ public class QuestListPlugin extends Plugin return; } + addQuestButtons(); + } + + private void addQuestButtons() + { Widget header = client.getWidget(WidgetInfo.QUESTLIST_BOX); if (header != null) {