diff --git a/effects/CMakeLists.txt b/effects/CMakeLists.txt
index f67d7763a9..263d77a9fe 100644
--- a/effects/CMakeLists.txt
+++ b/effects/CMakeLists.txt
@@ -106,6 +106,7 @@ kconfig_add_kcfg_files(kwin4_effect_builtins_sources
coverswitch/coverswitchconfig.kcfgc
desktopgrid/desktopgridconfig.kcfgc
diminactive/diminactiveconfig.kcfgc
+ fallapart/fallapartconfig.kcfgc
flipswitch/flipswitchconfig.kcfgc
glide/glideconfig.kcfgc
lookingglass/lookingglassconfig.kcfgc
diff --git a/effects/fallapart/fallapart.cpp b/effects/fallapart/fallapart.cpp
index 260a32b764..011b131f7c 100644
--- a/effects/fallapart/fallapart.cpp
+++ b/effects/fallapart/fallapart.cpp
@@ -19,9 +19,10 @@ along with this program. If not, see .
*********************************************************************/
#include "fallapart.h"
+// KConfigSkeleton
+#include "fallapartconfig.h"
#include
#include
-#include
namespace KWin
{
@@ -40,8 +41,8 @@ FallApartEffect::FallApartEffect()
void FallApartEffect::reconfigure(ReconfigureFlags)
{
- KConfigGroup conf = effects->effectConfig(QStringLiteral("FallApart"));
- blockSize = qBound(1, conf.readEntry("BlockSize", 40), 100000);
+ FallApartConfig::self()->read();
+ blockSize = FallApartConfig::blockSize();
}
void FallApartEffect::prePaintScreen(ScreenPrePaintData& data, int time)
diff --git a/effects/fallapart/fallapart.kcfg b/effects/fallapart/fallapart.kcfg
new file mode 100644
index 0000000000..5f531857f9
--- /dev/null
+++ b/effects/fallapart/fallapart.kcfg
@@ -0,0 +1,14 @@
+
+
+
+
+
+ 40
+ 1
+ 100000
+
+
+
diff --git a/effects/fallapart/fallapartconfig.kcfgc b/effects/fallapart/fallapartconfig.kcfgc
new file mode 100644
index 0000000000..1735fb7e7f
--- /dev/null
+++ b/effects/fallapart/fallapartconfig.kcfgc
@@ -0,0 +1,5 @@
+File=fallapart.kcfg
+ClassName=FallApartConfig
+NameSpace=KWin
+Singleton=true
+Mutators=true