aboutsummaryrefslogtreecommitdiff
path: root/src/browsertab.cpp
diff options
context:
space:
mode:
authorFelix (xq) Queißner <git@mq32.de>2020-06-07 10:46:23 +0200
committerFelix (xq) Queißner <git@mq32.de>2020-06-07 10:46:23 +0200
commit425f9d41cd337133d5677744eef937a8a2a61212 (patch)
tree6cd5c2603e1499b89aae4fe5e56c6e650cb2117e /src/browsertab.cpp
parentec95bb371e54116a2627c162eac3357ec13f06ad (diff)
downloadkristall-425f9d41cd337133d5677744eef937a8a2a61212.tar.gz
Adds support for light/dark widget theme, adds experiemental support for http style sheets.
Diffstat (limited to 'src/browsertab.cpp')
-rw-r--r--src/browsertab.cpp23
1 files changed, 17 insertions, 6 deletions
diff --git a/src/browsertab.cpp b/src/browsertab.cpp
index 8dcbe64..2a24815 100644
--- a/src/browsertab.cpp
+++ b/src/browsertab.cpp
@@ -199,29 +199,40 @@ void BrowserTab::on_requestComplete(const QByteArray &data, const QString &mime)
this->outline.clear();
+ auto doc_style = mainWindow->current_style.derive(this->current_location);
+
+ this->ui->text_browser->setStyleSheet(QString("QTextBrowser { background-color: %1; }").arg(doc_style.background_color.name()));
+
if(mime.startsWith("text/gemini")) {
- auto doc= GeminiRenderer{ mainWindow->current_style }.render(data, this->current_location, this->outline);
- this->ui->text_browser->setStyleSheet(QString("QTextBrowser { background-color: %1; }").arg(doc->background_color.name()));
+ auto doc= GeminiRenderer::render(
+ data,
+ this->current_location,
+ doc_style,
+ this->outline);
document = std::move(doc);
}
else if(mime.startsWith("text/html")) {
document = std::make_unique<QTextDocument>();
+
+ document->setDefaultFont(doc_style.standard_font);
+ document->setDefaultStyleSheet(doc_style.toStyleSheet());
document->setHtml(QString::fromUtf8(data));
}
#if defined(QT_FEATURE_textmarkdownreader)
else if(mime.startsWith("text/markdown")) {
document = std::make_unique<QTextDocument>();
+ document->setDefaultFont(doc_style.standard_font);
+ document->setDefaultStyleSheet(doc_style.toStyleSheet());
+
document->setMarkdown(QString::fromUtf8(data));
}
#endif
else if(mime.startsWith("text/")) {
- QFont monospace;
- monospace.setFamily("monospace");
-
document = std::make_unique<QTextDocument>();
- document->setDefaultFont(monospace);
+ document->setDefaultFont(doc_style.standard_font);
+ document->setDefaultStyleSheet(doc_style.toStyleSheet());
document->setPlainText(QString::fromUtf8(data));
}
else if(mime.startsWith("image/")) {