Learn: section actions on the title row, scrollable tables, copy code

This commit is contained in:
2026-09-17 20:16:35 +03:00
parent 65b94f11cb
commit 6b1213f4cf
7 changed files with 189 additions and 67 deletions

View File

@@ -51,7 +51,12 @@ class MarkdownRenderer(
private val renderer: HtmlRenderer = HtmlRenderer.builder(options).build()
private val sanitizer: PolicyFactory = buildSanitizer()
fun render(markdown: String): String = sanitizer.sanitize(renderRaw(markdown, depth = 0))
fun render(markdown: String): String = wrapTables(sanitizer.sanitize(renderRaw(markdown, depth = 0)))
/** Оборачивает таблицы в прокручиваемый контейнер, чтобы на мобильных они не выезжали. */
private fun wrapTables(html: String): String =
html.replace("<table", "<div class=\"table-scroll\"><table")
.replace("</table>", "</table></div>")
private fun renderRaw(markdown: String, depth: Int): String {
val out = StringBuilder()