diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/grid/view/BaseGridView.java b/src/main/java/com/refinedmods/refinedstorage/screen/grid/view/BaseGridView.java index d4bb196fb..b17568fe9 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/grid/view/BaseGridView.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/grid/view/BaseGridView.java @@ -57,11 +57,7 @@ public abstract class BaseGridView implements IGridView { (grid.getTabSelected() >= 0 && grid.getTabSelected() < grid.getTabs().size()) ? grid.getTabs().get(grid.getTabSelected()).getFilters() : grid.getFilters() ); - Iterator it = stacks.iterator(); - - while (it.hasNext()) { - IGridStack stack = it.next(); - + stacks.removeIf(stack -> { // If this is a crafting stack, // and there is a regular matching stack in the view too, // and we aren't in "view only craftables" mode, @@ -70,19 +66,17 @@ public abstract class BaseGridView implements IGridView { stack.isCraftable() && stack.getOtherId() != null && map.containsKey(stack.getOtherId())) { - it.remove(); - - continue; + return true; } for (Predicate filter : filters) { if (!filter.test(stack)) { - it.remove(); - - break; + return true; } } - } + + return false; + }); SortingDirection sortingDirection = grid.getSortingDirection() == IGrid.SORTING_DIRECTION_DESCENDING ? SortingDirection.DESCENDING : SortingDirection.ASCENDING;