[Mailer] Fixes Bug #329586

Rajeev ramanathan <[email protected]>
Newsgroups gmane.comp.gnome.evolution.patches
Message-ID <[email protected]>
Hi,
 changed the ODD behavior of default button by editing code in
 
 * em-account-prefs.c
 * em-account-prefs.h
 and 
 ..disabled Default button when default account is in focus
 ..stopped focus moving to first account when an account is made default
 
 
 
 
 Rajeev

		
---------------------------------
Relax. Yahoo! Mail virus scanning helps detect nasty viruses!

_______________________________________________
Evolution-patches mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/evolution-patches
mail-account-prefs.diff (text/x-patch, 3.1 KB)
Index: em-account-prefs.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-account-prefs.c,v
retrieving revision 1.23
diff -u -p -r1.23 em-account-prefs.c
--- em-account-prefs.c	23 Jan 2006 08:18:09 -0000	1.23
+++ em-account-prefs.c	7 Feb 2006 02:48:54 -0000
@@ -396,6 +396,8 @@ account_cursor_change (GtkTreeSelection 
 	GtkTreeIter iter;
  	const char *url = NULL;
 	int state;
+	EAccount *default_account;
+	default_account = mail_config_get_default_account ();
 
 	state = gconf_client_key_is_writable(mail_config_get_gconf_client(), "/apps/evolution/mail/accounts", NULL);
 	if (state) {
@@ -419,7 +421,12 @@ account_cursor_change (GtkTreeSelection 
 		gtk_widget_set_sensitive (GTK_WIDGET (prefs->mail_edit), !mail_config_has_proxies(account));
 
 	gtk_widget_set_sensitive (GTK_WIDGET (prefs->mail_delete), state);
-	gtk_widget_set_sensitive (GTK_WIDGET (prefs->mail_default), state);
+
+	if(account == default_account)
+		gtk_widget_set_sensitive (GTK_WIDGET (prefs->mail_default), FALSE);
+	else
+		gtk_widget_set_sensitive (GTK_WIDGET (prefs->mail_default), state);
+
 	gtk_widget_set_sensitive (GTK_WIDGET (prefs->mail_able), state);
 }
 
@@ -474,9 +481,8 @@ mail_accounts_load (EMAccountPrefs *pref
 				camel_url_free (url);
 		
 			/* select the first row by default */
-			if (row == 0)
+			if (row == 0 && !prefs->changed)
 				gtk_tree_selection_select_iter (selection, &iter);					                       
-									
 			row++;
 		}
 		
@@ -573,9 +579,11 @@ em_account_prefs_construct (EMAccountPre
 	
 	renderer = g_object_get_data ((GObject *) widget, "renderer");
 	g_signal_connect (renderer, "toggled", G_CALLBACK (account_able_toggled), prefs);
-	
+
+	prefs->changed = FALSE;
 	mail_accounts_load (prefs);
-	
+	prefs->changed = TRUE;
+
 	prefs->mail_add = GTK_BUTTON (glade_xml_get_widget (gui, "cmdAccountAdd"));
 	g_signal_connect (prefs->mail_add, "clicked", G_CALLBACK (account_add_clicked), prefs);
 	
Index: em-account-prefs.h
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-account-prefs.h,v
retrieving revision 1.7
diff -u -p -r1.7 em-account-prefs.h
--- em-account-prefs.h	17 Jun 2005 15:20:29 -0000	1.7
+++ em-account-prefs.h	7 Feb 2006 02:48:59 -0000
@@ -70,6 +70,7 @@ struct _EMAccountPrefs {
 	GtkButton *mail_able;
 	
 	guint destroyed : 1;
+	guint changed : 1;
 };
 
 struct _EMAccountPrefsClass {
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/mail/ChangeLog,v
retrieving revision 1.3785
diff -u -p -r1.3785 ChangeLog
--- ChangeLog	2 Feb 2006 05:14:15 -0000	1.3785
+++ ChangeLog	7 Feb 2006 02:55:46 -0000
@@ -1,3 +1,12 @@
+2006-02-07  Rajeev ramanathan <[email protected]>
+
+	**Fixes #329586
+
+	* em-account-prefs.c:
+	* em-account-prefs.h: Changed the ODD behavior of Default button by 
+	checking whether an account is default or not and disabling the button
+	when default account is in focus.
+	
 2006-02-02  Parthasarathi Susarla <[email protected]>
 	
 	* em-composer-utils.c: (em_utils_handle_receipt):
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.