diff -ru Vanilla/src/yelp-bookmarks.c Mine/src/yelp-bookmarks.c
--- Vanilla/src/yelp-bookmarks.c	2008-09-22 20:26:17.000000000 +0300
+++ Mine/src/yelp-bookmarks.c	2009-03-02 20:55:17.000000000 +0200
@@ -48,10 +48,12 @@
 #define COL_HEADER 3
 #define TOC_PATH "ui/menubar/BookmarksMenu/BookmarksTOC"
 #define DOC_PATH "ui/menubar/BookmarksMenu/BookmarksDOC"
-#define BK_CONFIG_WIDTH  "/yelp/Bookmarks/width"
-#define BK_CONFIG_HEIGHT "/yelp/Bookmarks/height"
-#define BK_CONFIG_WIDTH_DEFAULT  "360"
-#define BK_CONFIG_HEIGHT_DEFAULT "360"
+#define BK_CONFIG_PATH   "/.gnome2/yelp"
+#define BK_CONFIG_BK_GROUP "Bookmarks"
+#define BK_CONFIG_WIDTH  "width"
+#define BK_CONFIG_HEIGHT "height"
+#define BK_CONFIG_WIDTH_DEFAULT  360
+#define BK_CONFIG_HEIGHT_DEFAULT 360
 
 static GSList *windows;
 static GtkTreeStore *actions_store;
@@ -610,6 +612,9 @@
     GtkTreeSelection *select;
     GtkCellRenderer *renderer;
     gint width, height;
