summaryrefslogtreecommitdiffstats
path: root/kcontrol/kicker/menutab_impl.cpp
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-01-17 14:34:51 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-01-17 14:34:51 -0600
commita0d0b876b6447c5be26a50a0b295e91cd95a8ceb (patch)
treed8d5ddf687d96525743613a38c280fb8b4cc4706 /kcontrol/kicker/menutab_impl.cpp
parent18f6f27f9f340d56b12b8f7bc87ae410d595d1b1 (diff)
downloadtdebase-a0d0b876b6447c5be26a50a0b295e91cd95a8ceb.tar.gz
tdebase-a0d0b876b6447c5be26a50a0b295e91cd95a8ceb.zip
Fix taskbar configuration issues
Fix Kicker menu button layout in Deep Buttons mode
Diffstat (limited to 'kcontrol/kicker/menutab_impl.cpp')
-rw-r--r--kcontrol/kicker/menutab_impl.cpp33
1 files changed, 29 insertions, 4 deletions
diff --git a/kcontrol/kicker/menutab_impl.cpp b/kcontrol/kicker/menutab_impl.cpp
index 35ebdd6af..63adf48d5 100644
--- a/kcontrol/kicker/menutab_impl.cpp
+++ b/kcontrol/kicker/menutab_impl.cpp
@@ -36,6 +36,7 @@
#include <kmessagebox.h>
#include <knuminput.h>
#include <kstandarddirs.h>
+#include <kfontrequester.h>
#include <kicondialog.h>
#include <kiconloader.h>
@@ -198,6 +199,8 @@ void MenuTab::menuStyleChanged()
void MenuTab::save()
{
+ bool forceRestart = false;
+
KSharedConfig::Ptr c = KSharedConfig::openConfig(KickerConfig::the()->configName());
c->setGroup("menus");
@@ -226,19 +229,37 @@ void MenuTab::save()
bool kmenusetting = m_comboMenuStyle->currentItem()==1;
bool oldkmenusetting = c->readBoolEntry("LegacyKMenu", true);
+ c->setGroup("KMenu");
+ bool oldmenutextenabledsetting = c->readBoolEntry("ShowText", true);
+ TQString oldmenutextsetting = c->readEntry("Text", "");
+
+ c->setGroup("buttons");
+ TQFont oldmenufontsetting = c->readFontEntry("Font");
+
c->writeEntry("LegacyKMenu", kmenusetting);
c->writeEntry("OpenOnHover", m_openOnHover->isChecked());
c->sync();
- if (kmenusetting != oldkmenusetting)
- DCOPRef ("kicker", "default").call("restart()");
+ if (kmenusetting != oldkmenusetting) {
+ forceRestart = true;
+ }
+ if (kcfg_ShowKMenuText->isChecked() != oldmenutextenabledsetting) {
+ forceRestart = true;
+ }
+ if (kcfg_KMenuText->text() != oldmenutextsetting) {
+ forceRestart = true;
+ }
+ if (kcfg_ButtonFont->font() != oldmenufontsetting) {
+ forceRestart = true;
+ }
c->setGroup("KMenu");
bool sidepixmapsetting = kcfg_UseSidePixmap->isChecked();
bool oldsidepixmapsetting = c->readBoolEntry("UseSidePixmap", true);
- if (sidepixmapsetting != oldsidepixmapsetting)
- DCOPRef ("kicker", "default").call("restart()");
+ if (sidepixmapsetting != oldsidepixmapsetting) {
+ forceRestart = true;
+ }
// Save KMenu settings
c->setGroup("KMenu");
@@ -253,6 +274,10 @@ void MenuTab::save()
config->sync();
if (m_kmenu_button_changed == true) {
+ forceRestart = true;
+ }
+
+ if (forceRestart) {
DCOPRef ("kicker", "default").call("restart()");
}
}