runelite-client: Make Widget::isHidden only run on client thread

This commit is contained in:
Max Weber
2018-10-02 01:03:34 -06:00
parent e18e063ef5
commit 335b44852c
2 changed files with 15 additions and 4 deletions

View File

@@ -32,6 +32,7 @@ import net.runelite.api.Client;
import net.runelite.api.events.GameTick; import net.runelite.api.events.GameTick;
import net.runelite.api.widgets.Widget; import net.runelite.api.widgets.Widget;
import net.runelite.api.widgets.WidgetInfo; import net.runelite.api.widgets.WidgetInfo;
import net.runelite.client.callback.ClientThread;
import net.runelite.client.config.ConfigManager; import net.runelite.client.config.ConfigManager;
import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.plugins.PluginDescriptor;
@@ -46,6 +47,9 @@ public class BankValuePlugin extends Plugin
@Inject @Inject
private Client client; private Client client;
@Inject
private ClientThread clientThread;
@Inject @Inject
private BankCalculation bankCalculation; private BankCalculation bankCalculation;
@@ -61,7 +65,7 @@ public class BankValuePlugin extends Plugin
@Override @Override
protected void shutDown() protected void shutDown()
{ {
bankTitle.reset(); clientThread.invokeLater(bankTitle::reset);
} }
@Subscribe @Subscribe

View File

@@ -66,6 +66,7 @@ import net.runelite.api.events.WallObjectDespawned;
import net.runelite.api.events.WallObjectSpawned; import net.runelite.api.events.WallObjectSpawned;
import net.runelite.api.widgets.Widget; import net.runelite.api.widgets.Widget;
import net.runelite.api.widgets.WidgetInfo; import net.runelite.api.widgets.WidgetInfo;
import net.runelite.client.callback.ClientThread;
import net.runelite.client.config.ConfigManager; import net.runelite.client.config.ConfigManager;
import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.plugins.PluginDescriptor;
@@ -112,6 +113,9 @@ public class MotherlodePlugin extends Plugin
@Inject @Inject
private Client client; private Client client;
@Inject
private ClientThread clientThread;
@Getter(AccessLevel.PACKAGE) @Getter(AccessLevel.PACKAGE)
private boolean inMlm; private boolean inMlm;
@@ -165,10 +169,13 @@ public class MotherlodePlugin extends Plugin
Widget sack = client.getWidget(WidgetInfo.MOTHERLODE_MINE); Widget sack = client.getWidget(WidgetInfo.MOTHERLODE_MINE);
if (sack != null && sack.isHidden()) clientThread.invokeLater(() ->
{ {
sack.setHidden(false); if (sack != null && sack.isHidden())
} {
sack.setHidden(false);
}
});
} }
public MotherlodeSession getSession() public MotherlodeSession getSession()