From 9b369a530ac7f9c653da058c07a3464d508bd55d Mon Sep 17 00:00:00 2001 From: Yves Marcoz Date: Fri, 27 Jan 2012 22:37:55 -0800 Subject: [PATCH 1/1] psa: adding toggle to show/hide specific feed on Event Feed stream --- psa_harmattan/feedingit/pysrc/feedingit.py | 17 ++++++++++++++++- psa_harmattan/feedingit/pysrc/rss_sqlite.py | 13 +++++++------ psa_harmattan/feedingit/qml/main.qml | 8 ++++++++ 3 files changed, 31 insertions(+), 7 deletions(-) diff --git a/psa_harmattan/feedingit/pysrc/feedingit.py b/psa_harmattan/feedingit/pysrc/feedingit.py index 93ffc6a..b401a0c 100644 --- a/psa_harmattan/feedingit/pysrc/feedingit.py +++ b/psa_harmattan/feedingit/pysrc/feedingit.py @@ -241,7 +241,7 @@ class Controller(QtCore.QObject): bus = dbus.SessionBus() settingService = bus.get_object('com.nokia.DuiControlPanel', '/') setting = shareService.get_dbus_method('appletPage', 'com.nokia.DuiControlPanelIf') - setting("FeedingIt Updates") + setting("FeedingIt") @QtCore.Slot(str, str) def share(self, key, articleid): @@ -255,6 +255,21 @@ class Controller(QtCore.QObject): share = shareService.get_dbus_method('share', 'com.nokia.maemo.meegotouch.ShareUiInterface') #share([u'data:text/x-url;description=Support%20for%20Nokia%20Developers;title=Forum%20Nokia,http%3A%2F%2Fforum.nokia.com',]) share( ['data:text/x-url;title=%s;description=%s,%s' %(urllib.quote(title), description, urllib.quote(link)),] ) + + @QtCore.Slot(str, result=bool) + def getFeedEventStatus(self, key): + from gconf import client_get_defaults + return client_get_default().get_bool('/apps/ControlPanel/FeedingIt/EnableFeed/'+key) + + @QtCore.Slot(str) + def switchEventFeedStatus(self, key): + from gconf import client_get_defaults + value = client_get_default().get_bool('/apps/ControlPanel/FeedingIt/EventFeed/Hide/'+key) + if value: + client_get_default().unset('/apps/ControlPanel/FeedingIt/EventFeed/Hide/'+key) + else: + client_get_default().set_bool('/apps/ControlPanel/FeedingIt/EventFeed/Hide/'+key, True) + def main(): if not isdir(CONFIGDIR): diff --git a/psa_harmattan/feedingit/pysrc/rss_sqlite.py b/psa_harmattan/feedingit/pysrc/rss_sqlite.py index cf8d3c2..a848d5b 100644 --- a/psa_harmattan/feedingit/pysrc/rss_sqlite.py +++ b/psa_harmattan/feedingit/pysrc/rss_sqlite.py @@ -1163,12 +1163,13 @@ class Listing(BaseObject): from gconf import client_get_default enable_event_feed = client_get_default().get_bool('/apps/ControlPanel/FeedingIt/EnableFeed') if enable_event_feed: - from eventfeed import EventFeedSender, EventFeedItem - sender = EventFeedSender('feedingit', 'FeedingIt RSS Reader') - item = EventFeedItem('/usr/share/feedingit/qml/common/images/feedingit.png', self.getFeedTitle(key)) - item.set_body(str(self.getFeedNumberOfUnreadItems(key)) + ' unread items') - item.set_action_data([key,]) - sender.add_item(item) + if not client_get_default().get_bool('/apps/ControlPanel/FeedingIt/EventFeed/Hide/'+key): + from eventfeed import EventFeedSender, EventFeedItem + sender = EventFeedSender('feedingit', 'FeedingIt RSS Reader') + item = EventFeedItem('/usr/share/feedingit/qml/common/images/feedingit.png', self.getFeedTitle(key)) + item.set_body(str(self.getFeedNumberOfUnreadItems(key)) + ' unread items') + item.set_action_data([key,]) + sender.add_item(item) update_server_object().ArticleCountUpdated() diff --git a/psa_harmattan/feedingit/qml/main.qml b/psa_harmattan/feedingit/qml/main.qml index 0b47445..4d53500 100644 --- a/psa_harmattan/feedingit/qml/main.qml +++ b/psa_harmattan/feedingit/qml/main.qml @@ -106,6 +106,14 @@ PageStackWindow { property string key MenuLayout { //MenuItem { text: qsTr("Update"); onClicked: controller.updateFeed(parent.feedid); } + MenuItem { + text: controller.getFeedEventStatus(key) ? qsTr("Show on Event Feed"): qsTr("Do not show on Event Feed") + onClicked: { + controller.switchEventFeedStatus(key) + text = controller.getFeedEventStatus(key) ? qsTr("Show on Event Feed"): qsTr("Do not show on Event Feed") + unsubscribeFeedMenu.close() + } + } MenuItem { text: qsTr("Delete"); onClicked: { feedConfirm.open() -- 1.7.9.5