File new-beagle-autostart.diff of Package kerry

--- kerry/src/Makefile.am	2007/09/20 14:20:40	1.1
+++ kerry/src/Makefile.am	2007/09/20 14:21:05
@@ -31,7 +31,7 @@
 kerry_la_LIBADD = -lkio -lkonq $(LIB_KDEUI) $(LIBBEAGLE_LIBADD) $(GLIB_LIBADD) $(LIB_KABC) 
 
 autostartdir = $(datadir)/autostart
-autostart_DATA = kerry.autostart.desktop beagled.desktop
+autostart_DATA = kerry.autostart.desktop
 
 shutdowndir = $(prefix)/shutdown
 shutdown_SCRIPTS = beagled-shutdown.sh
--- kerry/src/kcm/indexing.cpp	2007/09/20 12:33:38	1.3
+++ kerry/src/kcm/indexing.cpp	2007/09/20 14:47:46
@@ -163,9 +163,9 @@
         _startBeagle = true;
     }
     else {
-        KConfig *config = new KConfig("kerryrc");
-        config->setGroup("Beagle");
-        _startBeagle = config->readBoolEntry("AutoStart",false);
+        KConfig *config = new KConfig(QDir::home().absPath()+"/.config/autostart/beagled-autostart.desktop");
+        config->setDesktopGroup();
+        _startBeagle = config->readBoolEntry("X-GNOME-Autostart-enabled",true);
         delete config;
 
         readIndexConfig(_indexHomeDir, _indexOnBattery, roots, excludeTypes, excludeValues);
@@ -199,12 +199,27 @@
 
 void KCMBeagleIndexing::save()
 {
-    KConfig *config = new KConfig("kerryrc");
-    config->setGroup("Beagle");
-    config->writeEntry("AutoStart",startBeagle->isChecked());
-    config->sync();
-    delete config;
-
+    if (!startBeagle->isChecked()) {
+      QDir configDir(QDir::home().absPath()+"/.config");
+      if (!configDir.exists())
+        configDir.mkdir(QDir::home().absPath()+"/.config");
+
+      QDir configAutostartDir(QDir::home().absPath()+"/.config/autostart");
+      if (!configAutostartDir.exists())
+        configAutostartDir.mkdir(QDir::home().absPath()+"/.config/autostart");
+
+      KConfig *config = new KConfig(QDir::home().absPath()+"/.config/autostart/beagled-autostart.desktop");
+      config->setDesktopGroup();
+      config->writeEntry("Hidden",true);
+      config->writeEntry("X-GNOME-Autostart-enabled",false);
+      config->sync();
+      delete config;
+    }
+    else {
+      QFile file( QDir::home().absPath()+"/.config/autostart/beagled-autostart.desktop" );
+      if (file.exists())
+        file.remove();
+    }
 
     QStringList roots;
     for (int i=0;i<index_list->childCount();i++)
openSUSE Build Service is sponsored by