aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/me')
-rw-r--r--src/main/java/me/shedaniel/rei/api/BaseBoundsHandler.java2
-rw-r--r--src/main/java/me/shedaniel/rei/api/ButtonAreaSupplier.java2
-rw-r--r--src/main/java/me/shedaniel/rei/api/DisplayHelper.java2
-rw-r--r--src/main/java/me/shedaniel/rei/api/RecipeCategory.java2
-rw-r--r--src/main/java/me/shedaniel/rei/api/RecipeHelper.java2
-rw-r--r--src/main/java/me/shedaniel/rei/api/TransferRecipeCategory.java2
-rw-r--r--src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java8
-rw-r--r--src/main/java/me/shedaniel/rei/gui/PreRecipeViewingScreen.java2
-rw-r--r--src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java23
-rw-r--r--src/main/java/me/shedaniel/rei/gui/VillagerRecipeViewingScreen.java11
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/AutoCraftingButtonWidget.java3
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/ButtonWidget.java3
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/CategoryBaseWidget.java2
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/ClickableLabelWidget.java2
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/CraftableToggleButtonWidget.java2
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/DetailedButtonWidget.java3
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/DraggableWidget.java8
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/EntryListWidget.java15
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/LabelWidget.java2
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/QueuedTooltip.java8
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/RecipeBaseWidget.java2
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/RecipeChoosePageWidget.java5
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/SlotBaseWidget.java3
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/SlotWidget.java6
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/TabWidget.java4
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/TextFieldWidget.java2
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/WidgetWithBounds.java5
-rw-r--r--src/main/java/me/shedaniel/rei/impl/BaseBoundsHandlerImpl.java2
-rw-r--r--src/main/java/me/shedaniel/rei/impl/DisplayHelperImpl.java2
-rw-r--r--src/main/java/me/shedaniel/rei/impl/RecipeHelperImpl.java7
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java5
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultPotionEffectExclusionZones.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultRecipeBookExclusionZones.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/blasting/DefaultBlastingCategory.java7
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingCategory.java5
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java5
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java7
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCraftingCategory.java7
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/smelting/DefaultSmeltingCategory.java7
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/smoking/DefaultSmokingCategory.java7
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/stonecutting/DefaultStoneCuttingCategory.java5
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/stripping/DefaultStrippingCategory.java5
-rw-r--r--src/main/java/me/shedaniel/rei/server/RecipeFinder.java2
43 files changed, 106 insertions, 102 deletions
diff --git a/src/main/java/me/shedaniel/rei/api/BaseBoundsHandler.java b/src/main/java/me/shedaniel/rei/api/BaseBoundsHandler.java
index 3f2a3cd51..9bc6d1430 100644
--- a/src/main/java/me/shedaniel/rei/api/BaseBoundsHandler.java
+++ b/src/main/java/me/shedaniel/rei/api/BaseBoundsHandler.java
@@ -5,9 +5,9 @@
package me.shedaniel.rei.api;
+import me.shedaniel.math.api.Rectangle;
import net.minecraft.client.gui.screen.Screen;
-import java.awt.*;
import java.util.List;
import java.util.function.Function;
diff --git a/src/main/java/me/shedaniel/rei/api/ButtonAreaSupplier.java b/src/main/java/me/shedaniel/rei/api/ButtonAreaSupplier.java
index 01cdff416..8ec5f3527 100644
--- a/src/main/java/me/shedaniel/rei/api/ButtonAreaSupplier.java
+++ b/src/main/java/me/shedaniel/rei/api/ButtonAreaSupplier.java
@@ -5,7 +5,7 @@
package me.shedaniel.rei.api;
-import java.awt.*;
+import me.shedaniel.math.api.Rectangle;
public interface ButtonAreaSupplier {
diff --git a/src/main/java/me/shedaniel/rei/api/DisplayHelper.java b/src/main/java/me/shedaniel/rei/api/DisplayHelper.java
index 2d8fc5991..33cc985ba 100644
--- a/src/main/java/me/shedaniel/rei/api/DisplayHelper.java
+++ b/src/main/java/me/shedaniel/rei/api/DisplayHelper.java
@@ -5,10 +5,10 @@
package me.shedaniel.rei.api;
+import me.shedaniel.math.api.Rectangle;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import net.minecraft.util.ActionResult;
-import java.awt.*;
import java.util.List;
import static net.minecraft.util.ActionResult.PASS;
diff --git a/src/main/java/me/shedaniel/rei/api/RecipeCategory.java b/src/main/java/me/shedaniel/rei/api/RecipeCategory.java
index 2c27b632d..aadd126e1 100644
--- a/src/main/java/me/shedaniel/rei/api/RecipeCategory.java
+++ b/src/main/java/me/shedaniel/rei/api/RecipeCategory.java
@@ -5,6 +5,7 @@
package me.shedaniel.rei.api;
+import me.shedaniel.math.api.Rectangle;
import me.shedaniel.rei.gui.RecipeViewingScreen;
import me.shedaniel.rei.gui.renderers.RecipeRenderer;
import me.shedaniel.rei.gui.widget.CategoryBaseWidget;
@@ -14,7 +15,6 @@ import me.shedaniel.rei.impl.ScreenHelper;
import net.minecraft.client.gui.DrawableHelper;
import net.minecraft.util.Identifier;
-import java.awt.*;
import java.util.Collections;
import java.util.List;
import java.util.function.Supplier;
diff --git a/src/main/java/me/shedaniel/rei/api/RecipeHelper.java b/src/main/java/me/shedaniel/rei/api/RecipeHelper.java
index b0a02f1ba..5d76eb70e 100644
--- a/src/main/java/me/shedaniel/rei/api/RecipeHelper.java
+++ b/src/main/java/me/shedaniel/rei/api/RecipeHelper.java
@@ -5,6 +5,7 @@
package me.shedaniel.rei.api;
+import me.shedaniel.math.api.Rectangle;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import net.minecraft.client.gui.screen.ingame.AbstractContainerScreen;
import net.minecraft.item.ItemStack;
@@ -12,7 +13,6 @@ import net.minecraft.recipe.Recipe;
import net.minecraft.recipe.RecipeManager;
import net.minecraft.util.Identifier;
-import java.awt.*;
import java.util.List;
import java.util.Map;
import java.util.Optional;
diff --git a/src/main/java/me/shedaniel/rei/api/TransferRecipeCategory.java b/src/main/java/me/shedaniel/rei/api/TransferRecipeCategory.java
index 71ecc877f..093a9d365 100644
--- a/src/main/java/me/shedaniel/rei/api/TransferRecipeCategory.java
+++ b/src/main/java/me/shedaniel/rei/api/TransferRecipeCategory.java
@@ -6,9 +6,9 @@
package me.shedaniel.rei.api;
import it.unimi.dsi.fastutil.ints.IntList;
+import me.shedaniel.math.api.Rectangle;
import me.shedaniel.rei.gui.widget.Widget;
-import java.awt.*;
import java.util.List;
public interface TransferRecipeCategory<T extends RecipeDisplay> extends RecipeCategory<T> {
diff --git a/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java b/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java
index 2401083dd..4d7b513c5 100644
--- a/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java
+++ b/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java
@@ -7,7 +7,9 @@ package me.shedaniel.rei.gui;
import com.google.common.collect.Lists;
import com.mojang.blaze3d.platform.GlStateManager;
-import me.shedaniel.cloth.api.ClientUtils;
+import me.shedaniel.math.api.Point;
+import me.shedaniel.math.api.Rectangle;
+import me.shedaniel.math.impl.PointHelper;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import me.shedaniel.rei.api.ClientHelper;
import me.shedaniel.rei.api.DisplayHelper;
@@ -37,8 +39,6 @@ import net.minecraft.util.Identifier;
import net.minecraft.util.math.MathHelper;
import net.minecraft.world.GameMode;
-import java.awt.*;
-import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
@@ -478,7 +478,7 @@ public class ContainerScreenOverlay extends Widget {
public boolean mouseScrolled(double i, double j, double amount) {
if (!ScreenHelper.isOverlayVisible())
return false;
- if (isInside(ClientUtils.getMouseLocation())) {
+ if (isInside(PointHelper.fromMouse())) {
if (!RoughlyEnoughItemsCore.getConfigManager().getConfig().isEntryListWidgetScrolled()) {
if (amount > 0 && buttonLeft.enabled)
buttonLeft.onPressed();
diff --git a/src/main/java/me/shedaniel/rei/gui/PreRecipeViewingScreen.java b/src/main/java/me/shedaniel/rei/gui/PreRecipeViewingScreen.java
index 6ffbaebd2..435920486 100644
--- a/src/main/java/me/shedaniel/rei/gui/PreRecipeViewingScreen.java
+++ b/src/main/java/me/shedaniel/rei/gui/PreRecipeViewingScreen.java
@@ -6,6 +6,7 @@
package me.shedaniel.rei.gui;
import com.google.common.collect.Lists;
+import me.shedaniel.math.api.Rectangle;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import me.shedaniel.rei.api.ClientHelper;
import me.shedaniel.rei.api.RecipeCategory;
@@ -27,7 +28,6 @@ import net.minecraft.text.TranslatableText;
import net.minecraft.util.Formatting;
import net.minecraft.util.Identifier;
-import java.awt.*;
import java.io.IOException;
import java.util.Collections;
import java.util.List;
diff --git a/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java b/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java
index 51162cf08..4cd8aa9c6 100644
--- a/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java
+++ b/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java
@@ -7,7 +7,8 @@ package me.shedaniel.rei.gui;
import com.google.common.collect.Lists;
import com.mojang.blaze3d.platform.GlStateManager;
-import me.shedaniel.cloth.api.ClientUtils;
+import me.shedaniel.math.api.Rectangle;
+import me.shedaniel.math.impl.PointHelper;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import me.shedaniel.rei.api.*;
import me.shedaniel.rei.gui.widget.*;
@@ -27,8 +28,6 @@ import net.minecraft.util.Formatting;
import net.minecraft.util.Identifier;
import net.minecraft.util.math.MathHelper;
-import java.awt.*;
-import java.util.List;
import java.util.*;
import java.util.function.Supplier;
@@ -143,7 +142,7 @@ public class RecipeViewingScreen extends Screen {
}
});
w.enabled = w2.enabled = categories.size() > TABS_PER_PAGE;
- widgets.add(categoryBack = new ButtonWidget((int) bounds.getX() + 5, (int) bounds.getY() + 5, 12, 12, new TranslatableText("text.rei.left_arrow")) {
+ widgets.add(categoryBack = new ButtonWidget(bounds.getX() + 5, bounds.getY() + 5, 12, 12, new TranslatableText("text.rei.left_arrow")) {
@Override
public void onPressed() {
int currentCategoryIndex = categories.indexOf(selectedCategory);
@@ -161,7 +160,7 @@ public class RecipeViewingScreen extends Screen {
return Optional.ofNullable(I18n.translate("text.rei.previous_category"));
}
});
- widgets.add(new ClickableLabelWidget((int) bounds.getCenterX(), (int) bounds.getY() + 7, "") {
+ widgets.add(new ClickableLabelWidget(bounds.getCenterX(), bounds.getY() + 7, "") {
@Override
public void render(int mouseX, int mouseY, float delta) {
this.text = selectedCategory.getCategoryName();
@@ -179,7 +178,7 @@ public class RecipeViewingScreen extends Screen {
ClientHelper.getInstance().executeViewAllRecipesKeyBind();
}
});
- widgets.add(categoryNext = new ButtonWidget((int) bounds.getMaxX() - 17, (int) bounds.getY() + 5, 12, 12, new TranslatableText("text.rei.right_arrow")) {
+ widgets.add(categoryNext = new ButtonWidget(bounds.getMaxX() - 17, bounds.getY() + 5, 12, 12, new TranslatableText("text.rei.right_arrow")) {
@Override
public void onPressed() {
int currentCategoryIndex = categories.indexOf(selectedCategory);
@@ -200,7 +199,7 @@ public class RecipeViewingScreen extends Screen {
categoryBack.enabled = categories.size() > 1;
categoryNext.enabled = categories.size() > 1;
- widgets.add(recipeBack = new ButtonWidget((int) bounds.getX() + 5, (int) bounds.getY() + 21, 12, 12, new TranslatableText("text.rei.left_arrow")) {
+ widgets.add(recipeBack = new ButtonWidget(bounds.getX() + 5, bounds.getY() + 21, 12, 12, new TranslatableText("text.rei.left_arrow")) {
@Override
public void onPressed() {
page--;
@@ -214,7 +213,7 @@ public class RecipeViewingScreen extends Screen {
return Optional.ofNullable(I18n.translate("text.rei.previous_page"));
}
});
- widgets.add(new ClickableLabelWidget((int) bounds.getCenterX(), (int) bounds.getY() + 23, "", categoriesMap.get(selectedCategory).size() > getRecipesPerPageByHeight()) {
+ widgets.add(new ClickableLabelWidget(bounds.getCenterX(), bounds.getY() + 23, "", categoriesMap.get(selectedCategory).size() > getRecipesPerPageByHeight()) {
@Override
public void render(int mouseX, int mouseY, float delta) {
this.text = String.format("%d/%d", page + 1, getTotalPages(selectedCategory));
@@ -233,7 +232,7 @@ public class RecipeViewingScreen extends Screen {
RecipeViewingScreen.this.init();
}
});
- widgets.add(recipeNext = new ButtonWidget((int) bounds.getMaxX() - 17, (int) bounds.getY() + 21, 12, 12, new TranslatableText("text.rei.right_arrow")) {
+ widgets.add(recipeNext = new ButtonWidget(bounds.getMaxX() - 17, bounds.getY() + 21, 12, 12, new TranslatableText("text.rei.right_arrow")) {
@Override
public void onPressed() {
page++;
@@ -277,7 +276,7 @@ public class RecipeViewingScreen extends Screen {
int finalI = i;
final Supplier<RecipeDisplay> displaySupplier = () -> currentDisplayed.get(finalI);
int displayWidth = selectedCategory.getDisplayWidth(displaySupplier.get());
- final Rectangle displayBounds = new Rectangle((int) getBounds().getCenterX() - displayWidth / 2, getBounds().y + 40 + recipeHeight * i + 7 * i, displayWidth, recipeHeight);
+ final Rectangle displayBounds = new Rectangle(getBounds().getCenterX() - displayWidth / 2, getBounds().y + 40 + recipeHeight * i + 7 * i, displayWidth, recipeHeight);
List<Widget> setupDisplay = selectedCategory.setupDisplay(displaySupplier, displayBounds);
this.widgets.addAll(setupDisplay);
if (supplier.isPresent() && supplier.get().get(displayBounds) != null)
@@ -439,13 +438,13 @@ public class RecipeViewingScreen extends Screen {
for (Element listener : children())
if (listener.mouseScrolled(i, j, amount))
return true;
- if (getBounds().contains(ClientUtils.getMouseLocation())) {
+ if (getBounds().contains(PointHelper.fromMouse())) {
if (amount > 0 && recipeBack.enabled)
recipeBack.onPressed();
else if (amount < 0 && recipeNext.enabled)
recipeNext.onPressed();
}
- if ((new Rectangle(bounds.x, bounds.y - 28, bounds.width, 28)).contains(ClientUtils.getMouseLocation())) {
+ if ((new Rectangle(bounds.x, bounds.y - 28, bounds.width, 28)).contains(PointHelper.fromMouse())) {
if (amount > 0 && categoryBack.enabled)
categoryBack.onPressed();
else if (amount < 0 && categoryNext.enabled)
diff --git a/src/main/java/me/shedaniel/rei/gui/VillagerRecipeViewingScreen.java b/src/main/java/me/shedaniel/rei/gui/VillagerRecipeViewingScreen.java
index 40bf80d91..8face20de 100644
--- a/src/main/java/me/shedaniel/rei/gui/VillagerRecipeViewingScreen.java
+++ b/src/main/java/me/shedaniel/rei/gui/VillagerRecipeViewingScreen.java
@@ -9,7 +9,9 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.mojang.blaze3d.platform.GlStateManager;
import com.zeitheron.hammercore.client.utils.Scissors;
-import me.shedaniel.cloth.api.ClientUtils;
+import me.shedaniel.math.api.Point;
+import me.shedaniel.math.api.Rectangle;
+import me.shedaniel.math.impl.PointHelper;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import me.shedaniel.rei.api.*;
import me.shedaniel.rei.gui.renderers.RecipeRenderer;
@@ -31,7 +33,6 @@ import net.minecraft.text.TranslatableText;
import net.minecraft.util.Formatting;
import net.minecraft.util.math.MathHelper;
-import java.awt.*;
import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -276,7 +277,7 @@ public class VillagerRecipeViewingScreen extends Screen {
for (Element listener : children())
if (listener.mouseScrolled(double_1, double_2, double_3))
return true;
- if (bounds.contains(ClientUtils.getMouseLocation())) {
+ if (bounds.contains(PointHelper.fromMouse())) {
if (double_3 < 0 && categoryMap.get(categories.get(selectedCategoryIndex)).size() > 1) {
selectedRecipeIndex++;
if (selectedRecipeIndex >= categoryMap.get(categories.get(selectedCategoryIndex)).size())
@@ -395,10 +396,6 @@ public class VillagerRecipeViewingScreen extends Screen {
return super.mouseDragged(mouseX, mouseY, int_1, double_3, double_4);
}
- private int getReal(int i) {
- return (int) (i / ((double) minecraft.window.getScaledWidth() / (double) minecraft.window.getWidth()));
- }
-
@Override
public boolean keyPressed(int int_1, int int_2, int int_3) {
if ((int_1 == 256 || this.minecraft.options.keyInventory.matchesKey(int_1, int_2)) && this.shouldCloseOnEsc()) {
diff --git a/src/main/java/me/shedaniel/rei/gui/widget/AutoCraftingButtonWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/AutoCraftingButtonWidget.java
index d4d5e1b6c..d75f064ef 100644
--- a/src/main/java/me/shedaniel/rei/gui/widget/AutoCraftingButtonWidget.java
+++ b/src/main/java/me/shedaniel/rei/gui/widget/AutoCraftingButtonWidget.java
@@ -7,6 +7,8 @@ package me.shedaniel.rei.gui.widget;
import com.mojang.blaze3d.platform.GlStateManager;
import it.unimi.dsi.fastutil.ints.IntList;
+import me.shedaniel.math.api.Point;
+import me.shedaniel.math.api.Rectangle;
import me.shedaniel.rei.api.*;
import me.shedaniel.rei.impl.ScreenHelper;
import net.minecraft.client.gui.screen.ingame.AbstractContainerScreen;
@@ -15,7 +17,6 @@ import net.minecraft.util.Formatting;
import net.minecraft.util.Identifier;
import net.minecraft.util.math.MathHelper;
-import java.awt.*;
import java.util.List;
import java.util.Optional;
import java.util.function.Supplier;
diff --git a/src/main/java/me/shedaniel/rei/gui/widget/ButtonWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/ButtonWidget.java
index 8fe88c894..7c15b67cd 100644
--- a/src/main/java/me/shedaniel/rei/gui/widget/ButtonWidget.java
+++ b/src/main/java/me/shedaniel/rei/gui/widget/ButtonWidget.java
@@ -6,6 +6,8 @@
package me.shedaniel.rei.gui.widget;
import com.mojang.blaze3d.platform.GlStateManager;
+import me.shedaniel.math.api.Point;
+import me.shedaniel.math.api.Rectangle;
import me.shedaniel.rei.impl.ScreenHelper;
import net.minecraft.client.gui.Element;
import net.minecraft.client.sound.PositionedSoundInstance;
@@ -14,7 +16,6 @@ import net.minecraft.text.Text;
import net.minecraft.util.Identifier;
import net.minecraft.util.math.MathHelper;
-import java.awt.*;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
diff --git a/src/main/java/me/shedaniel/rei/gui/widget/CategoryBaseWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/CategoryBaseWidget.java
index ecf645a8b..0d1968d96 100644
--- a/src/main/java/me/shedaniel/rei/gui/widget/CategoryBaseWidget.java
+++ b/src/main/java/me/shedaniel/rei/gui/widget/CategoryBaseWidget.java
@@ -5,7 +5,7 @@
package me.shedaniel.rei.gui.widget;
-import java.awt.*;
+import me.shedaniel.math.api.Rectangle;
public class CategoryBaseWidget extends RecipeBaseWidget {
diff --git a/src/main/java/me/shedaniel/rei/gui/widget/ClickableLabelWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/ClickableLabelWidget.java
index 200bde750..447789b52 100644
--- a/src/main/java/me/shedaniel/rei/gui/widget/ClickableLabelWidget.java
+++ b/src/main/java/me/shedaniel/rei/gui/widget/ClickableLabelWidget.java
@@ -5,10 +5,10 @@
package me.shedaniel.rei.gui.widget;
+import me.shedaniel.math.api.Point;
import me.shedaniel.rei.impl.ScreenHelper;
import net.minecraft.util.Formatting;
-import java.awt.*;
import java.util.Optional;
public abstract class ClickableLabelWidget extends LabelWidget {
diff --git a/src/main/java/me/shedaniel/rei/gui/widget/CraftableToggleButtonWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/CraftableToggleButtonWidget.java
index 767989d86..172b7e8e7 100644
--- a/src/main/java/me/shedaniel/rei/gui/widget/CraftableToggleButtonWidget.java
+++ b/src/main/java/me/shedaniel/rei/gui/widget/CraftableToggleButtonWidget.java
@@ -6,6 +6,7 @@
package me.shedaniel.rei.gui.widget;
import com.mojang.blaze3d.platform.GlStateManager;
+import me.shedaniel.math.api.Rectangle;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import net.minecraft.block.Blocks;
import net.minecraft.client.MinecraftClient;
@@ -15,7 +16,6 @@ import net.minecraft.client.resource.language.I18n;
import net.minecraft.item.ItemStack;
import net.minecraft.util.Identifier;
-import java.awt.*;
import java.util.Optional;
public abstract class CraftableToggleButtonWidget extends ButtonWidget {
diff --git a/src/main/java/me/shedaniel/rei/gui/widget/DetailedButtonWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/DetailedButtonWidget.java
index 12bd6b9e6..aa76d74c9 100644
--- a/src/main/java/me/shedaniel/rei/gui/widget/DetailedButtonWidget.java
+++ b/src/main/java/me/shedaniel/rei/gui/widget/DetailedButtonWidget.java
@@ -5,10 +5,9 @@
package me.shedaniel.rei.gui.widget;
+import me.shedaniel.math.api.Rectangle;
import net.minecraft.text.Text;
-import java.awt.*;
-
public class DetailedButtonWidget extends ButtonWidget {
private DetailedButtonWidget.PressAction pressAction;
diff --git a/src/main/java/me/shedaniel/rei/gui/widget/DraggableWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/DraggableWidget.java
index 5c8e7657f..6c4d34b0f 100644
--- a/src/main/java/me/shedaniel/rei/gui/widget/DraggableWidget.java
+++ b/src/main/java/me/shedaniel/rei/gui/widget/DraggableWidget.java
@@ -5,13 +5,13 @@
package me.shedaniel.rei.gui.widget;
-import me.shedaniel.cloth.api.ClientUtils;
+import me.shedaniel.math.api.Point;
+import me.shedaniel.math.api.Rectangle;
+import me.shedaniel.math.impl.PointHelper;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.gui.Element;
import net.minecraft.client.util.Window;
-import java.awt.*;
-
public abstract class DraggableWidget extends WidgetWithBounds {
public boolean dragged = false;
@@ -40,7 +40,7 @@ public abstract class DraggableWidget extends WidgetWithBounds {
@Override
public boolean mouseDragged(double double_1, double double_2, int int_1, double double_3, double double_4) {
- Point mouse = ClientUtils.getMouseLocation();
+ Point mouse = PointHelper.fromMouse();
if (int_1 == 0) {
if (!dragged) {
if (getGrabBounds().contains(mouse)) {
diff --git a/src/main/java/me/shedaniel/rei/gui/widget/EntryListWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/EntryListWidget.java
index 71760efd1..cc2d30887 100644
--- a/src/main/java/me/shedaniel/rei/gui/widget/EntryListWidget.java
+++ b/src/main/java/me/shedaniel/rei/gui/widget/EntryListWidget.java
@@ -8,8 +8,9 @@ package me.shedaniel.rei.gui.widget;
import com.google.common.collect.Lists;
import com.mojang.blaze3d.platform.GlStateManager;
import com.zeitheron.hammercore.client.utils.Scissors;
-import me.shedaniel.cloth.api.ClientUtils;
import me.shedaniel.clothconfig2.api.RunSixtyTimesEverySec;
+import me.shedaniel.math.api.Rectangle;
+import me.shedaniel.math.impl.PointHelper;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import me.shedaniel.rei.api.*;
import me.shedaniel.rei.gui.config.ItemCheatingMode;
@@ -31,8 +32,6 @@ import net.minecraft.util.math.MathHelper;
import net.minecraft.util.registry.Registry;
import org.apache.commons.lang3.StringUtils;
-import java.awt.*;
-import java.util.List;
import java.util.*;
import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
@@ -265,7 +264,7 @@ public class EntryListWidget extends Widget {
Scissors.end();
GlStateManager.popMatrix();
ClientPlayerEntity player = minecraft.player;
- if (rectangle.contains(Client