diff -Naur sylpheed-2.4.2/libsylph/filter.c sylpheed-2.4.2-modified/libsylph/filter.c
--- sylpheed-2.4.2/libsylph/filter.c	2007-04-06 07:00:09.000000000 +0200
+++ sylpheed-2.4.2-modified/libsylph/filter.c	2007-06-18 22:31:16.000000000 +0200
@@ -405,6 +405,9 @@
 		matched = (time(NULL) - msginfo->date_t >
 				cond->int_value * 24 * 60 * 60);
 		break;
+	case FLT_COND_NEW:
+		matched = MSG_IS_NEW(msginfo->flags);
+		break;
 	case FLT_COND_UNREAD:
 		matched = MSG_IS_UNREAD(msginfo->flags);
 		break;
@@ -637,6 +640,8 @@
 			cond_type = FLT_COND_SIZE_GREATER;
 		STR_CASE("age")
 			cond_type = FLT_COND_AGE_GREATER;
+		STR_CASE("new")
+			cond_type = FLT_COND_NEW;
 		STR_CASE("unread")
 			cond_type = FLT_COND_UNREAD;
 		STR_CASE("mark")
@@ -892,6 +897,12 @@
 					 FLT_IS_NOT_MATCH(cond->match_flag)
 					 ? "lt" : "gt");
 				break;
+			case FLT_COND_NEW:
+				NODE_NEW("new", NULL);
+				ADD_ATTR("type",
+					 FLT_IS_NOT_MATCH(cond->match_flag)
+					 ? "is-not" : "is");
+				break;
 			case FLT_COND_UNREAD:
 				NODE_NEW("unread", NULL);
 				ADD_ATTR("type",
diff -Naur sylpheed-2.4.2/libsylph/filter.h sylpheed-2.4.2-modified/libsylph/filter.h
--- sylpheed-2.4.2/libsylph/filter.h	2007-04-06 07:00:09.000000000 +0200
+++ sylpheed-2.4.2-modified/libsylph/filter.h	2007-06-18 22:31:16.000000000 +0200
@@ -47,6 +47,7 @@
 	FLT_COND_CMD_TEST,
 	FLT_COND_SIZE_GREATER,
 	FLT_COND_AGE_GREATER,
+	FLT_COND_NEW,
 	FLT_COND_UNREAD,
 	FLT_COND_MARK,
 	FLT_COND_COLOR_LABEL,
diff -Naur sylpheed-2.4.2/src/prefs_filter_edit.c sylpheed-2.4.2-modified/src/prefs_filter_edit.c
--- sylpheed-2.4.2/src/prefs_filter_edit.c	2007-03-28 03:30:15.000000000 +0200
+++ sylpheed-2.4.2-modified/src/prefs_filter_edit.c	2007-06-18 22:31:03.000000000 +0200
@@ -498,6 +498,7 @@
 	COND_MENUITEM_ADD(_("Age"),               PF_COND_AGE);
 
 	MENUITEM_ADD(menu, menuitem, NULL,        PF_COND_SEPARATOR);
+	COND_MENUITEM_ADD(_("New"),               PF_COND_NEW);
 	COND_MENUITEM_ADD(_("Unread"),            PF_COND_UNREAD);
 	COND_MENUITEM_ADD(_("Marked"),            PF_COND_MARK);
 	COND_MENUITEM_ADD(_("Has color label"),   PF_COND_COLOR_LABEL);
@@ -797,6 +798,8 @@
 		else
 			age_type = PF_AGE_LONGER;
 		break;
+	case FLT_COND_NEW:
+		cond_type = PF_COND_NEW; break;
 	case FLT_COND_UNREAD:
 		cond_type = PF_COND_UNREAD; break;
 	case FLT_COND_MARK:
@@ -837,6 +840,7 @@
 			break;
 		}
 		break;
+	case FLT_COND_NEW:
 	case FLT_COND_UNREAD:
 	case FLT_COND_MARK:
 	case FLT_COND_COLOR_LABEL:
@@ -884,8 +888,9 @@
 	else if (cond_type == PF_COND_AGE)
 		gtk_option_menu_set_history
 			(GTK_OPTION_MENU(hbox->age_match_optmenu), age_type);
