Skip to content

Commit ddd967e

Browse files
committed
fix button location
1 parent 628419d commit ddd967e

1 file changed

Lines changed: 11 additions & 5 deletions

File tree

src/main/java/com/redlimerl/speedrunigt/mixins/screen/OptionsScreenMixin.java

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,11 @@
44
import com.redlimerl.speedrunigt.SpeedRunIGTUpdateChecker;
55
import com.redlimerl.speedrunigt.gui.screen.SpeedRunOptionScreen;
66
import com.redlimerl.speedrunigt.utils.ButtonWidgetHelper;
7-
import net.minecraft.client.MinecraftClient;
87
import net.minecraft.client.gui.DrawContext;
98
import net.minecraft.client.gui.screen.Screen;
109
import net.minecraft.client.gui.screen.option.OptionsScreen;
1110
import net.minecraft.client.gui.widget.ButtonWidget;
1211
import net.minecraft.client.gui.widget.DirectionalLayoutWidget;
13-
import net.minecraft.client.gui.widget.Positioner;
1412
import net.minecraft.text.Text;
1513
import net.minecraft.util.Identifier;
1614
import org.spongepowered.asm.mixin.Mixin;
@@ -26,18 +24,26 @@ public class OptionsScreenMixin extends Screen {
2624
private static final Identifier ENDER_EYE = new Identifier("textures/item/ender_eye.png");
2725

2826
private ButtonWidget timerButton;
27+
private DirectionalLayoutWidget headerWidget;
2928

3029
protected OptionsScreenMixin(Text title) {
3130
super(title);
3231
}
3332

34-
@Inject(method = "init", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/widget/DirectionalLayoutWidget;add(Lnet/minecraft/client/gui/widget/Widget;)Lnet/minecraft/client/gui/widget/Widget;", ordinal = 1))
33+
@Inject(method = "init", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/screen/option/OptionsScreen;initTabNavigation()V"))
3534
private void onInit(CallbackInfo ci, @Local(ordinal = 1) DirectionalLayoutWidget widget) {
36-
timerButton = widget.add(ButtonWidget.builder(Text.empty(), (buttonWidget) -> {
35+
headerWidget = widget;
36+
timerButton = ButtonWidgetHelper.create(0, 0, 20, 20, Text.empty(), (buttonWidget) -> {
3737
if (this.client != null) {
3838
this.client.setScreen(new SpeedRunOptionScreen(this));
3939
}
40-
}).size(20, 20).build());
40+
});
41+
this.addDrawableChild(timerButton);
42+
}
43+
44+
@Inject(method = "initTabNavigation", at = @At("TAIL"))
45+
private void onRescale(CallbackInfo ci) {
46+
timerButton.setPosition(headerWidget.getX() - 25, headerWidget.getY());
4147
}
4248

4349
@Override

0 commit comments

Comments
 (0)