Skip to content

Commit c022291

Browse files
committed
Merge branch 'update/1.19.4' into 1.19.x/dev
# Conflicts: # build.gradle.kts
2 parents c8a86cf + e51e9bc commit c022291

17 files changed

Lines changed: 126 additions & 44 deletions

build.gradle.kts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
plugins {
22
java
33

4-
id("fabric-loom") version "1.1.+"
4+
id("fabric-loom") version "1.1.+" // 1.0.+ but patch must be 16 or higher
55
id("io.github.juuxel.loom-quiltflower") version "1.8.+"
66

7-
id("com.modrinth.minotaur") version "2.5.+"
7+
id("com.modrinth.minotaur") version "2.6.+"
88
id("me.hypherionmc.cursegradle") version "2.+"
99
id("com.github.breadmoirai.github-release") version "2.+"
1010
`maven-publish`
@@ -16,7 +16,7 @@ plugins {
1616
val ciRun = System.getenv().containsKey("GITHUB_ACTIONS")
1717

1818
group = "dev.isxander"
19-
version = "2.2.0"
19+
version = "2.3.0"
2020

2121
if (ciRun)
2222
version = "$version+${grgit.branch.current().name.replace('/', '.')}-SNAPSHOT"
@@ -75,7 +75,7 @@ dependencies {
7575
})
7676
modImplementation("net.fabricmc:fabric-loader:$fabricLoaderVersion")
7777

78-
"modClientImplementation"(fabricApi.module("fabric-resource-loader-v0", "0.69.1+1.19.3"))
78+
"modClientImplementation"(fabricApi.module("fabric-resource-loader-v0", "0.76.0+1.19.4"))
7979

8080
"testmodImplementation"(sourceSets.main.get().output)
8181
"testmodImplementation"(sourceSets["client"].output)
@@ -133,7 +133,7 @@ if (modrinthId.isNotEmpty()) {
133133
versionNumber.set("${project.version}")
134134
versionType.set("release")
135135
uploadFile.set(tasks["remapJar"])
136-
gameVersions.set(listOf("1.19.3"))
136+
gameVersions.set(listOf("1.19.4"))
137137
loaders.set(listOf("fabric", "quilt"))
138138
dependencies {
139139
required.project("fabric-api")
@@ -154,7 +154,7 @@ if (hasProperty("CURSEFORGE_TOKEN") && curseforgeId.isNotEmpty()) {
154154

155155
id = curseforgeId
156156
releaseType = "release"
157-
addGameVersion("1.19.3")
157+
addGameVersion("1.19.4")
158158
addGameVersion("Fabric")
159159
addGameVersion("Java 17")
160160

changelogs/2.3.0.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
- Update to 1.19.4

gradle.properties

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
org.gradle.jvmargs=-Xmx3G
22

3-
minecraftVersion=1.19.3
4-
fabricLoaderVersion=0.14.11
5-
qmBuild=17
3+
minecraftVersion=1.19.4
4+
fabricLoaderVersion=0.14.17
5+
qmBuild=1
66

77
modId=yet-another-config-lib
88
modName=YetAnotherConfigLib

src/client/java/dev/isxander/yacl/gui/CategoryWidget.java

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,15 @@ private boolean isCurrentCategory() {
1919
}
2020

2121
@Override
22-
protected int getYImage(boolean hovered) {
23-
return super.getYImage(hovered || isCurrentCategory());
22+
protected int getTextureY() {
23+
int i = 1;
24+
if (!this.active) {
25+
i = 0;
26+
} else if (this.isHoveredOrFocused() || isCurrentCategory()) {
27+
i = 2;
28+
}
29+
30+
return 46 + i * 20;
2431
}
2532

2633
@Override

src/client/java/dev/isxander/yacl/gui/LowProfileButtonWidget.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ public LowProfileButtonWidget(int x, int y, int width, int height, Component mes
1818
}
1919

2020
@Override
21-
public void renderButton(PoseStack matrices, int mouseX, int mouseY, float delta) {
21+
public void renderWidget(PoseStack matrices, int mouseX, int mouseY, float deltaTicks) {
2222
if (!isHoveredOrFocused() || !active) {
2323
int j = this.active ? 0xFFFFFF : 0xA0A0A0;
24-
drawCenteredString(matrices, Minecraft.getInstance().font, this.getMessage(), this.getX() + this.width / 2, this.getY() + (this.height - 8) / 2, j | Mth.ceil(this.alpha * 255.0F) << 24);
24+
this.renderString(matrices, Minecraft.getInstance().font, j);
2525
} else {
26-
super.renderButton(matrices, mouseX, mouseY, delta);
26+
super.renderWidget(matrices, mouseX, mouseY, deltaTicks);
2727
}
2828
}
2929
}

src/client/java/dev/isxander/yacl/gui/SearchFieldWidget.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ public SearchFieldWidget(YACLScreen yaclScreen, Font font, int x, int y, int wid
2222
}
2323

2424
@Override
25-
public void renderButton(PoseStack matrices, int mouseX, int mouseY, float delta) {
26-
super.renderButton(matrices, mouseX, mouseY, delta);
25+
public void renderWidget(PoseStack matrices, int mouseX, int mouseY, float delta) {
26+
super.renderWidget(matrices, mouseX, mouseY, delta);
2727
if (isVisible() && isEmpty()) {
2828
font.drawShadow(matrices, emptyText, getX() + 4, this.getY() + (this.height - 8) / 2f, 0x707070);
2929
}

src/client/java/dev/isxander/yacl/gui/TextScaledButtonWidget.java

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
import net.minecraft.client.gui.components.Button;
77
import net.minecraft.client.gui.components.Tooltip;
88
import net.minecraft.network.chat.Component;
9-
import net.minecraft.util.FormattedCharSequence;
109
import net.minecraft.util.Mth;
1110

1211
public class TextScaledButtonWidget extends Button {
@@ -23,22 +22,13 @@ public TextScaledButtonWidget(int x, int y, int width, int height, float textSca
2322
}
2423

2524
@Override
26-
public void renderButton(PoseStack matrices, int mouseX, int mouseY, float delta) {
27-
// prevents super from rendering text
28-
Component message = getMessage();
29-
setMessage(Component.empty());
30-
31-
super.renderButton(matrices, mouseX, mouseY, delta);
32-
33-
setMessage(message);
34-
int j = this.active ? 16777215 : 10526880;
35-
FormattedCharSequence orderedText = getMessage().getVisualOrderText();
25+
public void renderString(PoseStack matrices, Font textRenderer, int color) {
3626
Font font = Minecraft.getInstance().font;
3727

3828
matrices.pushPose();
39-
matrices.translate(((this.getX() + this.width / 2f) - font.width(orderedText) * textScale / 2), (float)this.getY() + (this.height - 8 * textScale) / 2f / textScale, 0);
29+
matrices.translate(((this.getX() + this.width / 2f) - font.width(getMessage()) * textScale / 2), (float)this.getY() + (this.height - 8 * textScale) / 2f / textScale, 0);
4030
matrices.scale(textScale, textScale, 1);
41-
font.drawShadow(matrices, orderedText, 0, 0, j | Mth.ceil(this.alpha * 255.0F) << 24);
31+
font.drawShadow(matrices, getMessage(), 0, 0, color | Mth.ceil(this.alpha * 255.0F) << 24);
4232
matrices.popPose();
4333
}
4434
}

src/client/java/dev/isxander/yacl/gui/YACLScreen.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -302,12 +302,10 @@ public static void renderMultilineTooltip(PoseStack matrices, Font font, MultiLi
302302
400
303303
);
304304
RenderSystem.enableDepthTest();
305-
RenderSystem.disableTexture();
306305
RenderSystem.enableBlend();
307306
RenderSystem.defaultBlendFunc();
308307
BufferUploader.drawWithShader(bufferBuilder.end());
309308
RenderSystem.disableBlend();
310-
RenderSystem.enableTexture();
311309
matrices.translate(0.0, 0.0, 400.0);
312310

313311
text.renderLeftAligned(matrices, drawX, drawY, lineHeight, -1);

src/client/java/dev/isxander/yacl/gui/controllers/ControllerWidget.java

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,14 @@
77
import dev.isxander.yacl.gui.YACLScreen;
88
import dev.isxander.yacl.gui.utils.GuiUtils;
99
import net.minecraft.ChatFormatting;
10+
import net.minecraft.client.gui.ComponentPath;
1011
import net.minecraft.client.gui.GuiComponent;
1112
import net.minecraft.client.gui.components.MultiLineLabel;
1213
import net.minecraft.client.gui.narration.NarratedElementType;
1314
import net.minecraft.client.gui.narration.NarrationElementOutput;
15+
import net.minecraft.client.gui.navigation.FocusNavigationEvent;
1416
import net.minecraft.network.chat.Component;
17+
import org.jetbrains.annotations.Nullable;
1518

1619
public abstract class ControllerWidget<T extends Controller<?>> extends AbstractWidget {
1720
protected final T control;
@@ -126,13 +129,22 @@ protected float getTextY() {
126129
return getDimension().y() + getDimension().height() / 2f - textRenderer.lineHeight / 2f;
127130
}
128131

132+
@Nullable
129133
@Override
130-
public boolean changeFocus(boolean lookForwards) {
131-
if (!isAvailable())
132-
return false;
134+
public ComponentPath nextFocusPath(FocusNavigationEvent focusNavigationEvent) {
135+
if (!this.isAvailable())
136+
return null;
137+
return !this.isFocused() ? ComponentPath.leaf(this) : null;
138+
}
133139

134-
this.focused = !this.focused;
135-
return this.focused;
140+
@Override
141+
public boolean isFocused() {
142+
return focused;
143+
}
144+
145+
@Override
146+
public void setFocused(boolean focused) {
147+
this.focused = focused;
136148
}
137149

138150
@Override

src/client/java/dev/isxander/yacl/gui/controllers/LabelController.java

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,18 @@
66
import dev.isxander.yacl.api.utils.Dimension;
77
import dev.isxander.yacl.gui.AbstractWidget;
88
import dev.isxander.yacl.gui.YACLScreen;
9+
import net.minecraft.client.gui.ComponentPath;
10+
import net.minecraft.client.gui.GuiComponent;
911
import net.minecraft.client.gui.components.MultiLineLabel;
12+
import net.minecraft.client.gui.narration.NarratedElementType;
13+
import net.minecraft.client.gui.narration.NarrationElementOutput;
14+
import net.minecraft.client.gui.navigation.FocusNavigationEvent;
1015
import net.minecraft.network.chat.Component;
1116
import net.minecraft.network.chat.HoverEvent;
1217
import net.minecraft.network.chat.Style;
1318
import net.minecraft.util.FormattedCharSequence;
1419
import net.minecraft.world.item.ItemStack;
20+
import org.jetbrains.annotations.Nullable;
1521

1622
import java.util.List;
1723

@@ -50,6 +56,7 @@ public AbstractWidget provideWidget(YACLScreen screen, Dimension<Integer> widget
5056
public class LabelControllerElement extends AbstractWidget {
5157
private List<FormattedCharSequence> wrappedText;
5258
protected MultiLineLabel wrappedTooltip;
59+
protected boolean focused;
5360

5461
protected final YACLScreen screen;
5562

@@ -70,6 +77,13 @@ public void render(PoseStack matrices, int mouseX, int mouseY, float delta) {
7077
textRenderer.drawShadow(matrices, text, getDimension().x() + getXPadding(), y + getYPadding(), option().available() ? -1 : 0xFFA0A0A0);
7178
y += textRenderer.lineHeight;
7279
}
80+
81+
if (isFocused()) {
82+
GuiComponent.fill(matrices, getDimension().x() - 1, getDimension().y() - 1, getDimension().xLimit() + 1, getDimension().y(), -1);
83+
GuiComponent.fill(matrices, getDimension().x() - 1, getDimension().y() - 1, getDimension().x(), getDimension().yLimit() + 1, -1);
84+
GuiComponent.fill(matrices, getDimension().x() - 1, getDimension().yLimit(), getDimension().xLimit() + 1, getDimension().yLimit() + 1, -1);
85+
GuiComponent.fill(matrices, getDimension().xLimit(), getDimension().y() - 1, getDimension().xLimit() + 1, getDimension().yLimit() + 1, -1);
86+
}
7387
}
7488

7589
@Override
@@ -147,5 +161,33 @@ private void updateTooltip() {
147161
public boolean matchesSearch(String query) {
148162
return formatValue().getString().toLowerCase().contains(query.toLowerCase());
149163
}
164+
165+
@Nullable
166+
@Override
167+
public ComponentPath nextFocusPath(FocusNavigationEvent focusNavigationEvent) {
168+
if (!option().available())
169+
return null;
170+
return !this.isFocused() ? ComponentPath.leaf(this) : null;
171+
}
172+
173+
@Override
174+
public boolean isFocused() {
175+
return focused;
176+
}
177+
178+
@Override
179+
public void setFocused(boolean focused) {
180+
this.focused = focused;
181+
}
182+
183+
@Override
184+
public void updateNarration(NarrationElementOutput builder) {
185+
builder.add(NarratedElementType.TITLE, formatValue());
186+
}
187+
188+
@Override
189+
public NarrationPriority narrationPriority() {
190+
return NarrationPriority.FOCUSED;
191+
}
150192
}
151193
}

0 commit comments

Comments
 (0)