-	else if (cond_type == PF_COND_UNREAD || cond_type == PF_COND_MARK ||
-		 cond_type == PF_COND_COLOR_LABEL || cond_type == PF_COND_MIME)
+	else if (cond_type == PF_COND_NEW || cond_type == PF_COND_UNREAD || 
+	         cond_type == PF_COND_MARK || cond_type == PF_COND_COLOR_LABEL ||
+		 cond_type == PF_COND_MIME)
 		gtk_option_menu_set_history
 			(GTK_OPTION_MENU(hbox->status_match_optmenu),
 			 status_type);
@@ -1013,6 +1018,7 @@
 		gtk_widget_show(hbox->label);
 		gtk_label_set_text(GTK_LABEL(hbox->label), _("day(s)"));
 		break;
+	case PF_COND_NEW:
 	case PF_COND_UNREAD:
 	case PF_COND_MARK:
 	case PF_COND_COLOR_LABEL:
@@ -1749,6 +1755,13 @@
 		cond = filter_cond_new(FLT_COND_AGE_GREATER,
 				       0, match_flag, NULL, itos(int_value));
 		break;
+	case PF_COND_NEW:
+		status_type = menu_get_option_menu_active_index
+			(GTK_OPTION_MENU(hbox->status_match_optmenu));
+		match_flag = status_type == PF_STATUS_MATCH ? 0 : FLT_NOT_MATCH;
+		cond = filter_cond_new(FLT_COND_NEW, 0, match_flag,
+				       NULL, NULL);
+		break;
 	case PF_COND_UNREAD:
 		status_type = menu_get_option_menu_active_index
 			(GTK_OPTION_MENU(hbox->status_match_optmenu));
diff -Naur sylpheed-2.4.2/src/prefs_filter_edit.h sylpheed-2.4.2-modified/src/prefs_filter_edit.h
--- sylpheed-2.4.2/src/prefs_filter_edit.h	2007-02-07 06:33:54.000000000 +0100
+++ sylpheed-2.4.2-modified/src/prefs_filter_edit.h	2007-06-18 22:31:03.000000000 +0200
@@ -37,6 +37,7 @@
 	PF_COND_CMD_TEST,
 	PF_COND_SIZE,
 	PF_COND_AGE,
+	PF_COND_NEW,
 	PF_COND_UNREAD,
 	PF_COND_MARK,
 	PF_COND_COLOR_LABEL,
diff -Naur sylpheed-2.4.2/src/summaryview.c sylpheed-2.4.2-modified/src/summaryview.c
--- sylpheed-2.4.2/src/summaryview.c	2007-05-16 08:40:55.000000000 +0200
+++ sylpheed-2.4.2-modified/src/summaryview.c	2007-06-18 22:31:03.000000000 +0200
@@ -128,6 +128,7 @@
 typedef enum
 {
 	QS_ALL,
+	QS_NEW,
 	QS_UNREAD,
 	QS_MARK,
 	QS_CLABEL,
@@ -424,6 +425,7 @@
 	FilterCondType ftype;
 } qsearch_cond_types[] = {
 	{QS_ALL,	-1},
+	{QS_NEW,	FLT_COND_NEW},
 	{QS_UNREAD,	FLT_COND_UNREAD},
 	{QS_MARK,	FLT_COND_MARK},
 	{QS_CLABEL,	FLT_COND_COLOR_LABEL},
@@ -559,6 +561,7 @@
 
 	filter_menu = gtk_menu_new();
 	COND_MENUITEM_ADD(_("All"), QS_ALL);
+	COND_MENUITEM_ADD(_("New"), QS_NEW);
 	COND_MENUITEM_ADD(_("Unread"), QS_UNREAD);
 	COND_MENUITEM_ADD(_("Marked"), QS_MARK);
 	COND_MENUITEM_ADD(_("Have color label"), QS_CLABEL);
@@ -5344,6 +5347,7 @@
 		return NULL;
 
 	switch (type) {
+	case QS_NEW:
 	case QS_UNREAD:
 	case QS_MARK:
 	case QS_CLABEL:
