From 0ea9b16b8635d53b4df8e7fa061f2c3737d203b8 Mon Sep 17 00:00:00 2001 From: mudkipdev Date: Tue, 14 Jul 2026 16:15:58 -0600 Subject: [PATCH] fix LabelOption discarding component text color --- .../dev/isxander/yacl3/gui/controllers/LabelController.java | 4 ++-- src/main/java/dev/isxander/yacl3/gui/utils/GuiUtils.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/dev/isxander/yacl3/gui/controllers/LabelController.java b/src/main/java/dev/isxander/yacl3/gui/controllers/LabelController.java index f77bc4d3..13dd962a 100644 --- a/src/main/java/dev/isxander/yacl3/gui/controllers/LabelController.java +++ b/src/main/java/dev/isxander/yacl3/gui/controllers/LabelController.java @@ -74,12 +74,12 @@ public void extractRenderState(GuiGraphicsExtractor graphics, int mouseX, int mo int y = getDimension().y(); ActiveTextCollector textCollector = graphics.textRenderer(GuiGraphicsExtractor.HoveredTextEffects.TOOLTIP_AND_CURSOR); - Style textStyle = Style.EMPTY.withColor(option().available() ? -1 : 0xFFA0A0A0); + Style fallbackStyle = Style.EMPTY.withColor(option().available() ? -1 : 0xFFA0A0A0); for (FormattedCharSequence text : wrappedText) { textCollector.accept( getDimension().x() + getXPadding(), y + getYPadding(), - GuiUtils.overrideStyle(text, textStyle) + GuiUtils.applyFallbackStyle(text, fallbackStyle) ); y += textRenderer.lineHeight; } diff --git a/src/main/java/dev/isxander/yacl3/gui/utils/GuiUtils.java b/src/main/java/dev/isxander/yacl3/gui/utils/GuiUtils.java index 014dffb1..2b934a2c 100644 --- a/src/main/java/dev/isxander/yacl3/gui/utils/GuiUtils.java +++ b/src/main/java/dev/isxander/yacl3/gui/utils/GuiUtils.java @@ -45,8 +45,8 @@ public static String shortenString(String string, Font font, int maxWidth, Strin return string; } - public static FormattedCharSequence overrideStyle(FormattedCharSequence seq, Style style) { - return output -> seq.accept((c, s, t) -> output.accept(c, style, t)); + public static FormattedCharSequence applyFallbackStyle(FormattedCharSequence seq, Style fallback) { + return output -> seq.accept((c, s, t) -> output.accept(c, s.applyTo(fallback), t)); } public static void setScreen(Screen screen, boolean ignoreVanilla) {