Skip to content

Commit 6d112ff

Browse files
Fix Inventory#set(Pre/Post)UpdateHandler
1 parent 16a1b2e commit 6d112ff

File tree

1 file changed

+18
-10
lines changed

1 file changed

+18
-10
lines changed

invui/src/main/java/xyz/xenondevs/invui/inventory/Inventory.java

+18-10
Original file line numberDiff line numberDiff line change
@@ -384,12 +384,16 @@ public void removePostUpdateHandler(Consumer<ItemPostUpdateEvent> postUpdateHand
384384
*/
385385
@Deprecated
386386
public void setPreUpdateHandler(@Nullable Consumer<ItemPreUpdateEvent> preUpdateHandler) {
387-
if (preUpdateHandlers == null)
388-
preUpdateHandlers = new ArrayList<>();
389-
390387
if (preUpdateHandler != null) {
391-
preUpdateHandlers.set(0, preUpdateHandler);
392-
} else {
388+
if (preUpdateHandlers == null)
389+
preUpdateHandlers = new ArrayList<>();
390+
391+
if (preUpdateHandlers.isEmpty()) {
392+
preUpdateHandlers.add(preUpdateHandler);
393+
} else {
394+
preUpdateHandlers.set(0, preUpdateHandler);
395+
}
396+
} else if (preUpdateHandlers != null && !preUpdateHandlers.isEmpty()) {
393397
preUpdateHandlers.removeFirst();
394398
}
395399
}
@@ -413,12 +417,16 @@ public void setPreUpdateHandler(@Nullable Consumer<ItemPreUpdateEvent> preUpdate
413417
*/
414418
@Deprecated
415419
public void setPostUpdateHandler(@Nullable Consumer<ItemPostUpdateEvent> inventoryUpdatedHandler) {
416-
if (postUpdateHandlers == null)
417-
postUpdateHandlers = new ArrayList<>();
418-
419420
if (inventoryUpdatedHandler != null) {
420-
postUpdateHandlers.set(0, inventoryUpdatedHandler);
421-
} else {
421+
if (postUpdateHandlers == null)
422+
postUpdateHandlers = new ArrayList<>();
423+
424+
if (postUpdateHandlers.isEmpty()) {
425+
postUpdateHandlers.add(inventoryUpdatedHandler);
426+
} else {
427+
postUpdateHandlers.set(0, inventoryUpdatedHandler);
428+
}
429+
} else if (postUpdateHandlers != null && !postUpdateHandlers.isEmpty()) {
422430
postUpdateHandlers.removeFirst();
423431
}
424432
}

0 commit comments

Comments
 (0)