aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2024-04-30 00:49:33 +0900
committershedaniel <daniel@shedaniel.me>2024-04-30 00:49:33 +0900
commitffffe6c2e379a4f6f715b907c1d81dfe7c878460 (patch)
tree16e688af509434d54f68a77e57d61e1a91a43a9f
parent6cf063d8f05d47f0847fdadba9578ac284bdea05 (diff)
parent030404d373ac336454cca06af148861504ea048f (diff)
downloadRoughlyEnoughItems-ffffe6c2e379a4f6f715b907c1d81dfe7c878460.tar.gz
RoughlyEnoughItems-ffffe6c2e379a4f6f715b907c1d81dfe7c878460.tar.bz2
RoughlyEnoughItems-ffffe6c2e379a4f6f715b907c1d81dfe7c878460.zip
Merge remote-tracking branch 'origin/14.x-1.20.4' into 15.x-1.20.5
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/config/components/ConfigGroupWidget.java6
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/entrylist/PaginatedEntryListWidget.java6
2 files changed, 11 insertions, 1 deletions
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/config/components/ConfigGroupWidget.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/config/components/ConfigGroupWidget.java
index c5ad01340..30a12206b 100644
--- a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/config/components/ConfigGroupWidget.java
+++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/config/components/ConfigGroupWidget.java
@@ -25,6 +25,7 @@ package me.shedaniel.rei.impl.client.gui.config.components;
import me.shedaniel.math.Point;
import me.shedaniel.math.Rectangle;
+import me.shedaniel.rei.api.client.REIRuntime;
import me.shedaniel.rei.api.client.gui.widgets.Widget;
import me.shedaniel.rei.api.client.gui.widgets.WidgetWithBounds;
import me.shedaniel.rei.api.client.gui.widgets.Widgets;
@@ -37,6 +38,7 @@ import me.shedaniel.rei.impl.client.gui.config.options.preview.AccessibilityDisp
import me.shedaniel.rei.impl.client.gui.config.options.preview.InterfacePreviewer;
import me.shedaniel.rei.impl.client.gui.config.options.preview.TooltipPreviewer;
import me.shedaniel.rei.impl.client.gui.text.TextTransformations;
+import net.minecraft.client.Minecraft;
import org.apache.commons.lang3.tuple.Pair;
import org.jetbrains.annotations.Nullable;
import org.joml.Matrix4f;
@@ -65,6 +67,10 @@ public class ConfigGroupWidget {
.withPadding(0, 0, 0, 6);
WidgetWithBounds contents;
+ if (applyPreview) {
+ applyPreview = REIRuntime.getInstance().getPreviousContainerScreen() != null && Minecraft.getInstance().getConnection() != null && Minecraft.getInstance().getConnection().getRecipeManager() != null;
+ }
+
if (applyPreview && SPECIAL_GROUPS.containsKey(entry.getId())) {
Pair<PreviewLocation, SpecialGroupConstructor> pair = SPECIAL_GROUPS.get(entry.getId());
PreviewLocation location = pair.getLeft();
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/entrylist/PaginatedEntryListWidget.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/entrylist/PaginatedEntryListWidget.java
index 726e101d8..1c95406af 100644
--- a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/entrylist/PaginatedEntryListWidget.java
+++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/entrylist/PaginatedEntryListWidget.java
@@ -115,6 +115,10 @@ public class PaginatedEntryListWidget extends CollapsingEntryListWidget {
}
public int getTotalPages() {
+ return getTotalPages(entries);
+ }
+
+ public int getTotalPages(List<?> entries) {
return Mth.ceil(stacks.size() / (float) entries.size());
}
@@ -133,7 +137,7 @@ public class PaginatedEntryListWidget extends CollapsingEntryListWidget {
}
}
}
- page = Math.max(Math.min(page, getTotalPages() - 1), 0);
+ page = Mth.clamp(page, 0, getTotalPages(entries) - 1);
int skip = Math.max(0, page * entries.size());
List</*EntryStack<?> | List<EntryStack<?>>*/ Object> subList = stacks.subList(skip, Math.min(stacks.size(), skip + entries.size()));
Int2ObjectMap<CollapsedStack> indexedCollapsedStack = getCollapsedStackIndexed();