[Commits] [SCM] claws branch, gtk3, updated. 3.16.0-169-g2e197d5

ticho at claws-mail.org ticho at claws-mail.org
Sat Apr 28 20:47:50 CEST 2018


The branch, gtk3 has been updated
       via  2e197d5e8ed39e2b1fb41eaa213c0e35e1f4c279 (commit)
       via  4b9e23b3f13ba4e760cd286e6016e8c15e317d9f (commit)
       via  24310342700283d81919e810dac7e237ec16cf58 (commit)
       via  a098d91be58baea1b656128a2a0995ade9d26c92 (commit)
       via  3b3156d94470bb947ed2217ca5259c38b702cddd (commit)
       via  7087f6b973663ac3c8e64ceaaf2c7b0e7769976c (commit)
       via  fbf501626163c494b563339b2f69b9bb48621517 (commit)
      from  b8db458023dd823e08fc8319870765749a98d5e0 (commit)

Summary of changes:
 src/common/log.c        |   12 ++++++++++++
 src/common/log.h        |    1 +
 src/compose.c           |    8 ++++----
 src/folder_item_prefs.c |    4 ++--
 src/gtk/gtksctree.c     |    2 ++
 src/gtk/logwindow.c     |   13 ++++++++-----
 src/gtk/logwindow.h     |    1 +
 src/main.c              |    3 +--
 src/mainwindow.c        |   12 ++++++++++++
 src/mimeview.c          |    9 ++++++++-
 10 files changed, 51 insertions(+), 14 deletions(-)


- Log -----------------------------------------------------------------
commit 2e197d5e8ed39e2b1fb41eaa213c0e35e1f4c279
Author: Andrej Kacian <ticho at claws-mail.org>
Date:   Fri Apr 27 17:00:37 2018 +0200

    Ignore the expander "hot spots" in folderview for childless folders.

diff --git a/src/gtk/gtksctree.c b/src/gtk/gtksctree.c
index 58426f9..e8d767f 100644
--- a/src/gtk/gtksctree.c
+++ b/src/gtk/gtksctree.c
@@ -431,6 +431,8 @@ sctree_is_hot_spot (GtkSCTree     *sctree,
     return FALSE;
 
   tree_row = GTK_CMCTREE_ROW (node);
+  if (!tree_row->children)
+    return FALSE;
 
   hotspot_size = clist->row_height-2;
   if (hotspot_size > clist->column[ctree->tree_column].area.width - 2)

commit 4b9e23b3f13ba4e760cd286e6016e8c15e317d9f
Author: wwp <wwp at free.fr>
Date:   Wed Apr 25 15:48:12 2018 +0200

    Fix sensitivity of the main window's 'View/Message part/View as text' entry
    according to the selected mime part.

diff --git a/src/mainwindow.c b/src/mainwindow.c
index 20cebec..002c2f9 100644
--- a/src/mainwindow.c
+++ b/src/mainwindow.c
@@ -3364,6 +3364,18 @@ do { \
 	cm_menu_set_sensitive_full(mainwin->ui_manager, "Menu/Message/CheckSignature", 
 				   mimepart_selected && mainwin->messageview->mimeview->signed_part);
 
+	sensitive = TRUE;
+	if (mimepart_selected) {
+		MimeInfo *partinfo = messageview_get_selected_mime_part(mainwin->messageview);
+
+		if (partinfo && (partinfo->type == MIMETYPE_MESSAGE ||
+				 partinfo->type == MIMETYPE_IMAGE ||
+				 partinfo->type == MIMETYPE_MULTIPART)) {
+			sensitive = FALSE;
+		}
+	}
+	cm_menu_set_sensitive_full(mainwin->ui_manager, "Menu/View/Part/AsText", sensitive);
+
 	main_window_menu_callback_unblock(mainwin);
 }
 
diff --git a/src/mimeview.c b/src/mimeview.c
index eeb7a8a..5b367de 100644
--- a/src/mimeview.c
+++ b/src/mimeview.c
@@ -1398,6 +1398,7 @@ static void mimeview_selected(GtkTreeSelection *selection, MimeView *mimeview)
 	GtkTreeIter iter;
 	GtkTreePath *path;
 	MimeInfo *partinfo;
+	MainWindow *mainwin;
 
 	selection = gtk_tree_view_get_selection(ctree);
 	if (!gtk_tree_selection_get_selected(selection, &model, &iter))
@@ -1445,6 +1446,9 @@ static void mimeview_selected(GtkTreeSelection *selection, MimeView *mimeview)
 			break;
 		}
 	}
