Skip to content

Commit fa37abc

Browse files
committed
And also fixup resizing
1 parent d3ad081 commit fa37abc

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed

viafabric-mc1219/src/main/java/com/viaversion/fabric/mc1219/ViaFabricClient.java

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,23 +17,21 @@
1717
*/
1818
package com.viaversion.fabric.mc1219;
1919

20-
import com.viaversion.fabric.mc1219.gui.DebugEntryViaFabric;
2120
import com.viaversion.fabric.mc1219.gui.ViaConfigScreen;
22-
import com.viaversion.fabric.mc1219.mixin.debug.client.MixinDebugScreenEntriesAccessor;
2321
import net.fabricmc.api.ClientModInitializer;
2422
import net.fabricmc.fabric.api.client.screen.v1.ScreenEvents;
2523
import net.fabricmc.fabric.api.client.screen.v1.Screens;
2624
import net.minecraft.client.Minecraft;
25+
import net.minecraft.client.gui.components.AbstractWidget;
2726
import net.minecraft.client.gui.components.Button;
2827
import net.minecraft.client.gui.components.ImageButton;
2928
import net.minecraft.client.gui.components.WidgetSprites;
3029
import net.minecraft.client.gui.screens.multiplayer.JoinMultiplayerScreen;
3130
import net.minecraft.network.chat.Component;
3231
import net.minecraft.resources.ResourceLocation;
32+
import java.util.List;
3333

3434
public class ViaFabricClient implements ClientModInitializer {
35-
public static final ResourceLocation DEBUG_ENTRY = MixinDebugScreenEntriesAccessor.register("viafabric", new DebugEntryViaFabric());
36-
3735
private Button enableClientSideViaVersion;
3836

3937
@Override
@@ -44,18 +42,27 @@ public void onInitializeClient() {
4442
private void registerGui() {
4543
try {
4644
ScreenEvents.AFTER_INIT.register((client, screen, scaledWidth, scaledHeight) -> {
47-
if (!(screen instanceof JoinMultiplayerScreen)) return;
45+
if (!(screen instanceof JoinMultiplayerScreen)) {
46+
return;
47+
}
48+
4849
if (enableClientSideViaVersion == null) {
4950
enableClientSideViaVersion = new ImageButton(-1, 10,
5051
40, 20, // Size
5152
new WidgetSprites(ResourceLocation.fromNamespaceAndPath("viafabric", "widget_unfocused"), ResourceLocation.fromNamespaceAndPath("viafabric", "widget_focused")),
5253
it -> Minecraft.getInstance().setScreen(new ViaConfigScreen(screen)),
5354
Component.translatable("gui.via_button"));
54-
Screens.getButtons(screen).add(enableClientSideViaVersion);
5555
}
56+
5657
enableClientSideViaVersion.setX(scaledWidth / 2 + 113);
58+
if (ViaFabric.config.isHideButton()) {
59+
enableClientSideViaVersion.visible = false;
60+
}
5761

58-
if (ViaFabric.config.isHideButton()) enableClientSideViaVersion.visible = false;
62+
List<AbstractWidget> buttons = Screens.getButtons(screen);
63+
if (!buttons.contains(enableClientSideViaVersion)) {
64+
buttons.add(enableClientSideViaVersion);
65+
}
5966
});
6067
} catch (NoClassDefFoundError ignored) {
6168
ViaFabric.JLOGGER.info("Couldn't register screen handler as Fabric Screen isn't installed");

0 commit comments

Comments
 (0)