diff options
| author | Felix (xq) Queißner <git@mq32.de> | 2020-06-07 10:46:23 +0200 |
|---|---|---|
| committer | Felix (xq) Queißner <git@mq32.de> | 2020-06-07 10:46:23 +0200 |
| commit | 425f9d41cd337133d5677744eef937a8a2a61212 (patch) | |
| tree | 6cd5c2603e1499b89aae4fe5e56c6e650cb2117e /src/browsertab.cpp | |
| parent | ec95bb371e54116a2627c162eac3357ec13f06ad (diff) | |
| download | kristall-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.cpp | 23 |
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/")) { |
