Readd the decoration reloading code when compositing settings are

changed that I accidently removed in r894182.

svn path=/trunk/KDE/kdebase/workspace/; revision=898166
icc-effect-5.14.5
Lucas Murray 2008-12-17 15:30:50 +00:00
parent 8e6d18f7b3
commit 5f3b538cde
1 changed files with 31 additions and 1 deletions

View File

@ -576,8 +576,38 @@ void KWinCompositingConfig::configChanged(bool reinitCompositing)
mKWinConfig->sync();
// Send signal to all kwin instances
QDBusMessage message = QDBusMessage::createSignal("/KWin", "org.kde.KWin",
reinitCompositing ? "reinitCompositing" : "reloadConfig");
//reinitCompositing ? "reinitCompositing" : "reloadConfig");
"reinitCompositing");
QDBusConnection::sessionBus().send(message);
//-------------
// If we added or removed shadows we need to reload decorations as well
// We have to do this separately so the settings are in sync
// HACK: This should really just reload decorations, not do a full reconfigure
// HACK: We send two messages to it's correctly synced. Code that was reverted in r894182 was better
message = QDBusMessage::createSignal("/KWin", "org.kde.KWin",
//reinitCompositing ? "reinitCompositing" : "reloadConfig");
"reloadConfig");
QDBusConnection::sessionBus().send(message);
KConfigGroup effectConfig;
effectConfig = KConfigGroup( mTmpConfig, "Compositing" );
bool enabledBefore = effectConfig.readEntry( "Enabled", mDefaultPrefs.enableCompositing() );
effectConfig = KConfigGroup( mKWinConfig, "Compositing" );
bool enabledAfter = effectConfig.readEntry( "Enabled", mDefaultPrefs.enableCompositing() );
effectConfig = KConfigGroup( mTmpConfig, "Plugins" );
bool shadowBefore = effectEnabled( "shadow", effectConfig );
effectConfig = KConfigGroup( mKWinConfig, "Plugins" );
bool shadowAfter = effectEnabled( "shadow", effectConfig );
if( enabledBefore != enabledAfter || shadowBefore != shadowAfter )
{
message = QDBusMessage::createMethodCall( "org.kde.kwin", "/KWin", "org.kde.KWin", "reconfigure" );
QDBusConnection::sessionBus().send( message );
}
}