0.5.4-3 Article font size, em tags, tweaked swipe gestures
authorYves <ymarcoz@n900-sdk.(none)>
Sat, 27 Mar 2010 05:36:54 +0000 (22:36 -0700)
committerYves <ymarcoz@n900-sdk.(none)>
Sat, 27 Mar 2010 05:36:54 +0000 (22:36 -0700)
debian/changelog
src/FeedingIt.py
src/config.py
src/feedparser.py

index 7a45fca..48d0e8a 100644 (file)
@@ -1,3 +1,11 @@
+feedingit (0.5.4-3) stable; urgency=low
+
+  * Fixed Article font size setting
+  * Fixed <em> tags in titles
+  * Tweaked swipe gesture
+
+ -- Yves <yves@marcoz.org>  Fri, 26 Mar 2010 22:33:19 -0800
 feedingit (0.5.4-2) stable; urgency=low
 
   * Removed external BeautifulSoup dependency
index 5f79687..8f39811 100644 (file)
@@ -47,6 +47,7 @@ import threading
 import thread
 from feedingitdbus import ServerObject
 from config import Config
+from cgi import escape
 
 from rss import *
 from opml import GetOpmlData, ExportOpmlData
@@ -294,8 +295,8 @@ class SortList(gtk.Dialog):
         #self.show_all()
 
     def refreshList(self, selected=None, offset=0):
-        rect = self.treeview.get_visible_rect()
-        y = rect.y+rect.height
+        #rect = self.treeview.get_visible_rect()
+        #y = rect.y+rect.height
         self.treestore = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_STRING)
         for key in self.listing.getListOfFeeds():
             item = self.treestore.append([self.listing.getFeedTitle(key), key])
@@ -378,7 +379,8 @@ class DisplayArticle(hildon.StackableWindow):
         self.listing=listing
         self.key = key
         self.id = id
-        self.set_title(feed.getTitle(id))
+        #self.set_title(feed.getTitle(id))
+        self.set_title(self.listing.getFeedTitle(key))
         self.config = config
         
         # Init the article display
@@ -457,7 +459,7 @@ class DisplayArticle(hildon.StackableWindow):
         x = self.coords[0] - event.x
         y = self.coords[1] - event.y
         
-        if (abs(y) < 30):
+        if (2*abs(y) < abs(x)):
             if (x > 15):
                 self.emit("article-previous", self.id)
             elif (x<-15):
@@ -561,7 +563,9 @@ class DisplayFeed(hildon.StackableWindow):
         self.pannableFeed.set_property("mov-mode", hildon.MOVEMENT_MODE_BOTH)
         self.buttons = {}
         for id in self.feed.getIds():
-            button = gtk.Button(self.feed.getTitle(id))
+            title = self.feed.getTitle(id)
+            esc_title = title.replace("<em>","").replace("</em>","").replace("&amp;","&")
+            button = gtk.Button(esc_title)
             button.set_alignment(0,0)
             label = button.child
             if self.feed.isEntryRead(id):
@@ -807,10 +811,11 @@ class FeedingIt:
         #list.reverse()
         for key in list:
             #button = gtk.Button(item)
+            unreadItems = self.listing.getFeedNumberOfUnreadItems(key)
             button = hildon.Button(gtk.HILDON_SIZE_AUTO_WIDTH | gtk.HILDON_SIZE_FINGER_HEIGHT,
                               hildon.BUTTON_ARRANGEMENT_VERTICAL)
             button.set_text(self.listing.getFeedTitle(key), self.listing.getFeedUpdateTime(key) + " / " 
-                            + str(self.listing.getFeedNumberOfUnreadItems(key)) + " Unread Items")
+                            + str(unreadItems) + " Unread Items")
             button.set_alignment(0,0,1,1)
             button.connect("clicked", self.buttonFeedClicked, self, self.window, key)
             self.vboxListing.pack_start(button, expand=False)
@@ -818,13 +823,20 @@ class FeedingIt:
      
         self.mainVbox.pack_start(self.pannableListing)
         self.window.show_all()
+        gobject.idle_add(self.refreshList)
 
     def refreshList(self):
         for key in self.listing.getListOfFeeds():
             if self.buttons.has_key(key):
                 button = self.buttons[key]
+                unreadItems = self.listing.getFeedNumberOfUnreadItems(key)
                 button.set_text(self.listing.getFeedTitle(key), self.listing.getFeedUpdateTime(key) + " / " 
-                            + str(self.listing.getFeedNumberOfUnreadItems(key)) + " Unread Items")
+                            + str(unreadItems) + " Unread Items")
+                label = button.child.child.get_children()[0].get_children()[1]
+                if unreadItems == 0:
+                    label.modify_fg(gtk.STATE_NORMAL, read_color)
+                else:
+                    label.modify_fg(gtk.STATE_NORMAL, unread_color)
             else:
                 self.displayListing()
                 break
index eabaf8d..baa7065 100644 (file)
@@ -52,7 +52,7 @@ class Config():
         
         vbox = gtk.VBox(False, 10)
         self.buttons = {}
-        settings = ["fontSize", "expiry", "orientation", "updateInterval",]
+        settings = ["fontSize", "artFontSize", "expiry", "orientation", "updateInterval",]
         for setting in settings:
             picker = hildon.PickerButton(gtk.HILDON_SIZE_FINGER_HEIGHT, hildon.BUTTON_ARRANGEMENT_VERTICAL)
             selector = self.create_selector(ranges[setting], setting)
index bb802df..476f452 100644 (file)
@@ -2463,6 +2463,8 @@ def parse(url_file_stream_or_string, etag=None, modified=None, agent=None, refer
         result['bozo_exception'] = e
         data = ''
         f = None
+    ## Fix for media:title bug
+    data = data.replace("media:title", "mediatitle")
 
     # if feed is gzip-compressed, decompress it
     if f and data and hasattr(f, 'headers'):