From f21399d63f4ed24bc67a9e74128c5d61b6b8e415 Mon Sep 17 00:00:00 2001 From: flurrybun <122103556+flurrybun@users.noreply.github.com> Date: Wed, 1 Apr 2026 17:20:17 -0400 Subject: [PATCH 1/2] fix markdown indentation --- loader/src/ui/nodes/MDTextArea.cpp | 10 +++++++++- loader/src/ui/nodes/TextRenderer.cpp | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/loader/src/ui/nodes/MDTextArea.cpp b/loader/src/ui/nodes/MDTextArea.cpp index c3228be89..c23c5a16c 100644 --- a/loader/src/ui/nodes/MDTextArea.cpp +++ b/loader/src/ui/nodes/MDTextArea.cpp @@ -172,7 +172,7 @@ bool MDTextArea::init(std::string str, CCSize const& size) { m_impl->m_scrollLayer->setTouchEnabled(true); this->addChild(m_impl->m_scrollLayer); - + this->updateLabel(); return true; @@ -499,6 +499,11 @@ struct MDParser { renderer->breakLine(); s_breakListLine = false; } + auto cursor = renderer->getCursorPos(); + auto markerStart = renderer->getCurrentIndent(); + if (cursor.x != markerStart) { + renderer->moveCursor({ markerStart, cursor.y }); + } renderer->pushOpacity(renderer->getCurrentOpacity() / 2); auto lidetail = static_cast(detail); if (s_isOrderedList) { @@ -509,6 +514,8 @@ struct MDParser { renderer->renderString("• "); } renderer->popOpacity(); + auto markerWidth = renderer->getCursorPos().x - markerStart; + renderer->pushIndent(markerWidth); s_breakListLine = true; } break; @@ -618,6 +625,7 @@ struct MDParser { case MD_BLOCKTYPE::MD_BLOCK_LI: { + renderer->popIndent(); } break; diff --git a/loader/src/ui/nodes/TextRenderer.cpp b/loader/src/ui/nodes/TextRenderer.cpp index f123fb421..d1dee996e 100644 --- a/loader/src/ui/nodes/TextRenderer.cpp +++ b/loader/src/ui/nodes/TextRenderer.cpp @@ -489,7 +489,7 @@ void TextRenderer::breakLine(float incY) { } if (h > y) y = h; m_cursor.y -= y; - m_cursor.x = m_origin.x; + m_cursor.x = m_origin.x + this->getCurrentIndent(); } float TextRenderer::adjustLineAlignment() { From 5fc0c78a3c4aaa85d7b2145d8b8ebfcf1973a77c Mon Sep 17 00:00:00 2001 From: flurrybun <122103556+flurrybun@users.noreply.github.com> Date: Wed, 1 Apr 2026 17:26:24 -0400 Subject: [PATCH 2/2] minor aesthetic tweaks --- loader/src/ui/nodes/MDTextArea.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/loader/src/ui/nodes/MDTextArea.cpp b/loader/src/ui/nodes/MDTextArea.cpp index c23c5a16c..fce2d765b 100644 --- a/loader/src/ui/nodes/MDTextArea.cpp +++ b/loader/src/ui/nodes/MDTextArea.cpp @@ -500,10 +500,8 @@ struct MDParser { s_breakListLine = false; } auto cursor = renderer->getCursorPos(); - auto markerStart = renderer->getCurrentIndent(); - if (cursor.x != markerStart) { - renderer->moveCursor({ markerStart, cursor.y }); - } + auto indent = renderer->getCurrentIndent(); + renderer->moveCursor({ indent, cursor.y }); renderer->pushOpacity(renderer->getCurrentOpacity() / 2); auto lidetail = static_cast(detail); if (s_isOrderedList) { @@ -514,7 +512,7 @@ struct MDParser { renderer->renderString("• "); } renderer->popOpacity(); - auto markerWidth = renderer->getCursorPos().x - markerStart; + auto markerWidth = renderer->getCursorPos().x - indent; renderer->pushIndent(markerWidth); s_breakListLine = true; }