diff --git a/application/dialogs/UpdateDialog.cpp b/application/dialogs/UpdateDialog.cpp index 31f2de29e..37e44b1e9 100644 --- a/application/dialogs/UpdateDialog.cpp +++ b/application/dialogs/UpdateDialog.cpp @@ -57,6 +57,9 @@ QString reprocessMarkdown(QString markdown) { // [GitHub issues](https://github.com/MultiMC/MultiMC5/issues) line.replace(QRegExp("\\[([^\\]]+)\\]\\(([^\\)]+)\\)"), "\\1"); + line.replace(QRegExp("GH-([0-9]+)"), "GH-\\1"); + line.replace(QRegExp("\\*\\*([^*]+)\\*\\*"), "\\1"); + line.replace(QRegExp("\\*([^*]+)\\*"), "\\1"); return line; }; for(auto line: lines) @@ -68,6 +71,14 @@ QString reprocessMarkdown(QString markdown) else switch (state) { case BASE: + if(line.startsWith("####")) + { + html << "

" << procLine(line.mid(4)) << "

\n"; + } + if(line.startsWith("###")) + { + html << "

" << procLine(line.mid(3)) << "

\n"; + } if(line.startsWith("##")) { html << "

" << procLine(line.mid(2)) << "

\n"; @@ -85,6 +96,18 @@ QString reprocessMarkdown(QString markdown) else qCritical() << "Invalid input on line " << i << ": " << line; break; case LIST1: + if(line.startsWith("####")) + { + state = BASE; + html << "\n"; + html << "

" << procLine(line.mid(4)) << "

\n"; + } + else if(line.startsWith("###")) + { + state = BASE; + html << "\n"; + html << "

" << procLine(line.mid(3)) << "

\n"; + } if(line.startsWith("##")) { state = BASE; @@ -110,6 +133,20 @@ QString reprocessMarkdown(QString markdown) else qCritical() << "Invalid input on line " << i << ": " << line; break; case LIST2: + if(line.startsWith("####")) + { + state = BASE; + html << "\n"; + html << "\n"; + html << "

" << procLine(line.mid(4)) << "

\n"; + } + else if(line.startsWith("###")) + { + state = BASE; + html << "\n"; + html << "\n"; + html << "

" << procLine(line.mid(3)) << "

\n"; + } if(line.startsWith("##")) { state = BASE;