[Goodies-commits] r3276 - ristretto/trunk/src
Stephan Arts
stephan at xfce.org
Sun Sep 30 10:47:40 CEST 2007
Author: stephan
Date: 2007-09-30 08:47:40 +0000 (Sun, 30 Sep 2007)
New Revision: 3276
Modified:
ristretto/trunk/src/main.c
ristretto/trunk/src/main_window.c
ristretto/trunk/src/navigator.c
ristretto/trunk/src/navigator.h
Log:
Add an 'is_album' flag (so ristretto knows when to clean up the navigator)
Modified: ristretto/trunk/src/main.c
===================================================================
--- ristretto/trunk/src/main.c 2007-09-29 14:07:29 UTC (rev 3275)
+++ ristretto/trunk/src/main.c 2007-09-30 08:47:40 UTC (rev 3276)
@@ -106,6 +106,7 @@
const gchar *filename = g_dir_read_name(dir);
while (filename)
{
+ rstto_navigator_set_is_album(navigator, FALSE);
gchar *path_name = g_strconcat(path_string, "/", filename, NULL);
ThunarVfsPath *file_path = thunar_vfs_path_new(path_name, NULL);
if (file_path)
@@ -133,6 +134,7 @@
{
GDir *dir = g_dir_open(argv[n], 0, NULL);
const gchar *filename = g_dir_read_name(dir);
+ rstto_navigator_set_is_album(navigator, TRUE);
while (filename)
{
gchar *path_name = g_strconcat(argv[n], "/", filename, NULL);
Modified: ristretto/trunk/src/main_window.c
===================================================================
--- ristretto/trunk/src/main_window.c 2007-09-29 14:07:29 UTC (rev 3275)
+++ ristretto/trunk/src/main_window.c 2007-09-30 08:47:40 UTC (rev 3276)
@@ -895,6 +895,11 @@
gchar *file_media = thunar_vfs_mime_info_get_media(info->mime_info);
if(!strcmp(file_media, "image"))
{
+ if(rstto_navigator_get_is_album(window->priv->navigator));
+ {
+ rstto_navigator_clear(window->priv->navigator);
+ rstto_navigator_set_is_album(window->priv->navigator, FALSE);
+ }
RsttoNavigatorEntry *entry = rstto_navigator_entry_new(info);
rstto_navigator_add (window->priv->navigator, entry);
gchar *uri = thunar_vfs_path_dup_uri(info->path);
@@ -932,6 +937,7 @@
if(response == GTK_RESPONSE_OK)
{
rstto_navigator_clear(window->priv->navigator);
+ rstto_navigator_set_is_album(window->priv->navigator, TRUE);
const gchar *dir_name = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
GDir *dir = g_dir_open(dir_name, 0, NULL);
if (dir)
@@ -979,12 +985,18 @@
{
if(strcmp(thunar_vfs_mime_info_get_name(info->mime_info), "inode/directory"))
{
+ if(rstto_navigator_get_is_album(window->priv->navigator));
+ {
+ rstto_navigator_clear(window->priv->navigator);
+ rstto_navigator_set_is_album(window->priv->navigator, FALSE);
+ }
RsttoNavigatorEntry *entry = rstto_navigator_entry_new(info);
rstto_navigator_add (window->priv->navigator, entry);
}
else
{
rstto_navigator_clear(window->priv->navigator);
+ rstto_navigator_set_is_album(window->priv->navigator, TRUE);
gchar *dir_path = thunar_vfs_path_dup_string(info->path);
GDir *dir = g_dir_open(dir_path, 0, NULL);
const gchar *filename = g_dir_read_name(dir);
Modified: ristretto/trunk/src/navigator.c
===================================================================
--- ristretto/trunk/src/navigator.c 2007-09-29 14:07:29 UTC (rev 3275)
+++ ristretto/trunk/src/navigator.c 2007-09-30 08:47:40 UTC (rev 3276)
@@ -442,6 +442,20 @@
}
}
+void
+rstto_navigator_set_is_album (RsttoNavigator *navigator, gboolean album)
+{
+ navigator->album = album;
+}
+
+gboolean
+rstto_navigator_get_is_album (RsttoNavigator *navigator)
+{
+ return navigator->album;
+}
+
+/* Callbacks */
+
static gboolean
cb_rstto_navigator_running(RsttoNavigator *navigator)
{
@@ -685,3 +699,4 @@
{
return entry->exif_data;
}
+
Modified: ristretto/trunk/src/navigator.h
===================================================================
--- ristretto/trunk/src/navigator.h 2007-09-29 14:07:29 UTC (rev 3275)
+++ ristretto/trunk/src/navigator.h 2007-09-30 08:47:40 UTC (rev 3276)
@@ -50,6 +50,7 @@
ThunarVfsPath *path;
GList *file_list;
GList *file_iter;
+ gboolean album;
gint old_position;
gboolean running;
gint timeout;
@@ -100,6 +101,10 @@
void
rstto_navigator_clear (RsttoNavigator *navigator);
void
+rstto_navigator_set_is_album (RsttoNavigator *navigator, gboolean album);
+gboolean
+rstto_navigator_get_is_album (RsttoNavigator *navigator);
+void
rstto_navigator_set_entry_rotation (RsttoNavigator *navigator, RsttoNavigatorEntry *entry, GdkPixbufRotation rotation);
RsttoNavigatorEntry *
More information about the Goodies-commits
mailing list