aboutsummaryrefslogtreecommitdiff
path: root/browsertab.cpp
diff options
context:
space:
mode:
authorFelix (xq) Queißner <git@mq32.de>2020-06-06 18:28:10 +0200
committerFelix (xq) Queißner <git@mq32.de>2020-06-06 18:28:10 +0200
commitcb69dca1dbf19ae854276803442e724045c4be81 (patch)
tree8c3dd168d5ab337161a44246133bef98fb5be31c /browsertab.cpp
parent7772993ed5d65f10588f3d70961c429991fd7849 (diff)
downloadkristall-cb69dca1dbf19ae854276803442e724045c4be81.tar.gz
Adds color theming, adds automatic color theming with dark/light themes
Diffstat (limited to 'browsertab.cpp')
-rw-r--r--browsertab.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/browsertab.cpp b/browsertab.cpp
index 19a1993..e18350c 100644
--- a/browsertab.cpp
+++ b/browsertab.cpp
@@ -98,7 +98,11 @@ void BrowserTab::on_menu_button_clicked()
connect(menu.addAction("Settings..."), &QAction::triggered, [this]() {
SettingsDialog dialog;
- dialog.exec();
+ dialog.setGeminiStyle(current_style);
+
+ if(dialog.exec() == QDialog::Accepted) {
+ this->current_style = dialog.geminiStyle();
+ }
});
@@ -128,13 +132,18 @@ void BrowserTab::on_gemini_complete(const QByteArray &data, const QString &mime)
this->ui->text_browser->setVisible(mime.startsWith("text/"));
this->ui->graphics_browser->setVisible(mime.startsWith("image/"));
+ ui->text_browser->setStyleSheet("");
+
std::unique_ptr<QTextDocument> document;
this->outline.clear();
if(mime.startsWith("text/gemini")) {
- document = GeminiRenderer{}.render(data, this->current_location, this->outline);
+ auto doc= GeminiRenderer{ current_style }.render(data, this->current_location, this->outline);
+ this->ui->text_browser->setStyleSheet(QString("QTextBrowser { background-color: %1; }").arg(doc->background_color.name()));
+
+ document = std::move(doc);
}
else if(mime.startsWith("text/html")) {
document = std::make_unique<QTextDocument>();