For kdisplayPalleteChanged signals, emit themeChanged() after updating

plasma color scheme, not simultaneously.

svn path=/trunk/KDE/kdelibs/; revision=902575
This commit is contained in:
Andrew Lake 2008-12-28 17:50:32 +00:00
parent 66bb0f6bda
commit fc4ef631d4

View File

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