+    GKeyFile *keyfile;
+    GError *config_error = NULL;
+    gchar *config_path;
     
     if (!bookmarks_dialog) {
 	glade = glade_xml_new (DATADIR "/yelp/ui/yelp.glade",
@@ -623,10 +628,36 @@
 
 	bookmarks_dialog = glade_xml_get_widget (glade, "bookmarks_dialog");
 	view = GTK_TREE_VIEW (glade_xml_get_widget (glade, "bookmarks_view"));
-	width = gnome_config_get_int (BK_CONFIG_WIDTH
-				      "=" BK_CONFIG_WIDTH_DEFAULT);
-	height = gnome_config_get_int (BK_CONFIG_HEIGHT
-				       "=" BK_CONFIG_HEIGHT_DEFAULT);
+
+	keyfile = g_key_file_new();
+	config_path = g_strconcat (g_get_home_dir(), BK_CONFIG_PATH, NULL);
+
+	if( !g_key_file_load_from_file (keyfile, config_path,
+				G_KEY_FILE_KEEP_COMMENTS | G_KEY_FILE_KEEP_TRANSLATIONS,
+				&config_error) )
+	{
+	    g_warning ("Failed to load config file: %s\n", config_error->message);
+	    g_error_free (config_error);
+
+	    width = BK_CONFIG_WIDTH_DEFAULT;
+	    height = BK_CONFIG_HEIGHT_DEFAULT;
+	}
+	else
+	{
+	    width = g_key_file_get_integer (keyfile, BK_CONFIG_BK_GROUP,
+				BK_CONFIG_WIDTH, NULL);
+	    height = g_key_file_get_integer (keyfile, BK_CONFIG_BK_GROUP,
+				BK_CONFIG_HEIGHT, NULL);
+
+	    if (width == 0)
+		    width = BK_CONFIG_WIDTH_DEFAULT;
+	    if (height == 0)
+		    height = BK_CONFIG_HEIGHT_DEFAULT;
+	}
+
+	g_free (config_path);
+	g_key_file_free (keyfile); 
+
 	gtk_window_set_default_size (GTK_WINDOW (bookmarks_dialog), 
 				     width, height);
 
@@ -692,10 +723,42 @@
 			gpointer data)
 {
     gint width, height;
+    GKeyFile *keyfile;
+    gchar *config_path, *sdata;
+    GError *config_error = NULL;
+    gsize config_size;
+
     gtk_window_get_size (GTK_WINDOW (widget), &width, &height);
-    gnome_config_set_int (BK_CONFIG_WIDTH, width);
-    gnome_config_set_int (BK_CONFIG_HEIGHT, height);
-    gnome_config_sync ();
+
+    keyfile = g_key_file_new ();
+    config_path = g_strconcat (g_get_home_dir (), BK_CONFIG_PATH, NULL);
+
+    if( !g_key_file_load_from_file (keyfile, config_path,
+			    G_KEY_FILE_KEEP_COMMENTS | G_KEY_FILE_KEEP_TRANSLATIONS,
+			    &config_error) )
+    {
+	g_warning ("Failed to load config file: %s\n", config_error->message);
+	g_error_free (config_error);
+    }
+    else
+    {
+	g_key_file_set_integer (keyfile, BK_CONFIG_BK_GROUP,
+		    BK_CONFIG_WIDTH, width);
+	g_key_file_set_integer (keyfile, BK_CONFIG_BK_GROUP,
+		    BK_CONFIG_HEIGHT, height);
+    }
+
+    sdata = g_key_file_to_data (keyfile, &config_size, NULL);
+
+    if ( !g_file_set_contents (config_path, sdata, config_size, &config_error) )
+    {
+	g_warning ("Failed to save config file: %s\n", config_error->message);
+	g_error_free (config_error);
+    }
+
+    g_free (sdata);
+    g_free (config_path);
+    g_key_file_free (keyfile);
 
     return FALSE;
 }
diff -ru Vanilla/src/yelp-window.c Mine/src/yelp-window.c
--- Vanilla/src/yelp-window.c	2008-09-22 20:26:17.000000000 +0300
+++ Mine/src/yelp-window.c	2009-03-02 20:25:35.000000000 +0200
@@ -53,10 +53,12 @@
 #include "yelp-search.h"
 #include "gtkentryaction.h"
 
-#define YELP_CONFIG_WIDTH          "/yelp/Geometry/width"
-#define YELP_CONFIG_HEIGHT         "/yelp/Geometry/height"
-#define YELP_CONFIG_WIDTH_DEFAULT  "600"
-#define YELP_CONFIG_HEIGHT_DEFAULT "420"
+#define YELP_CONFIG_PATH           "/.gnome2/yelp"
+#define YELP_CONFIG_GEOMETRY_GROUP "Geometry"
+#define YELP_CONFIG_WIDTH          "width"
+#define YELP_CONFIG_HEIGHT         "height"
+#define YELP_CONFIG_WIDTH_DEFAULT  600
+#define YELP_CONFIG_HEIGHT_DEFAULT 420
 
 #define BUFFER_SIZE 16384
 
@@ -488,10 +490,36 @@
 
     window->priv = YELP_WINDOW_GET_PRIVATE (window);
 
-    width = gnome_config_get_int (YELP_CONFIG_WIDTH
-				  "=" YELP_CONFIG_WIDTH_DEFAULT);
-    height = gnome_config_get_int (YELP_CONFIG_HEIGHT
-				   "=" YELP_CONFIG_HEIGHT_DEFAULT);
+    GKeyFile *keyfile = g_key_file_new();
+    GError *config_error = NULL;
+    gchar* config_path = g_strconcat( g_get_home_dir(), YELP_CONFIG_PATH, NULL);
+
+    if( !g_key_file_load_from_file (keyfile, config_path,
+			    G_KEY_FILE_KEEP_COMMENTS | G_KEY_FILE_KEEP_TRANSLATIONS,
+			    &config_error))
+    {
+	g_warning ("Failed to load config file: %s\n", config_error->message);
+	g_error_free (config_error);
+
+	width = YELP_CONFIG_WIDTH_DEFAULT;
+	height = YELP_CONFIG_HEIGHT_DEFAULT;
+    }
+    else
+    {
+	width = g_key_file_get_integer (keyfile, YELP_CONFIG_GEOMETRY_GROUP,
+			YELP_CONFIG_WIDTH, NULL);
+	height = g_key_file_get_integer (keyfile, YELP_CONFIG_GEOMETRY_GROUP,
+			YELP_CONFIG_HEIGHT, NULL);
+
+	if (width == 0)
+	    width = YELP_CONFIG_WIDTH_DEFAULT;
+	if (height == 0)
+	    height = YELP_CONFIG_HEIGHT_DEFAULT;
+    }
+
+    g_free (config_path);
+    g_key_file_free (keyfile);
+			
     gtk_window_set_default_size (GTK_WINDOW (window), width, height);
     g_signal_connect (window,
 		      "configure-event",
@@ -1730,10 +1758,43 @@
 		     gpointer           data)
 {
     gint width, height;
+    GKeyFile *keyfile;
+    GError *config_error = NULL;
+    gchar *sdata, *config_path;
+    gsize config_size;
+
     gtk_window_get_size (GTK_WINDOW (widget), &width, &height);
-    gnome_config_set_int (YELP_CONFIG_WIDTH, width);
-    gnome_config_set_int (YELP_CONFIG_HEIGHT, height);
-    gnome_config_sync ();
+
+    keyfile = g_key_file_new();
+
+    config_path = g_strconcat (g_get_home_dir(), YELP_CONFIG_PATH, NULL);
+
+    if( !g_key_file_load_from_file (keyfile, config_path,
+			    G_KEY_FILE_KEEP_COMMENTS | G_KEY_FILE_KEEP_TRANSLATIONS,
+			    &config_error) )
+    {
+	g_warning ("Failed to load config file: %s\n", config_error->message);
+	g_error_free (config_error);
+    }
+    else
+    {
+	g_key_file_set_integer (keyfile, YELP_CONFIG_GEOMETRY_GROUP,
+				YELP_CONFIG_WIDTH, width);
+	g_key_file_set_integer (keyfile, YELP_CONFIG_GEOMETRY_GROUP,
+				YELP_CONFIG_HEIGHT, height);
+    }
+
+    sdata = g_key_file_to_data (keyfile, &config_size, NULL);
+
+    if ( !g_file_set_contents (config_path, sdata, config_size, &config_error) )
+    {
+	g_warning ("Failed to save config file: %s\n", config_error->message);
+	g_error_free (config_error);
+    }
+
+    g_free (sdata);
+    g_free (config_path);
+    g_key_file_free (keyfile);
 
     return FALSE;
 }
