From 23c180a94572acf10285b021faf171370d4b62d3 Mon Sep 17 00:00:00 2001 From: Unknown Date: Fri, 8 Mar 2019 21:12:38 +0800 Subject: Fix bug --- src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java | 7 ++++--- src/main/java/me/shedaniel/rei/gui/widget/ItemListOverlay.java | 10 +++++++++- src/main/java/me/shedaniel/rei/gui/widget/ItemSlotWidget.java | 6 ++---- 3 files changed, 15 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java b/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java index 43c199fde..0fafdda42 100644 --- a/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java +++ b/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java @@ -384,9 +384,10 @@ public class ContainerScreenOverlay extends ScreenComponent { @Override public boolean keyPressed(int int_1, int int_2, int int_3) { - for(InputListener listener : widgets) - if (listener.keyPressed(int_1, int_2, int_3)) - return true; + if (ScreenHelper.isOverlayVisible()) + for(InputListener listener : widgets) + if (listener.keyPressed(int_1, int_2, int_3)) + return true; if (ClientHelper.HIDE.matchesKey(int_1, int_2)) { ScreenHelper.toggleOverlayVisible(); return true; diff --git a/src/main/java/me/shedaniel/rei/gui/widget/ItemListOverlay.java b/src/main/java/me/shedaniel/rei/gui/widget/ItemListOverlay.java index 4d5916a15..5af711e0c 100644 --- a/src/main/java/me/shedaniel/rei/gui/widget/ItemListOverlay.java +++ b/src/main/java/me/shedaniel/rei/gui/widget/ItemListOverlay.java @@ -95,7 +95,7 @@ public class ItemListOverlay extends DrawableHelper implements IWidget { int j = i + page * getTotalSlotsPerPage(); if (j >= currentDisplayed.size()) break; - ItemSlotWidget slotWidget = new ItemSlotWidget((int) (startX + (i % width) * 18), (int) (startY + MathHelper.floor(i / width) * 18), currentDisplayed.get(j), false, true) { + ItemSlotWidget slotWidget = new ItemSlotWidget((int) (startX + (i % width) * 18), (int) (startY + MathHelper.floor(i / width) * 18), Collections.singletonList(currentDisplayed.get(j)), false, true, true) { @Override protected void drawToolTip(ItemStack itemStack) { ClientPlayerEntity player = MinecraftClient.getInstance().player; @@ -125,6 +125,14 @@ public class ItemListOverlay extends DrawableHelper implements IWidget { } } + @Override + public boolean keyPressed(int int_1, int int_2, int int_3) { + for(IWidget widget : widgets) + if (widget.keyPressed(int_1, int_2, int_3)) + return true; + return false; + } + public List getCurrentDisplayed() { return currentDisplayed; } diff --git a/src/main/java/me/shedaniel/rei/gui/widget/ItemSlotWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/ItemSlotWidget.java index 65d43e017..04f8ad9c8 100644 --- a/src/main/java/me/shedaniel/rei/gui/widget/ItemSlotWidget.java +++ b/src/main/java/me/shedaniel/rei/gui/widget/ItemSlotWidget.java @@ -14,9 +14,7 @@ import net.minecraft.util.Identifier; import net.minecraft.util.math.MathHelper; import java.awt.*; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.LinkedList; +import java.util.*; import java.util.List; public class ItemSlotWidget extends DrawableHelper implements HighlightableWidget { @@ -27,7 +25,7 @@ public class ItemSlotWidget extends DrawableHelper implements HighlightableWidge private int x, y; public ItemSlotWidget(int x, int y, ItemStack itemStack, boolean drawBackground, boolean showToolTips) { - this(x, y, Arrays.asList(itemStack), drawBackground, showToolTips); + this(x, y, Collections.singletonList(itemStack), drawBackground, showToolTips); } public ItemSlotWidget(int x, int y, List itemList, boolean drawBackground, boolean showToolTips) { -- cgit