aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/xmrvizzy
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/me/xmrvizzy')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemListWidget.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemListWidget.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemListWidget.java
index 9f053d8b..e01d58a5 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemListWidget.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemListWidget.java
@@ -32,6 +32,7 @@ public class ItemListWidget extends AbstractParentElement implements Drawable, S
private final int cols;
private double maxScroll;
+ private boolean isHovered;
private final HandledScreen screen;
private final MinecraftClient client;
@@ -90,6 +91,7 @@ public class ItemListWidget extends AbstractParentElement implements Drawable, S
@Override
public void render(MatrixStack matrices, int mouseX, int mouseY, float delta) {
+ this.isHovered = this.isMouseOver(mouseX, mouseY);
ItemRenderer itemRenderer = client.getItemRenderer();
RenderSystem.disableDepthTest();
// slot hover
@@ -137,6 +139,14 @@ public class ItemListWidget extends AbstractParentElement implements Drawable, S
}
@Override
+ public boolean isMouseOver(double mouseX, double mouseY) {
+ for (Element child : this.children) {
+ if (child.isMouseOver(mouseX, mouseY)) return true;
+ }
+ return this.isMouseOverList(mouseX, mouseY);
+ }
+
+ @Override
public boolean mouseScrolled(double mouseX, double mouseY, double amount) {
if (super.mouseScrolled(mouseX, mouseY, amount)) {
return true;
@@ -176,6 +186,9 @@ public class ItemListWidget extends AbstractParentElement implements Drawable, S
@Override
public SelectionType getType() {
+ for (Selectable selectable : selectables)
+ if (selectable.getType().isFocused()) return SelectionType.FOCUSED;
+ if (this.isHovered) return SelectionType.HOVERED;
return SelectionType.NONE;
}
}