From 7f0e1317bfd97d8d70cecd57dfe0b34e661745e6 Mon Sep 17 00:00:00 2001 From: taj-ny <79316397+taj-ny@users.noreply.github.com> Date: Sun, 12 Jan 2025 15:01:26 +0100 Subject: [PATCH] kcm: add button for choosing static blur image --- src/kcm/blur_config.cpp | 15 +++++++++++++++ src/kcm/blur_config.h | 3 +++ src/kcm/blur_config.ui | 7 +++++++ 3 files changed, 25 insertions(+) diff --git a/src/kcm/blur_config.cpp b/src/kcm/blur_config.cpp index c4c00a634..75875e68a 100644 --- a/src/kcm/blur_config.cpp +++ b/src/kcm/blur_config.cpp @@ -13,6 +13,9 @@ #include #include "kwineffects_interface.h" +#include +#include + namespace KWin { @@ -25,6 +28,8 @@ BlurEffectConfig::BlurEffectConfig(QObject *parent, const KPluginMetaData &data) BlurConfig::instance("kwinrc"); addConfig(BlurConfig::self(), widget()); + connect(ui.staticBlurImagePicker, &QPushButton::clicked, this, &BlurEffectConfig::slotStaticBlurImagePickerClicked); + QFile about(":/effects/forceblur/kcm/about.html"); if (about.open(QIODevice::ReadOnly)) { const auto html = about.readAll() @@ -38,6 +43,16 @@ BlurEffectConfig::~BlurEffectConfig() { } +void BlurEffectConfig::slotStaticBlurImagePickerClicked() +{ + const auto imagePath = QFileDialog::getOpenFileName(widget(), "Select image", {}, "Images (*.png *.jpg *.jpeg *.bmp)"); + if (imagePath.isNull()) { + return; + } + + ui.kcfg_FakeBlurImage->setText(imagePath); +} + void BlurEffectConfig::save() { KCModule::save(); diff --git a/src/kcm/blur_config.h b/src/kcm/blur_config.h index c14c8afe5..b0850f845 100644 --- a/src/kcm/blur_config.h +++ b/src/kcm/blur_config.h @@ -22,6 +22,9 @@ class BlurEffectConfig : public KCModule void save() override; +private slots: + void slotStaticBlurImagePickerClicked(); + private: ::Ui::BlurEffectConfig ui; }; diff --git a/src/kcm/blur_config.ui b/src/kcm/blur_config.ui index 502e0294f..d671c2ec9 100644 --- a/src/kcm/blur_config.ui +++ b/src/kcm/blur_config.ui @@ -589,6 +589,13 @@ the background, resulting in much lower GPU usage. + + + + + + +