+	mainwin = mainwindow_get_mainwindow();
+	if (mainwin)
+		main_window_set_menu_sensitive(mainwin);
 
 	if (mimeview->siginfo && privacy_auto_check_signatures(mimeview->siginfo)
 	&&  privacy_mimeinfo_get_sig_status(mimeview->siginfo) == SIGNATURE_UNCHECKED) {
@@ -1500,6 +1504,8 @@ static gboolean part_button_pressed(MimeView *mimeview, GdkEventButton *event,
 		mimeview_launch(mimeview, partinfo);
 		return TRUE;
 	} else if (event->button == 3) {
+		MainWindow *mainwin = mainwindow_get_mainwindow();
+
 		if (partinfo && (partinfo->type == MIMETYPE_MESSAGE ||
 				 partinfo->type == MIMETYPE_IMAGE ||
 				 partinfo->type == MIMETYPE_MULTIPART))
@@ -1514,7 +1520,8 @@ static gboolean part_button_pressed(MimeView *mimeview, GdkEventButton *event,
 		else
 #endif
 			cm_menu_set_sensitive_full(mimeview->ui_manager, "Menus/MimeView/Open", TRUE);
-
+		if (mainwin)
+			main_window_set_menu_sensitive(mainwin);
 		g_object_set_data(G_OBJECT(mimeview->popupmenu),
 				  "pop_partinfo", partinfo);
 				    

commit 24310342700283d81919e810dac7e237ec16cf58
Author: Ricardo Mones <ricardo at mones.org>
Date:   Wed Apr 25 15:40:42 2018 +0200

    Fix array type to match items
    
    Fixes warnings:
    • …from log.c:25: /usr/include/glib-2.0/glib/gmacros.h:284:14: warning:
      initialization makes pointer from integer without a cast
    • log.c:189:29: warning: return makes integer from pointer without a cast

diff --git a/src/common/log.c b/src/common/log.c
index 8b21061..286b836 100644
--- a/src/common/log.c
+++ b/src/common/log.c
@@ -65,7 +65,7 @@ static gchar *log_filename[LOG_INSTANCE_MAX] = {
 };
 
 /* read-only */
-static gchar *log_error_capability[LOG_INSTANCE_MAX] = {
+static gboolean log_error_capability[LOG_INSTANCE_MAX] = {
 	TRUE,
 	FALSE
 };

commit a098d91be58baea1b656128a2a0995ade9d26c92
Author: wwp <wwp at free.fr>
Date:   Mon Apr 23 18:50:40 2018 +0200

    Don't add "Go to last error" to filtering log window's context menu.

diff --git a/src/common/log.c b/src/common/log.c
index 103e9f1..8b21061 100644
--- a/src/common/log.c
+++ b/src/common/log.c
@@ -64,6 +64,12 @@ static gchar *log_filename[LOG_INSTANCE_MAX] = {
 	NULL
 };
 
+/* read-only */
+static gchar *log_error_capability[LOG_INSTANCE_MAX] = {
+	TRUE,
+	FALSE
+};
+
 typedef struct _LogInstanceData LogInstanceData;
 
 struct _LogInstanceData {
@@ -178,6 +184,12 @@ void get_log_prefs(LogInstance instance, int** logwin_width, int** logwin_height
 		*logwin_height = log_instances[instance].prefs_logwin_height;
 }
 
+gboolean get_log_error_capability(LogInstance instance)
+{
+	return log_error_capability[instance];
+
+}
+
 void log_print(LogInstance instance, const gchar *format, ...)
 {
 	va_list args;
diff --git a/src/common/log.h b/src/common/log.h
index f6819f9..c48343b 100644
--- a/src/common/log.h
+++ b/src/common/log.h
@@ -67,6 +67,7 @@ void set_log_title(LogInstance instance, gchar *title);
 gchar *get_log_title(LogInstance instance);
 void set_log_prefs(LogInstance instance, int* logwin_width, int* logwin_height);
 void get_log_prefs(LogInstance instance, int** logwin_width, int** logwin_height);
+gboolean get_log_error_capability(LogInstance instance);
 void log_print		(LogInstance instance, const gchar *format, ...) G_GNUC_PRINTF(2, 3);
 void log_message	(LogInstance instance, const gchar *format, ...) G_GNUC_PRINTF(2, 3);
 void log_warning	(LogInstance instance, const gchar *format, ...) G_GNUC_PRINTF(2, 3);
diff --git a/src/gtk/logwindow.c b/src/gtk/logwindow.c
index 56b151f..47ff1c8 100644
--- a/src/gtk/logwindow.c
+++ b/src/gtk/logwindow.c
@@ -146,6 +146,7 @@ LogWindow *log_window_create(LogInstance instance)
 	logwin->scrolledwin = scrolledwin;
 	logwin->text = text;
 	logwin->hook_id = hooks_register_hook(get_log_hook(instance), log_window_append, logwin);
+	logwin->has_error_capability = get_log_error_capability(instance);
 
 	return logwin;
 }
@@ -448,11 +449,13 @@ static void log_window_popup_menu_extend(GtkTextView *textview,
 	gtk_menu_shell_prepend(GTK_MENU_SHELL(menu), menuitem);
 	gtk_widget_show(menuitem);
 
-	menuitem = gtk_menu_item_new_with_mnemonic(_("_Go to last error"));
-	g_signal_connect(G_OBJECT(menuitem), "activate",
-			 G_CALLBACK(log_window_go_to_last_error), logwin);
-	gtk_menu_shell_prepend(GTK_MENU_SHELL(menu), menuitem);
-	gtk_widget_show(menuitem);
+	if (logwin->has_error_capability) {
+		menuitem = gtk_menu_item_new_with_mnemonic(_("_Go to last error"));
+		g_signal_connect(G_OBJECT(menuitem), "activate",
+				 G_CALLBACK(log_window_go_to_last_error), logwin);
+		gtk_menu_shell_prepend(GTK_MENU_SHELL(menu), menuitem);
+		gtk_widget_show(menuitem);
+	}
 
 	menuitem = gtk_menu_item_new_with_mnemonic(_("Clear _Log"));
 	g_signal_connect(G_OBJECT(menuitem), "activate",
diff --git a/src/gtk/logwindow.h b/src/gtk/logwindow.h
index 75a7def..f47cb2f 100644
--- a/src/gtk/logwindow.h
+++ b/src/gtk/logwindow.h
@@ -51,6 +51,7 @@ struct _LogWindow
 	gboolean hidden;
 	gboolean never_shown;
 	gboolean has_error;
+	gboolean has_error_capability;
 };
 
 LogWindow *log_window_create(LogInstance instance);

commit 3b3156d94470bb947ed2217ca5259c38b702cddd
Author: wwp <wwp at free.fr>
Date:   Wed Apr 18 18:24:06 2018 +0200

    Clean-up in comments (The Commit Of The Year).

diff --git a/src/compose.c b/src/compose.c
index 6fd1fd2..c7f79b0 100644
--- a/src/compose.c
+++ b/src/compose.c
@@ -6161,7 +6161,7 @@ static ComposeQueueResult compose_queue_sub(Compose *compose, gint *msgnum, Fold
 	else
 		err |= (fprintf(fp, "NSV:\n") < 0);
 	err |= (fprintf(fp, "SSH:\n") < 0);
-	/* write recepient list */
+	/* write recipient list */
 	if (compose->to_list) {
 		err |= (fprintf(fp, "R:<%s>", (gchar *)compose->to_list->data) < 0);
 		for (cur = compose->to_list->next; cur != NULL;
@@ -6177,7 +6177,7 @@ static ComposeQueueResult compose_queue_sub(Compose *compose, gint *msgnum, Fold
 			err |= (fprintf(fp, ",%s", (gchar *)cur->data) < 0);
 		err |= (fprintf(fp, "\n") < 0);
 	}
-	/* Sylpheed account IDs */
+	/* account IDs */
 	if (mailac)
 		err |= (fprintf(fp, "MAID:%d\n", mailac->account_id) < 0);
 	if (newsac)

commit 7087f6b973663ac3c8e64ceaaf2c7b0e7769976c
Author: Andrej Kacian <ticho at claws-mail.org>
Date:   Wed Apr 18 18:19:28 2018 +0200

    Fix two missed return values in compose_write_to_file() from commit e9f610a4f.
    
    Thanks to wwp for finding the issue!

diff --git a/src/compose.c b/src/compose.c
index 931b3bb..6fd1fd2 100644
--- a/src/compose.c
+++ b/src/compose.c
@@ -5865,7 +5865,7 @@ static gint compose_write_to_file(Compose *compose, FILE *fp, gint action, gbool
 		g_node_append(mimemsg->node, mimempart->node);
 
 		if (compose_add_attachments(compose, mimempart) < 0)
-			return -1;
+			return COMPOSE_QUEUE_ERROR_NO_MSG;
 	} else
 		g_node_append(mimemsg->node, mimetext->node);
 
@@ -5892,7 +5892,7 @@ static gint compose_write_to_file(Compose *compose, FILE *fp, gint action, gbool
 			compose->account, from_addr)) {
 			g_free(from_name);
 			g_free(from_addr);
-			return -2;
+			return COMPOSE_QUEUE_ERROR_SIGNING_FAILED;
 	}
 	g_free(from_name);
 	g_free(from_addr);

commit fbf501626163c494b563339b2f69b9bb48621517
Author: Andrej Kacian <ticho at claws-mail.org>
Date:   Tue Apr 17 21:17:34 2018 +0200

    Fix unwanted IMAP connections on startup caused by processing rules.
    
    The culprit was a combination of folder_item_prefs_clear()
    setting item->enable_processing to TRUE even though default
    value should be FALSE, and initial_processing() not skipping
    over root folders, which do not have this variable later set
    to correct default value in xml_to_folder_item().
    
    Closes bug #3993: Claws Mail connects to IMAP server when it should not

diff --git a/src/folder_item_prefs.c b/src/folder_item_prefs.c
index e54bff0..d65423b 100644
--- a/src/folder_item_prefs.c
+++ b/src/folder_item_prefs.c
@@ -201,8 +201,8 @@ static FolderItemPrefs *folder_item_prefs_clear(FolderItemPrefs *prefs)
 	prefs->save_copy_to_folder = FALSE;
 	prefs->color = 0;
 
-        prefs->enable_processing = TRUE;
-        prefs->enable_processing_when_opening = TRUE;
+	prefs->enable_processing = FALSE;
+	prefs->enable_processing_when_opening = FALSE;
 	prefs->processing = NULL;
 
 	prefs->newmailcheck = TRUE;
diff --git a/src/main.c b/src/main.c
index a0b8f82..89e51e9 100644
--- a/src/main.c
+++ b/src/main.c
@@ -2096,8 +2096,7 @@ static void initial_processing(FolderItem *item, gpointer data)
 			      : _("top level folder"));
 	g_free(buf);
 
-	
-	if (item->prefs->enable_processing) {
+	if (folder_item_parent(item) != NULL && item->prefs->enable_processing) {
 		item->processing_pending = TRUE;
 		folder_item_apply_processing(item);
 		item->processing_pending = FALSE;

-----------------------------------------------------------------------


hooks/post-receive
-- 
Claws Mail


More information about the Commits mailing list