From 78e1dc3199ff8408ea7e297ff5f985ee29938ea8 Mon Sep 17 00:00:00 2001 From: Jon Bergli Heier Date: Thu, 24 Dec 2009 05:07:09 +0100 Subject: Check for and create the config directory if necessary. --- walls_conf.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/walls_conf.c b/walls_conf.c index 7ef3a8d..9eb4fdc 100644 --- a/walls_conf.c +++ b/walls_conf.c @@ -1,9 +1,13 @@ +#include + +#include #include "walls_conf.h" GKeyFile *keyfile = NULL; void conf_open() { gchar *filename; + gchar *confdir; GError *error = NULL; keyfile = g_key_file_new(); @@ -13,9 +17,14 @@ void conf_open() { } filename = g_strdup_printf("%s/walls/config", g_get_user_config_dir()); + confdir = g_path_get_dirname(filename); + if(g_access(confdir, F_OK) == -1) { + g_mkdir_with_parents(confdir, 0700); + } + g_free(confdir); if(!g_key_file_load_from_file(keyfile, filename, G_KEY_FILE_KEEP_COMMENTS | G_KEY_FILE_KEEP_TRANSLATIONS, &error)) { - g_warning("%s", error->message); + g_warning("Can't read config: %s", error->message); g_error_free(error); } @@ -29,7 +38,7 @@ gint conf_get_int(const gchar *group_name, const gchar *key, gint _default) { ret = g_key_file_get_integer(keyfile, group_name, key, &error); if(ret == 0) { - g_warning("%s", error->message); + g_warning("Can't get key from config: %s", error->message); g_error_free(error); return _default; } -- cgit v1.2.3 From 6604eee92ac1fe6ac07a098fe94bf640e6de023e Mon Sep 17 00:00:00 2001 From: Jon Bergli Heier Date: Thu, 24 Dec 2009 05:15:34 +0100 Subject: MTime, Image::Width and Image::Height are now added properly to generated thumbnails. NOTE: The thumbnail code doesn't yet check MTime when loading thumbnails. --- thumbnails.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/thumbnails.c b/thumbnails.c index d669c99..e88c19d 100644 --- a/thumbnails.c +++ b/thumbnails.c @@ -37,7 +37,7 @@ GdkPixbuf *get_thumbnail(const gchar *filepath) { gint win_width, win_height, img_width, img_height, width, height; gdouble scalex, scaley, width_ratio, height_ratio, max_ratio; GError *error = NULL; - gchar *thumbname; + gchar *thumbname, *mtime, *width_s, *height_s; thumbname = get_wall_thumb_name(filepath); @@ -76,15 +76,23 @@ GdkPixbuf *get_thumbnail(const gchar *filepath) { g_object_unref(pb); error = NULL; + mtime = g_strdup_printf("%d", get_mtime(filepath)); + width_s = g_strdup_printf("%d", img_width); + height_s = g_strdup_printf("%d", img_height); if(!gdk_pixbuf_save(pb2, thumbname, "png", &error, "tEXt::Thumb::URI", filepath, - "tEXt::Thumb::MTime", get_mtime(filepath), + "tEXt::Thumb::MTime", mtime, "tEXt::Software", "walls", + "tEXt::Thumb::Image::Width", width_s, + "tEXt::Thumb::Image::Height", height_s, NULL)) { g_warning("%s", error->message); g_error_free(error); } + g_free(mtime); + g_free(width_s); + g_free(height_s); g_free(thumbname); return pb2; -- cgit v1.2.3 From f6e2ba790e189721549da70219a85f7cfa769742 Mon Sep 17 00:00:00 2001 From: Jon Bergli Heier Date: Thu, 24 Dec 2009 05:25:06 +0100 Subject: Use browse as selection mode for the thumbnail icon view. --- walls.ui | 1 + 1 file changed, 1 insertion(+) diff --git a/walls.ui b/walls.ui index bc9a71e..ff166ca 100644 --- a/walls.ui +++ b/walls.ui @@ -134,6 +134,7 @@ True True + browse horizontal -- cgit v1.2.3