88import com .fix3dll .skyblockaddons .mixin .extensions .GuiMessageLineExtension ;
99import com .fix3dll .skyblockaddons .utils .DevUtils ;
1010import com .fix3dll .skyblockaddons .utils .TextUtils ;
11+ import com .fix3dll .skyblockaddons .utils .Utils ;
1112import com .llamalad7 .mixinextras .sugar .Local ;
1213import com .mojang .blaze3d .platform .InputConstants ;
1314import com .mojang .blaze3d .platform .Window ;
1415import net .minecraft .Util ;
1516import net .minecraft .client .Minecraft ;
1617import net .minecraft .client .gui .components .ChatComponent ;
18+ import net .minecraft .client .gui .components .toasts .SystemToast ;
1719import net .minecraft .client .gui .screens .ChatScreen ;
1820import net .minecraft .client .input .MouseButtonEvent ;
21+ import net .minecraft .network .chat .Component ;
1922import org .lwjgl .glfw .GLFW ;
2023import org .spongepowered .asm .mixin .Mixin ;
2124import org .spongepowered .asm .mixin .injection .At ;
@@ -39,21 +42,31 @@ public class ChatScreenMixin {
3942 : InputConstants .isKeyDown (handle , GLFW .GLFW_KEY_LEFT_CONTROL );
4043
4144 if (isLeftControlDown ) {
42- ChatComponentExtension extendedChatComponent = (ChatComponentExtension ) ( Object ) chatComponent ;
45+ ChatComponentExtension extendedChatComponent = (ChatComponentExtension ) chatComponent ;
4346 GuiMessageLineExtension extendedLine = extendedChatComponent .sba$getGuiMessageLineAt (event , isDoubleClick );
4447
4548 if (extendedLine != null ) {
4649 boolean isLeftShiftDown = InputConstants .isKeyDown (handle , GLFW .GLFW_KEY_LEFT_SHIFT );
4750 if (isLeftShiftDown ) {
4851 DevUtils .copyStringToClipboard (
49- TextUtils .getFormattedText (extendedLine .sba$getParentComponent ()),
50- ColorCode .GREEN + Translations .getMessage ("messages.chatMessageCopying.formatted" )
52+ TextUtils .getFormattedText (extendedLine .sba$getParentComponent ()), null
5153 );
54+ Minecraft .getInstance ().getToastManager ().addToast (new SystemToast (
55+ new SystemToast .SystemToastId (2000L ),
56+ Utils .COMPONENT_TITLE ,
57+ Component .literal (Translations .getMessage ("messages.chatMessageCopying.formatted" ))
58+ .withColor (ColorCode .GREEN .getColor ())
59+ ));
5260 } else {
5361 DevUtils .copyStringToClipboard (
54- TextUtils .stripColor (extendedLine .sba$getParentComponent ().getString ()),
55- ColorCode .GREEN + Translations .getMessage ("messages.chatMessageCopying.unformatted" )
62+ TextUtils .stripColor (extendedLine .sba$getParentComponent ().getString ()), null
5663 );
64+ Minecraft .getInstance ().getToastManager ().addToast (new SystemToast (
65+ new SystemToast .SystemToastId (2000L ),
66+ Utils .COMPONENT_TITLE ,
67+ Component .literal (Translations .getMessage ("messages.chatMessageCopying.unformatted" ))
68+ .withColor (ColorCode .GREEN .getColor ())
69+ ));
5770 }
5871 }
5972 }
0 commit comments