http-api: run callback on clientthread

This commit is contained in:
Owain van Brakel
2019-07-19 02:20:54 +02:00
parent b228ac322b
commit c31dc24472
3 changed files with 73 additions and 58 deletions

View File

@@ -52,6 +52,7 @@ import net.runelite.api.vars.AccountType;
import net.runelite.api.widgets.Widget; import net.runelite.api.widgets.Widget;
import static net.runelite.api.widgets.WidgetID.KILL_LOGS_GROUP_ID; import static net.runelite.api.widgets.WidgetID.KILL_LOGS_GROUP_ID;
import net.runelite.api.widgets.WidgetInfo; import net.runelite.api.widgets.WidgetInfo;
import net.runelite.client.callback.ClientThread;
import net.runelite.client.chat.ChatColorType; import net.runelite.client.chat.ChatColorType;
import net.runelite.client.chat.ChatCommandManager; import net.runelite.client.chat.ChatCommandManager;
import net.runelite.client.chat.ChatMessageBuilder; import net.runelite.client.chat.ChatMessageBuilder;
@@ -116,6 +117,9 @@ public class ChatCommandsPlugin extends Plugin
@Inject @Inject
private Client client; private Client client;
@Inject
private ClientThread clientThread;
@Inject @Inject
private ChatCommandsConfig config; private ChatCommandsConfig config;
@@ -826,6 +830,7 @@ public class ChatCommandsPlugin extends Plugin
.subscribeOn(Schedulers.single()) .subscribeOn(Schedulers.single())
.subscribe( .subscribe(
(osbresult) -> (osbresult) ->
clientThread.invoke(() ->
{ {
int itemId = item.getId(); int itemId = item.getId();
int itemPrice = itemManager.getItemPrice(itemId); int itemPrice = itemManager.getItemPrice(itemId);
@@ -860,7 +865,7 @@ public class ChatCommandsPlugin extends Plugin
messageNode.setRuneLiteFormatMessage(response); messageNode.setRuneLiteFormatMessage(response);
chatMessageManager.update(messageNode); chatMessageManager.update(messageNode);
client.refreshChat(); client.refreshChat();
} })
); );
} }
} }

View File

@@ -46,6 +46,7 @@ import net.runelite.api.widgets.WidgetInfo;
import static net.runelite.api.widgets.WidgetInfo.TO_CHILD; import static net.runelite.api.widgets.WidgetInfo.TO_CHILD;
import static net.runelite.api.widgets.WidgetInfo.TO_GROUP; import static net.runelite.api.widgets.WidgetInfo.TO_GROUP;
import net.runelite.api.widgets.WidgetItem; import net.runelite.api.widgets.WidgetItem;
import net.runelite.client.callback.ClientThread;
import net.runelite.client.chat.ChatColorType; import net.runelite.client.chat.ChatColorType;
import net.runelite.client.chat.ChatMessageBuilder; import net.runelite.client.chat.ChatMessageBuilder;
import net.runelite.client.chat.ChatMessageManager; import net.runelite.client.chat.ChatMessageManager;
@@ -86,6 +87,9 @@ public class ExaminePlugin extends Plugin
@Inject @Inject
private Client client; private Client client;
@Inject
private ClientThread clientThread;
@Inject @Inject
private ItemManager itemManager; private ItemManager itemManager;
@@ -369,6 +373,7 @@ public class ExaminePlugin extends Plugin
.subscribeOn(Schedulers.single()) .subscribeOn(Schedulers.single())
.subscribe( .subscribe(
(osbresult) -> (osbresult) ->
clientThread.invoke(() ->
{ {
message message
.append(ChatColorType.NORMAL) .append(ChatColorType.NORMAL)
@@ -395,7 +400,7 @@ public class ExaminePlugin extends Plugin
.append(ChatColorType.NORMAL) .append(ChatColorType.NORMAL)
.append("ea)"); .append("ea)");
} }
}, }),
(e) -> log.error(e.toString()) (e) -> log.error(e.toString())
); );
} }

View File

@@ -66,6 +66,7 @@ import net.runelite.api.widgets.WidgetInfo;
import net.runelite.client.Notifier; import net.runelite.client.Notifier;
import net.runelite.client.account.AccountSession; import net.runelite.client.account.AccountSession;
import net.runelite.client.account.SessionManager; import net.runelite.client.account.SessionManager;
import net.runelite.client.callback.ClientThread;
import net.runelite.client.config.ConfigManager; import net.runelite.client.config.ConfigManager;
import net.runelite.client.eventbus.EventBus; import net.runelite.client.eventbus.EventBus;
import net.runelite.client.events.SessionClose; import net.runelite.client.events.SessionClose;
@@ -131,6 +132,9 @@ public class GrandExchangePlugin extends Plugin
@Inject @Inject
private Client client; private Client client;
@Inject
private ClientThread clientThread;
@Inject @Inject
private ClientToolbar clientToolbar; private ClientToolbar clientToolbar;
@@ -550,10 +554,11 @@ public class GrandExchangePlugin extends Plugin
.subscribeOn(Schedulers.single()) .subscribeOn(Schedulers.single())
.subscribe( .subscribe(
(osbresult) -> (osbresult) ->
clientThread.invoke(() ->
{ {
final String text = geText.getText() + OSB_GE_TEXT + StackFormatter.formatNumber(osbresult.getOverall_average()); final String text = geText.getText() + OSB_GE_TEXT + StackFormatter.formatNumber(osbresult.getOverall_average());
geText.setText(text); geText.setText(text);
}, }),
(e) -> log.debug("Error getting price of item {}", itemId, e) (e) -> log.debug("Error getting price of item {}", itemId, e)
); );
}); });