From 4135e0d368a8181b7422338559bdcd3b214443c4 Mon Sep 17 00:00:00 2001 From: Mike Skec Date: Tue, 16 Feb 2021 09:56:14 +1100 Subject: Improved blockquotes --- src/renderers/geminirenderer.cpp | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) (limited to 'src/renderers/geminirenderer.cpp') diff --git a/src/renderers/geminirenderer.cpp b/src/renderers/geminirenderer.cpp index 5f82bb8..595db44 100644 --- a/src/renderers/geminirenderer.cpp +++ b/src/renderers/geminirenderer.cpp @@ -6,6 +6,7 @@ #include #include #include +#include #include "kristall.hpp" @@ -106,20 +107,28 @@ std::unique_ptr GeminiRenderer::render( if(line.startsWith(">")) { - if(not blockquote ) { - // cursor.insertBlock(); + if(!blockquote) + { + // Start blockquote + QTextTable *table = cursor.insertTable(1, 1, text_style.blockquote_tableformat); + cursor.setBlockFormat(text_style.blockquote_format); + QTextTableCell cell = table->cellAt(0, 0); + cell.setFormat(text_style.blockquote); + blockquote = true; } - blockquote = true; - cursor.setBlockFormat(text_style.block_quote_format); replace_quotes(line); - cursor.insertText(trim_whitespace(line.mid(1)) + "\n", text_style.standard); + cursor.insertText(trim_whitespace(line.mid(1)) + "\n", text_style.blockquote); continue; } else { - if(blockquote) { + if (blockquote) + { + // End blockquote + cursor.deletePreviousChar(); + cursor.movePosition(QTextCursor::NextBlock); cursor.setBlockFormat(text_style.standard_format); } blockquote = false; -- cgit v1.2.3