Only in privatemsg_inbox: CVS
diff -urp privatemsg_inbox/privatemsg.module privatemsg_count/privatemsg.module
--- privatemsg_inbox/privatemsg.module	2009-03-17 20:31:42.615955000 +0000
+++ privatemsg_count/privatemsg.module	2009-03-17 20:40:02.069955000 +0000
@@ -694,7 +694,7 @@ function privatemsg_sql_list(&$fragments
   $fragments['select'][]      = 'pmi.thread_id';
   $fragments['select'][]      = 'MIN(pm.subject) as subject';
   $fragments['select'][]      = 'MAX(pm.timestamp) as last_updated';
-  $fragments['select'][]      = 'MAX(pmi.is_new) as is_new';
+  $fragments['select'][]      = 'SUM(pmi.is_new) as is_new';
   
   if (in_array('count', $fields)) {
     $fragments['select'][]      = 'COUNT(pmi.thread_id) as count';
diff -urp privatemsg_inbox/privatemsg.theme.inc privatemsg_count/privatemsg.theme.inc
--- privatemsg_inbox/privatemsg.theme.inc	2009-03-17 20:59:07.768355000 +0000
+++ privatemsg_count/privatemsg.theme.inc	2009-03-17 20:58:42.260355000 +0000
@@ -22,7 +22,12 @@ function phptemplate_privatemsg_list_fie
 
 function phptemplate_privatemsg_list_field__subject($thread) {
   $field = array();
-  $field['data'] =l($thread['subject'], 'messages/view/'. $thread['thread_id']);
+  $options = array();
+  if (!empty($thread['is_new'])) {
+    $thread['subject'] .= format_plural($thread['is_new'], ' (1 new)', ' (@count new)');
+    $options['fragment'] = 'new';
+  }
+  $field['data'] =l($thread['subject'], 'messages/view/'. $thread['thread_id'], $options);
   $field['class'] = 'privatemsg-list-subject';
   return $field;
 }
