[evolution-patches] Patch for 42465 (shell)



This fixes a problem where a newly added shortcut would get the wrong
unread count.  (Specifically, it would get the unread count of the
folder currently displayed instead of the unread count of the folder
that was right-clicked on, when using the right-click context menu.)

-- Ettore
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/shell/ChangeLog,v
retrieving revision 1.1266
diff -u -p -r1.1266 ChangeLog
--- ChangeLog	5 May 2003 01:12:39 -0000	1.1266
+++ ChangeLog	7 May 2003 18:35:25 -0000
@@ -1,3 +1,9 @@
+2003-05-07  Ettore Perazzoli  <ettore ximian com>
+
+	* e-shell-folder-commands.c (e_shell_command_add_to_shortcut_bar):
+	Do use the supplied folder_path to determine the unread count, if
+	not NULL.
+
 2003-05-02  Not Zed  <NotZed Ximian com>
 
 	* e-shell-about-box.c (text[]): grepped changelogs and added all
Index: e-shell-folder-commands.c
===================================================================
RCS file: /cvs/gnome/evolution/shell/e-shell-folder-commands.c,v
retrieving revision 1.56
diff -u -p -r1.56 e-shell-folder-commands.c
--- e-shell-folder-commands.c	21 Apr 2003 19:54:53 -0000	1.56
+++ e-shell-folder-commands.c	7 May 2003 18:35:25 -0000
@@ -621,8 +621,9 @@ e_shell_command_add_to_shortcut_bar (ESh
 	EShortcuts *shortcuts;
 	EStorageSet *storage_set;
 	EFolder *folder;
-	int group_num;
 	char *uri;
+	const char *path;
+	int group_num;
 	int unread_count;
 
 	g_return_if_fail (shell != NULL);
@@ -634,12 +635,15 @@ e_shell_command_add_to_shortcut_bar (ESh
 	shortcuts = e_shell_get_shortcuts (shell);
 	group_num = e_shell_view_get_current_shortcuts_group_num (shell_view);
 
-	if (folder_path == NULL)
+	if (folder_path == NULL) {
 		uri = g_strdup (e_shell_view_get_current_uri (shell_view));
-	else
+		path = e_shell_view_get_current_path (shell_view);
+	} else {
 		uri = g_strconcat (E_SHELL_URI_PREFIX, folder_path, NULL);
+		path = folder_path;
+	}
 
-	unread_count = get_folder_unread (shell, e_shell_view_get_current_path (shell_view));
+	unread_count = get_folder_unread (shell, path);
 
 	storage_set = e_shell_get_storage_set (shell);
 	folder = e_storage_set_get_folder (storage_set, e_shell_view_get_current_path (shell_view));


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]