Skip to content

Commit 309be88

Browse files
committed
add context checker
1 parent 20c7073 commit 309be88

1 file changed

Lines changed: 10 additions & 0 deletions

File tree

src/main/java/org/comroid/api/config/ConfigurationManager.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import net.dv8tion.jda.api.entities.channel.Channel;
1111
import net.dv8tion.jda.api.entities.channel.ChannelType;
1212
import net.dv8tion.jda.api.entities.channel.concrete.TextChannel;
13+
import net.dv8tion.jda.api.events.interaction.GenericInteractionCreateEvent;
1314
import net.dv8tion.jda.api.events.interaction.ModalInteractionEvent;
1415
import net.dv8tion.jda.api.events.interaction.component.ButtonInteractionEvent;
1516
import net.dv8tion.jda.api.events.interaction.component.EntitySelectInteractionEvent;
@@ -154,6 +155,7 @@ default void resend() {
154155
}
155156

156157
@Value
158+
@NonFinal
157159
public class Presentation$JDA implements Presentation {
158160
InteractionHandler handler = new InteractionHandler();
159161
TextChannel channel;
@@ -164,6 +166,10 @@ public class Presentation$JDA implements Presentation {
164166
channel.getJDA().addEventListener(handler);
165167
}
166168

169+
protected boolean checkOutOfContext(GenericInteractionCreateEvent event) {
170+
return true;
171+
}
172+
167173
@Override
168174
public void clear() {
169175
List<Message> ls = List.of();
@@ -266,6 +272,7 @@ public void close() {
266272
private final class InteractionHandler extends ListenerAdapter {
267273
@Override
268274
public void onButtonInteraction(@NotNull ButtonInteractionEvent event) {
275+
if (checkOutOfContext(event)) return;
269276
event.replyModal(Modal.create(event.getComponentId(), event.getComponentId())
270277
.addActionRow(TextInput.create("newValue", "New Value", TextInputStyle.SHORT)
271278
.setPlaceholder(config.get(event.getComponentId().split("\\.")).asString())
@@ -275,6 +282,7 @@ public void onButtonInteraction(@NotNull ButtonInteractionEvent event) {
275282

276283
@Override
277284
public void onModalInteraction(@NotNull ModalInteractionEvent event) {
285+
if (checkOutOfContext(event)) return;
278286
var path = event.getModalId().split("\\.");
279287
var locals = descend(path);
280288
var propType = locals.getFirst().getType();
@@ -287,6 +295,7 @@ public void onModalInteraction(@NotNull ModalInteractionEvent event) {
287295

288296
@Override
289297
public void onStringSelectInteraction(@NotNull StringSelectInteractionEvent event) {
298+
if (checkOutOfContext(event)) return;
290299
var path = event.getComponentId().split("\\.");
291300
var locals = descend(path);
292301
var propType = locals.getFirst().getType();
@@ -308,6 +317,7 @@ public void onStringSelectInteraction(@NotNull StringSelectInteractionEvent even
308317

309318
@Override
310319
public void onEntitySelectInteraction(@NotNull EntitySelectInteractionEvent event) {
320+
if (checkOutOfContext(event)) return;
311321
var path = event.getComponentId().split("\\.");
312322
var locals = descend(path);
313323

0 commit comments

Comments
 (0)