aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/polyfrost/chatting/mixin/GuiChatMixin.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/polyfrost/chatting/mixin/GuiChatMixin.java')
-rw-r--r--src/main/java/org/polyfrost/chatting/mixin/GuiChatMixin.java23
1 files changed, 14 insertions, 9 deletions
diff --git a/src/main/java/org/polyfrost/chatting/mixin/GuiChatMixin.java b/src/main/java/org/polyfrost/chatting/mixin/GuiChatMixin.java
index 8d55e0a..dc95fa0 100644
--- a/src/main/java/org/polyfrost/chatting/mixin/GuiChatMixin.java
+++ b/src/main/java/org/polyfrost/chatting/mixin/GuiChatMixin.java
@@ -2,13 +2,6 @@ package org.polyfrost.chatting.mixin;
import cc.polyfrost.oneconfig.libs.universal.UDesktop;
import cc.polyfrost.oneconfig.libs.universal.UResolution;
-import org.polyfrost.chatting.chat.*;
-import org.polyfrost.chatting.config.ChattingConfig;
-import org.polyfrost.chatting.gui.components.ClearButton;
-import org.polyfrost.chatting.gui.components.ScreenshotButton;
-import org.polyfrost.chatting.gui.components.SearchButton;
-import org.polyfrost.chatting.hook.ChatLineHook;
-import org.polyfrost.chatting.hook.GuiNewChatHook;
import com.google.common.collect.Lists;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.ChatLine;
@@ -19,8 +12,13 @@ import net.minecraft.util.MathHelper;
import net.minecraftforge.fml.client.config.GuiUtils;
import org.apache.commons.lang3.StringUtils;
import org.lwjgl.input.Mouse;
-import org.polyfrost.chatting.chat.ChatSearchingManager;
-import org.polyfrost.chatting.chat.ChatShortcuts;
+import org.polyfrost.chatting.chat.*;
+import org.polyfrost.chatting.config.ChattingConfig;
+import org.polyfrost.chatting.gui.components.ClearButton;
+import org.polyfrost.chatting.gui.components.ScreenshotButton;
+import org.polyfrost.chatting.gui.components.SearchButton;
+import org.polyfrost.chatting.hook.ChatLineHook;
+import org.polyfrost.chatting.hook.GuiNewChatHook;
import org.polyfrost.chatting.utils.ModCompatHooks;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Unique;
@@ -72,6 +70,11 @@ public abstract class GuiChatMixin extends GuiScreen {
}
}
+ @Inject(method = "onGuiClosed", at = @At("HEAD"))
+ private void onGuiClosedHook(CallbackInfo ci) {
+ ModCompatHooks.setHoveredText(null);
+ }
+
@Inject(method = "updateScreen", at = @At("HEAD"))
private void updateScreen(CallbackInfo ci) {
if (ChattingConfig.INSTANCE.getChatSearch() && searchButton.isEnabled()) {
@@ -95,6 +98,8 @@ public abstract class GuiChatMixin extends GuiScreen {
@Inject(method = "drawScreen", at = @At("HEAD"))
private void onDrawScreen(int mouseX, int mouseY, float partialTicks, CallbackInfo ci) {
GuiNewChatHook hook = ((GuiNewChatHook) Minecraft.getMinecraft().ingameGUI.getChatGUI());
+ ChatLine hoveredLine = hook.getHoveredLine(Mouse.getY());
+ ModCompatHooks.setHoveredText(hoveredLine);
float f = mc.ingameGUI.getChatGUI().getChatScale();
int x = MathHelper.floor_float((float) mouseX / f);
if (hook.isHovering() && (hook.getRight() + ModCompatHooks.getXOffset() + 3) <= x && (hook.getRight() + ModCompatHooks.getXOffset()) + 13 > x) {