Index: pan/gui/gui.cc
===================================================================
RCS file: /cvs/gnome/pan2/pan/gui/gui.cc,v
retrieving revision 1.6
diff -u -r1.6 gui.cc
--- pan/gui/gui.cc	31 Oct 2006 00:36:06 -0000	1.6
+++ pan/gui/gui.cc	9 Nov 2006 16:38:40 -0000
@@ -1376,8 +1378,12 @@
 void GUI :: do_xover_selected_groups ()
 {
   const quarks_t group_names (_group_pane->get_full_selection ());
-  foreach_const (quarks_t, group_names, it)
+  const bool mark_read (_prefs.get_flag ("mark-group-read-before-xover", false));
+  foreach_const (quarks_t, group_names, it) {
+    if (mark_read)
+      _data.mark_group_read (*it);
     _queue.add_task (new TaskXOver (_data, *it, TaskXOver::NEW), Queue::TOP);
+  }
 }
 
 void GUI :: do_xover_subscribed_groups ()
@@ -1385,8 +1391,12 @@
   typedef std::vector<Quark> quarks_v;
   quarks_v groups;
   _data.get_subscribed_groups (groups);
-  foreach_const_r (quarks_v, groups, it)
+  const bool mark_read (_prefs.get_flag ("mark-group-read-before-xover", false));
+  foreach_const_r (quarks_v, groups, it) {
+    if (mark_read)
+      _data.mark_group_read (*it);
     _queue.add_task (new TaskXOver (_data, *it, TaskXOver::NEW), Queue::TOP);
+  }
 }
 
 void GUI :: do_download_headers ()
