diff --git a/api/src/main/java/net/kyori/adventure/text/AbstractComponentBuilder.java b/api/src/main/java/net/kyori/adventure/text/AbstractComponentBuilder.java index b4d7964c66..300ab50e65 100644 --- a/api/src/main/java/net/kyori/adventure/text/AbstractComponentBuilder.java +++ b/api/src/main/java/net/kyori/adventure/text/AbstractComponentBuilder.java @@ -289,7 +289,9 @@ private void prepareChildren() { @Override @SuppressWarnings("unchecked") public @NotNull B mergeStyle(final @NotNull Component that, final @NotNull Set merges) { - this.styleBuilder().merge(requireNonNull(that, "component").style(), merges); + final Style thatStyle = requireNonNull(that, "that").style(); + if (thatStyle.isEmpty() && merges.isEmpty()) return (B) this; + this.styleBuilder().merge(thatStyle, merges); return (B) this; } @@ -313,6 +315,7 @@ private void prepareChildren() { return this.styleBuilder; } + @SuppressWarnings("BooleanMethodIsAlwaysInverted") protected final boolean hasStyle() { return this.styleBuilder != null || this.style != null; }