]> cloud.milkyroute.net Git - dolphin.git/commitdiff
- Write the settings to the disk as soon as "Apply" or "OK" has been pressed inside...
authorPeter Penz <peter.penz19@gmail.com>
Sat, 21 Mar 2009 11:49:10 +0000 (11:49 +0000)
committerPeter Penz <peter.penz19@gmail.com>
Sat, 21 Mar 2009 11:49:10 +0000 (11:49 +0000)
- Assure that the settings are saved in the DolphinPart destructor for settings that are changed outside the settings dialog (e. g. by using Ctrl + mouse wheel for adjusting the icon size).

Thanks to Frank Reininghaus and David Faure for the analyses.

CCBUG: 175085

svn path=/trunk/KDE/kdebase/apps/; revision=942194

src/dolphinpart.cpp
src/settings/behaviorsettingspage.cpp
src/settings/columnviewsettingspage.cpp
src/settings/contextmenusettingspage.cpp
src/settings/detailsviewsettingspage.cpp
src/settings/iconsviewsettingspage.cpp
src/settings/navigationsettingspage.cpp
src/settings/servicessettingspage.cpp
src/settings/startupsettingspage.cpp
src/settings/statusbarsettingspage.cpp

index 40a62e8442f728e0c1b0066d2d4131bb90251474..c6076cc371c032015b4c79386c1f7e34a013edb4 100644 (file)
@@ -18,7 +18,6 @@
 */
 
 #include "dolphinpart.h"
-#include <kdebug.h>
 #include "dolphinviewactionhandler.h"
 #include "dolphinsortfilterproxymodel.h"
 #include "dolphinview.h"
@@ -44,6 +43,8 @@
 #include <knewmenu.h>
 #include <kmenu.h>
 
+#include "settings/dolphinsettings.h"
+
 #include <QActionGroup>
 #include <QApplication>
 #include <QClipboard>
@@ -140,6 +141,7 @@ DolphinPart::DolphinPart(QWidget* parentWidget, QObject* parent, const QVariantL
 
 DolphinPart::~DolphinPart()
 {
+    DolphinSettings::instance().save();
     DolphinNewMenuObserver::instance().detach(m_newMenu);
     delete m_dirLister;
 }
index 8f156933b8a6a410d1ce1f6929e56ec8179324e4..144cc3f2f01d24e5ca317510739e5abb961c9045 100644 (file)
@@ -138,6 +138,7 @@ void BehaviorSettingsPage::applySettings()
     settings->setRenameInline(m_renameInline->isChecked());
     settings->setShowToolTips(m_showToolTips->isChecked());
     settings->setShowSelectionToggle(m_showSelectionToggle->isChecked());
+    settings->writeConfig();
 }
 
 void BehaviorSettingsPage::restoreDefaults()
index 78a987df269cc2975dee3a990043ae4cdd4431ac..828d812f494352698abb15be0e567c5961df3534 100644 (file)
@@ -116,6 +116,8 @@ void ColumnViewSettingsPage::applySettings()
     // TODO:
     //const int columnWidth = 150 + (m_columnWidthSlider->value() * 50);
     //settings->setColumnWidth(columnWidth);
+
+    settings->writeConfig();
 }
 
 void ColumnViewSettingsPage::restoreDefaults()
index 06072ecbec180f066d49974bb7a7dd06149d7302..14b4286f9c17d6791a583a60df3e96988016256b 100644 (file)
@@ -68,6 +68,7 @@ void ContextMenuSettingsPage::applySettings()
 
     GeneralSettings* settings = DolphinSettings::instance().generalSettings();
     settings->setShowCopyMoveMenu(m_showCopyMoveMenu->isChecked());
+    settings->writeConfig();
 }
 
 void ContextMenuSettingsPage::restoreDefaults()
index 35b617fa4a7aa6f48b22c470abea8b9ab0481855..ee89ba68c650811359f858f8fea63435d9b6f910 100644 (file)
@@ -109,6 +109,8 @@ void DetailsViewSettingsPage::applySettings()
     settings->setFontWeight(font.weight());
 
     settings->setExpandableFolders(m_expandableFolders->isChecked());
+
+    settings->writeConfig();
 }
 
 void DetailsViewSettingsPage::restoreDefaults()
index 90c08ee35ec2000eb9f082afffb5fbe918b1cd5c..306834910840a3ca6517bb665ba45c486ff4e8cd 100644 (file)
@@ -186,6 +186,8 @@ void IconsViewSettingsPage::applySettings()
     } else {
         settings->setGridSpacing(GridSpacingBase + (index - 1) * GridSpacingInc);
     }
+
+    settings->writeConfig();
 }
 
 void IconsViewSettingsPage::restoreDefaults()
index b6d3e764484a34466bb17efbea217f93d3e1f953..31f4d47c0b02706275056a0ded81438bf26ee747 100644 (file)
@@ -90,6 +90,8 @@ void NavigationSettingsPage::applySettings()
     GeneralSettings* settings = DolphinSettings::instance().generalSettings();
     settings->setBrowseThroughArchives(m_openArchivesAsFolder->isChecked());
     settings->setAutoExpandFolders(m_autoExpandFolders->isChecked());
+
+    settings->writeConfig();
 }
 
 void NavigationSettingsPage::restoreDefaults()
index 18f93dfa39b8c7498cbc81aa3874b1b2d2186a2a..a58df2096afb025f9f9b3215c264377d782a685e 100644 (file)
@@ -70,6 +70,8 @@ void ServicesSettingsPage::applySettings()
         const QString service = item->data(Qt::UserRole).toString();
         showGroup.writeEntry(service, show);
     }
+
+    showGroup.sync();
 }
 
 void ServicesSettingsPage::restoreDefaults()
index fd79debc3803a20739e44c1d740a6b5ab3d0806b..1e1c6ed87f1554168b881a539082b57c761a0db7 100644 (file)
@@ -126,6 +126,8 @@ void StartupSettingsPage::applySettings()
     settings->setEditableUrl(m_editableUrl->isChecked());
     settings->setShowFullPath(m_showFullPath->isChecked());
     settings->setFilterBar(m_filterBar->isChecked());
+
+    settings->writeConfig();
 }
 
 void StartupSettingsPage::restoreDefaults()
index 241c159c56a26ea8f1c249601d6a4833814eaba8..74a453eff55338e0ce8b0c8a48363d7c071173ff 100644 (file)
@@ -62,6 +62,7 @@ void StatusBarSettingsPage::applySettings()
     GeneralSettings* settings = DolphinSettings::instance().generalSettings();
     settings->setShowZoomSlider(m_showZoomSlider->isChecked());
     settings->setShowSpaceInfo(m_showSpaceInfo->isChecked());
+    settings->writeConfig();
 }
 
 void StatusBarSettingsPage::restoreDefaults()