From e279669952e3d6985284baffb272182f32ddb174 Mon Sep 17 00:00:00 2001 From: Tomas Slusny Date: Sun, 13 Oct 2019 11:29:31 +0200 Subject: [PATCH] Properly update plugin toggle button of plugin state change Closes #9846 Signed-off-by: Tomas Slusny --- .../client/plugins/config/ConfigPanel.java | 2 +- .../client/plugins/config/ConfigPlugin.java | 4 ---- .../client/plugins/config/PluginListItem.java | 15 ++++++++++----- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPanel.java b/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPanel.java index bf66f6c2d1..bd12d73470 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPanel.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPanel.java @@ -306,7 +306,7 @@ public class ConfigPanel extends PluginPanel topPanelBackButton.setToolTipText("Back"); topPanel.add(topPanelBackButton, BorderLayout.WEST); - topPanel.add(listItem.createToggleButton(), BorderLayout.EAST); + topPanel.add(listItem.getConfigToggleButton(), BorderLayout.EAST); String name = listItem.getName(); JLabel title = new JLabel(name); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPlugin.java index 4ff43a6ae3..f17542447b 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPlugin.java @@ -39,7 +39,6 @@ import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.plugins.PluginManager; import net.runelite.client.ui.ClientToolbar; -import net.runelite.client.ui.ClientUI; import net.runelite.client.ui.NavigationButton; import net.runelite.client.ui.components.colorpicker.ColorPickerManager; import net.runelite.client.ui.overlay.Overlay; @@ -53,9 +52,6 @@ import net.runelite.client.util.ImageUtil; ) public class ConfigPlugin extends Plugin { - @Inject - private ClientUI clientUI; - @Inject private ClientToolbar clientToolbar; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/config/PluginListItem.java b/runelite-client/src/main/java/net/runelite/client/plugins/config/PluginListItem.java index ee4a6fb166..69dec09365 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/config/PluginListItem.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/config/PluginListItem.java @@ -91,11 +91,14 @@ class PluginListItem extends JPanel @Getter private final String description; + @Getter + private final IconButton configToggleButton; + private final List keywords = new ArrayList<>(); private final IconButton pinButton = new IconButton(OFF_STAR); private final IconButton configButton = new IconButton(CONFIG_ICON, CONFIG_ICON_HOVER); - private final IconButton toggleButton = new IconButton(OFF_SWITCHER); + private final IconButton toggleButton; private boolean isPluginEnabled = false; @@ -215,9 +218,10 @@ class PluginListItem extends JPanel addLabelPopupMenu(nameLabel, popupMenuItems); add(nameLabel, BorderLayout.CENTER); - toggleButton.setPreferredSize(new Dimension(25, 0)); - attachToggleButtonListener(toggleButton); + toggleButton = createToggleButton(); buttonPanel.add(toggleButton); + + configToggleButton = createToggleButton(); } private void attachToggleButtonListener(IconButton button) @@ -245,9 +249,9 @@ class PluginListItem extends JPanel }); } - IconButton createToggleButton() + private IconButton createToggleButton() { - IconButton button = new IconButton(OFF_SWITCHER); + final IconButton button = new IconButton(OFF_SWITCHER); button.setPreferredSize(new Dimension(25, 0)); updateToggleButton(button); attachToggleButtonListener(button); @@ -258,6 +262,7 @@ class PluginListItem extends JPanel { isPluginEnabled = enabled; updateToggleButton(toggleButton); + updateToggleButton(configToggleButton); } void setPinned(boolean pinned)