From 810a314f28b0aae776512442c66c335908e6968e Mon Sep 17 00:00:00 2001 From: Tunfisch96 <65600302+Tunfisch96@users.noreply.github.com> Date: Fri, 10 Jul 2026 22:15:30 +0200 Subject: [PATCH 1/2] bump to minecraft 26.2 (#417) --- .../fastback/common/mixins/GuiAccessors.java | 33 +++++++++++++++++++ .../fastback/common/mod/ClientHelper.java | 5 ++- .../src/main/resources/fastback.mixins.json | 3 +- fabric/src/main/resources/fabric.mod.json | 2 +- gradle.properties | 16 ++++----- 5 files changed, 48 insertions(+), 11 deletions(-) create mode 100644 common/src/main/java/net/pcal/fastback/common/mixins/GuiAccessors.java diff --git a/common/src/main/java/net/pcal/fastback/common/mixins/GuiAccessors.java b/common/src/main/java/net/pcal/fastback/common/mixins/GuiAccessors.java new file mode 100644 index 00000000..2169e765 --- /dev/null +++ b/common/src/main/java/net/pcal/fastback/common/mixins/GuiAccessors.java @@ -0,0 +1,33 @@ +/* + * FastBack - Fast, incremental Minecraft backups powered by Git. + * Copyright (C) 2022 pcal.net + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; If not, see . + */ + +package net.pcal.fastback.common.mixins; + +import net.minecraft.client.gui.Gui; +import net.minecraft.client.gui.screens.Screen; +import org.jspecify.annotations.Nullable; + +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Accessor; + +@Mixin(Gui.class) +public interface GuiAccessors { + @Accessor("screen") + @Nullable Screen getScreen(); + +} diff --git a/common/src/main/java/net/pcal/fastback/common/mod/ClientHelper.java b/common/src/main/java/net/pcal/fastback/common/mod/ClientHelper.java index 3780a355..e1e879ce 100644 --- a/common/src/main/java/net/pcal/fastback/common/mod/ClientHelper.java +++ b/common/src/main/java/net/pcal/fastback/common/mod/ClientHelper.java @@ -19,12 +19,14 @@ package net.pcal.fastback.common.mod; import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.Gui; import net.minecraft.client.gui.GuiGraphicsExtractor; import net.minecraft.client.gui.screens.GenericMessageScreen; import net.minecraft.client.gui.screens.Screen; import net.minecraft.network.chat.Component; import net.pcal.fastback.common.logging.UserMessage; import net.pcal.fastback.common.mixins.ScreenAccessors; +import net.pcal.fastback.common.mixins.GuiAccessors; import static net.pcal.fastback.common.logging.SystemLogger.syslog; import static net.pcal.fastback.common.mod.UserMessageUtil.messageToText; @@ -75,7 +77,8 @@ public void clearHudText() { public void setMessageScreenText(UserMessage userMessage) { if (this.client == null) return; - final Screen screen = client.screen; + final Gui gui = client.gui; + final Screen screen = ((GuiAccessors) gui).getScreen(); if (screen instanceof GenericMessageScreen) { ((ScreenAccessors) screen).setTitle(messageToText(userMessage)); ((ScreenAccessors) screen).invokeRebuildWidgets(); // force it to rebuild the message component with the new title diff --git a/common/src/main/resources/fastback.mixins.json b/common/src/main/resources/fastback.mixins.json index 4df19db4..bdb8276f 100644 --- a/common/src/main/resources/fastback.mixins.json +++ b/common/src/main/resources/fastback.mixins.json @@ -11,7 +11,8 @@ ], "client": [ "MessageScreenMixin", - "ScreenAccessors" + "ScreenAccessors", + "GuiAccessors" ], "injectors": { "defaultRequire": 1 diff --git a/fabric/src/main/resources/fabric.mod.json b/fabric/src/main/resources/fabric.mod.json index 366d41b9..3689e0b2 100644 --- a/fabric/src/main/resources/fabric.mod.json +++ b/fabric/src/main/resources/fabric.mod.json @@ -28,7 +28,7 @@ "fabricloader": ">=${fabric_loader_version}", "fabric-api": "*", "fabric-permissions-api-v0": "*", - "minecraft": "26.1.x", + "minecraft": "26.2.x", "java": ">=25" }, "conflicts": {} diff --git a/gradle.properties b/gradle.properties index 364fc989..1e5df199 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ # # Mod # -mod_version = 0.33.2+26.1.2-prerelease +mod_version = 0.34.0+26.2.0-prerelease archives_base_name = fastback github_projectUrl = https://github.com/pcal43/fastback modrinth_projectId = ZHKrK8Rp @@ -10,21 +10,21 @@ curseforge_projectId = 667417 # # Minecraft # -minecraft_version=26.1.2 +minecraft_version=26.2 java_version = 25 # # Fabric - https://fabricmc.net/develop # -fabric_loader_version=0.19.1 -fabric_loom_version=1.16-SNAPSHOT -fabric_api_version=0.145.4+26.1.2 +fabric_loader_version=0.19.3 +fabric_loom_version=1.17-SNAPSHOT +fabric_api_version=0.154.2+26.2 # # NeoForge - https://neoforged.net/ # -neoforge_version = 26.1.2.8-beta -neoforge_moddev_version = 2.0.140 +neoforge_version = 26.2.0.8-beta +neoforge_moddev_version = 2.0.141 # # Dependencies @@ -60,7 +60,7 @@ fabric_permissions_version = 0.7.0 # https://github.com/NucleoidMC/Server-Translations/releases # https://maven.nucleoid.xyz/xyz/nucleoid/server-translations-api/ -server_translations_version = 3.0.3+26.1 +server_translations_version = 3.1.0+26.2 # # Build settings From f60d1cb465e95378a90f6630a5207f46b0e3a76a Mon Sep 17 00:00:00 2001 From: Patrick Calahan Date: Fri, 10 Jul 2026 13:45:58 -0700 Subject: [PATCH 2/2] access screen field directly rather than with accessor mixin --- .../fastback/common/mixins/GuiAccessors.java | 33 ------------------- .../fastback/common/mod/ClientHelper.java | 5 +-- .../src/main/resources/fastback.mixins.json | 3 +- 3 files changed, 2 insertions(+), 39 deletions(-) delete mode 100644 common/src/main/java/net/pcal/fastback/common/mixins/GuiAccessors.java diff --git a/common/src/main/java/net/pcal/fastback/common/mixins/GuiAccessors.java b/common/src/main/java/net/pcal/fastback/common/mixins/GuiAccessors.java deleted file mode 100644 index 2169e765..00000000 --- a/common/src/main/java/net/pcal/fastback/common/mixins/GuiAccessors.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * FastBack - Fast, incremental Minecraft backups powered by Git. - * Copyright (C) 2022 pcal.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; If not, see . - */ - -package net.pcal.fastback.common.mixins; - -import net.minecraft.client.gui.Gui; -import net.minecraft.client.gui.screens.Screen; -import org.jspecify.annotations.Nullable; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Accessor; - -@Mixin(Gui.class) -public interface GuiAccessors { - @Accessor("screen") - @Nullable Screen getScreen(); - -} diff --git a/common/src/main/java/net/pcal/fastback/common/mod/ClientHelper.java b/common/src/main/java/net/pcal/fastback/common/mod/ClientHelper.java index e1e879ce..e52e8f08 100644 --- a/common/src/main/java/net/pcal/fastback/common/mod/ClientHelper.java +++ b/common/src/main/java/net/pcal/fastback/common/mod/ClientHelper.java @@ -19,14 +19,12 @@ package net.pcal.fastback.common.mod; import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.Gui; import net.minecraft.client.gui.GuiGraphicsExtractor; import net.minecraft.client.gui.screens.GenericMessageScreen; import net.minecraft.client.gui.screens.Screen; import net.minecraft.network.chat.Component; import net.pcal.fastback.common.logging.UserMessage; import net.pcal.fastback.common.mixins.ScreenAccessors; -import net.pcal.fastback.common.mixins.GuiAccessors; import static net.pcal.fastback.common.logging.SystemLogger.syslog; import static net.pcal.fastback.common.mod.UserMessageUtil.messageToText; @@ -77,8 +75,7 @@ public void clearHudText() { public void setMessageScreenText(UserMessage userMessage) { if (this.client == null) return; - final Gui gui = client.gui; - final Screen screen = ((GuiAccessors) gui).getScreen(); + final Screen screen = client.gui.screen(); if (screen instanceof GenericMessageScreen) { ((ScreenAccessors) screen).setTitle(messageToText(userMessage)); ((ScreenAccessors) screen).invokeRebuildWidgets(); // force it to rebuild the message component with the new title diff --git a/common/src/main/resources/fastback.mixins.json b/common/src/main/resources/fastback.mixins.json index bdb8276f..4df19db4 100644 --- a/common/src/main/resources/fastback.mixins.json +++ b/common/src/main/resources/fastback.mixins.json @@ -11,8 +11,7 @@ ], "client": [ "MessageScreenMixin", - "ScreenAccessors", - "GuiAccessors" + "ScreenAccessors" ], "injectors": { "defaultRequire": 1