diff --git a/theme.cpp b/theme.cpp index d9c19e2e0..2c207a8b3 100644 --- a/theme.cpp +++ b/theme.cpp @@ -211,6 +211,7 @@ void ThemePrivate::colorsChanged() discardCache(true); colorScheme = KColorScheme(QPalette::Active, KColorScheme::Window, colors); buttonColorScheme = KColorScheme(QPalette::Active, KColorScheme::Button, colors); + emit q->themeChanged(); } class ThemeSingleton @@ -336,15 +337,11 @@ void Theme::setThemeName(const QString &themeName) d->defaultWallpaperWidth = cg.readEntry("defaultWidth", DEFAULT_WALLPAPER_WIDTH); d->defaultWallpaperHeight = cg.readEntry("defaultHeight", DEFAULT_WALLPAPER_HEIGHT); - disconnect(KGlobalSettings::self(), SIGNAL(kdisplayPaletteChanged()), - this, SIGNAL(themeChanged())); disconnect(KGlobalSettings::self(), SIGNAL(kdisplayPaletteChanged()), this, SLOT(colorsChanged())); if (colorsFile.isEmpty()) { d->colors = 0; - connect(KGlobalSettings::self(), SIGNAL(kdisplayPaletteChanged()), - this, SIGNAL(themeChanged())); connect(KGlobalSettings::self(), SIGNAL(kdisplayPaletteChanged()), this, SLOT(colorsChanged())); } else {