fix deco config updates

- B2 linked to the wrong slot (instead of changed signal)
- border size change was not written (for B2, Laptop etc)
- Aurorae didn't recreate decos when required

BUG: 325946
FIXED-IN: 4.11.3
REVIEW: 113229
icc-effect-5.14.5
Thomas Lübking 2013-10-13 15:52:01 +02:00
parent d249075b5e
commit 3692549170
5 changed files with 12 additions and 13 deletions

View File

@ -161,7 +161,7 @@ bool AuroraeFactory::reset(unsigned long changed)
if (changed & SettingFont){
emit titleFontChanged();
}
if (changed & SettingCompositing) {
if (changed == SettingCompositing) {
return false;
}
const KConfig conf("auroraerc");
@ -180,7 +180,7 @@ bool AuroraeFactory::reset(unsigned long changed)
m_theme->setButtonSize((KDecorationDefines::BorderSize)themeGroup.readEntry<int>("ButtonSize", KDecorationDefines::BorderNormal));
}
emit configChanged();
return false; // need hard reset
return changed & (SettingDecoration | SettingButtons | SettingBorder); // need hard reset
}
bool AuroraeFactory::supports(Ability ability) const

View File

@ -106,14 +106,10 @@ B2Config::B2Config(KConfig *conf, QWidget *parent)
load(cg);
// Ensure we track user changes properly
connect(cbColorBorder, SIGNAL(clicked()),
this, SLOT(slotSelectionChanged()));
connect(showGrabHandleCb, SIGNAL(clicked()),
this, SLOT(slotSelectionChanged()));
connect(autoMoveTitlebarCb, SIGNAL(clicked()),
this, SLOT(slotSelectionChanged()));
connect(menuDblClickOp, SIGNAL(activated(int)),
this, SLOT(slotSelectionChanged()));
connect(cbColorBorder, SIGNAL(clicked()), SIGNAL(changed()));
connect(showGrabHandleCb, SIGNAL(clicked()), SIGNAL(changed()));
connect(autoMoveTitlebarCb, SIGNAL(clicked()), SIGNAL(changed()));
connect(menuDblClickOp, SIGNAL(activated(int)), SIGNAL(changed()));
// Make the widgets visible in kwindecoration
gb->show();
}

View File

@ -44,6 +44,9 @@ KWinAuroraeConfigForm::KWinAuroraeConfigForm(QWidget* parent)
: QWidget(parent)
{
setupUi(this);
connect(borderSizesCombo, SIGNAL(currentIndexChanged(int)), SIGNAL(changed()));
connect(buttonSizesCombo, SIGNAL(currentIndexChanged(int)), SIGNAL(changed()));
connect(closeWindowsDoubleClick, SIGNAL(clicked()), SIGNAL(changed()));
}
void KWinAuroraeConfigForm::enableNoSideBorderSupport(bool enable)

View File

@ -35,6 +35,8 @@ class KWinAuroraeConfigForm : public QWidget, public Ui::KWinAuroraeConfigForm
public:
explicit KWinAuroraeConfigForm(QWidget* parent);
void enableNoSideBorderSupport(bool enable);
Q_SIGNALS:
void changed();
};
class KWinDecorationConfigForm : public QWidget, public Ui::KWinDecorationConfigForm

View File

@ -444,9 +444,7 @@ void KWinDecorationModule::slotConfigureDecoration()
delete configDialog;
}
if (reload) {
// Send signal to all kwin instances
QDBusMessage message = QDBusMessage::createSignal("/KWin", "org.kde.KWin", "reloadConfig");
QDBusConnection::sessionBus().send(message);
save();
}
}