From c14d071e1e883891e96d908a1054929a291748ff Mon Sep 17 00:00:00 2001 From: Mike Skec Date: Sun, 28 Feb 2021 10:11:01 +1100 Subject: GeminiRenderer: add centred first H1 capability Pref added in next commit --- src/renderers/geminirenderer.cpp | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'src/renderers/geminirenderer.cpp') diff --git a/src/renderers/geminirenderer.cpp b/src/renderers/geminirenderer.cpp index 6f3bd0c..c55e0e6 100644 --- a/src/renderers/geminirenderer.cpp +++ b/src/renderers/geminirenderer.cpp @@ -51,6 +51,8 @@ std::unique_ptr GeminiRenderer::render( QTextList *current_list = nullptr; bool blockquote = false; + bool centre_first_h1 = true; + outline.beginBuild(); int anchor_id = 0; @@ -193,7 +195,20 @@ std::unique_ptr GeminiRenderer::render( *page_title = heading; } - cursor.setBlockFormat(text_style.heading_format); + // Centre the first heading. We can't use the above code block + // for this because it doesn't get run on every re-render of the page + if (centre_first_h1) + { + auto f = text_style.heading_format; + f.setAlignment(Qt::AlignCenter); + cursor.setBlockFormat(f); + centre_first_h1 = false; + } + else + { + cursor.setBlockFormat(text_style.heading_format); + } + cursor.insertText(replace_quotes(heading), fmt); cursor.insertText("\n", text_style.standard); } -- cgit v1.2.3