diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/HTMLRenderer.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/HTMLRenderer.java index a7dcc2643d..69423d49ad 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/HTMLRenderer.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/HTMLRenderer.java @@ -37,6 +37,7 @@ * @author Glavo */ public final class HTMLRenderer { + private static final String INDENT = " "; private static URI resolveLink(Node linkNode) { String href = linkNode.absUrl("href"); if (href.isEmpty()) @@ -57,6 +58,7 @@ private static URI resolveLink(Node linkNode) { private boolean underline; private boolean strike; private boolean highlight; + private int indentLevel; private String headerLevel; private Node hyperlink; @@ -218,7 +220,7 @@ public void appendNode(Node node) { appendImage(node); break; case "li": - appendText("\n \u2022 "); + appendText("\n" + INDENT.repeat(indentLevel) + " \u2022 "); break; case "dt": appendText(" "); @@ -237,11 +239,14 @@ public void appendNode(Node node) { } if (node.childNodeSize() > 0) { + boolean isLiNode = "li".equals(name); + if (isLiNode) indentLevel++; pushNode(node); for (Node childNode : node.childNodes()) { appendNode(childNode); } popNode(); + if (isLiNode) indentLevel--; } switch (name) {