Package: straw
Version: 0.25.1-5
Severity: wishlist
Tags: patch

Occasionally, it would be nice to be able to mark all feeds as read at
one time, rather than having to individually click on each feed and mark
it as read.

The attached patch provides a "Mark Everything as Read" option, in the 
Edit menu (with a hotkey of Shift-E), to do this.

Thanks!

Paul.


-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.12.4-1
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

Versions of packages straw depends on:
ii  gconf2                        2.10.1-1   GNOME configuration database syste
ii  libatk1.0-0                   1.10.1-2   The ATK accessibility toolkit
ii  libc6                         2.3.5-4    GNU C Library: Shared libraries an
ii  libglib2.0-0                  2.8.0-1    The GLib library of C routines
ii  libgtk2.0-0                   2.6.9-1    The GTK+ graphical user interface 
ii  libpango1.0-0                 1.8.2-1    Layout and rendering of internatio
ii  python                        2.3.5-3    An interactive high-level object-o
ii  python2.3                     2.3.5-7    An interactive high-level object-o
ii  python2.3-egenix-mxdatetime   2.0.6-1    date and time handling routines fo
ii  python2.3-glade2              2.6.2-1    GTK+ bindings: Glade support
ii  python2.3-gnome2              2.10.0-2   Python bindings for the GNOME desk
ii  python2.3-gnome2-extras       2.10.0-4   Python bindings for the GNOME desk
ii  python2.3-gtk2                2.6.2-1    Python bindings for the GTK+ widge

Versions of packages straw recommends:
ii  python2.3-adns                1.0.0-6    A Python 2.3 interface to the asyn

-- no debconf information
diff -urN straw-0.25.1.orig/glade/straw.glade straw-0.25.1/glade/straw.glade
--- straw-0.25.1.orig/glade/straw.glade 2004-07-16 05:15:58.000000000 +1000
+++ straw-0.25.1/glade/straw.glade      2005-08-22 23:31:57.000000000 +1000
@@ -173,6 +173,16 @@
                      </child>
 
                      <child>
+                       <widget class="GtkMenuItem" 
id="menu_mark_everything_as_read">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">Mark 
_Everything As Read</property>
+                         <property name="use_underline">True</property>
+                         <signal name="activate" 
handler="on_menu_mark_everything_as_read_activate" last_modification_time="Mon, 
22 Aug 2005 13:04:51 GMT"/>
+                         <accelerator key="E" modifiers="GDK_SHIFT_MASK" 
signal="activate"/>
+                       </widget>
+                     </child>
+
+                     <child>
                        <widget class="GtkSeparatorMenuItem" id="separator9">
                          <property name="visible">True</property>
                        </widget>
diff -urN straw-0.25.1.orig/src/lib/Main.py straw-0.25.1/src/lib/Main.py
--- straw-0.25.1.orig/src/lib/Main.py   2004-07-16 05:15:58.000000000 +1000
+++ straw-0.25.1/src/lib/Main.py        2005-08-22 23:31:57.000000000 +1000
@@ -172,6 +172,10 @@
             feed = self._visible_feed
         feed.mark_all_read()
 
+    def mark_everything_as_read(self,feeds):
+       for feed in feeds:
+               feed.mark_all_read()
+
     def display_feed(self, feed):
         if self._feed_selection_enabled and self._visible_feed != feed:
             self._visible_feed = feed
diff -urN straw-0.25.1.orig/src/lib/MainWindow.py 
straw-0.25.1/src/lib/MainWindow.py
--- straw-0.25.1.orig/src/lib/MainWindow.py     2004-07-16 05:15:58.000000000 
+1000
+++ straw-0.25.1/src/lib/MainWindow.py  2005-08-22 23:32:12.000000000 +1000
@@ -1475,6 +1475,10 @@
     def on_menu_mark_all_as_read_activate(self, *args):
         straw.main.mark_as_read()
 
+    def on_menu_mark_everything_as_read_activate(self, *args):
+       feeds = self._feedlist.flatten_list()
+       straw.main.mark_everything_as_read(feeds)
+
     def on_menu_next_category_activate(self, *args):
         straw.main.display_next_category()
 

Reply via email to