D8091: Added Hide Read Feed option

Kevin Tardif noreply at phabricator.kde.org
Sun Oct 1 19:06:58 BST 2017


sagara created this revision.
Restricted Application added a project: KDE PIM.
Restricted Application added a subscriber: KDE PIM.

REVISION SUMMARY
  This patch adds a new option, to hide feeds with zero unread count from the feed list. You can access the setting via either the View menubar item or via the General configuration panel, it defaults to being turned off. This is useful if you have many feeds, as it makes the feed list less crowded by hiding those with no new items.
  
  subscriptionlistmodel:
  
  - filter models are present in articlelistview, but controller only includes listmodel.h, so I put FilterUnreadProxyModel here
  - added FilterUnreadProxyModel, a QSortFilerProxyModel subclass to filter out feeds with zero unread count
  - uint nodeIdForIndex(const QModelIndex&) is now a file-specific method
  - changed FolderExpansionHandler::m_model to be of type QAbstractItemModel* (since it no longer needs SubscriptionListModel::nodeIdForIndex)
  
  selectioncontroller:
  
  - hooked filter's selectionmodel's selectionChanged signal in SelectionController::setFeedSelector to the FilterUnreadProxyModel instance
  - m_subscriptionModel is now a FilterUnreadProxyModel*
  - added SelectionController::settingsChanged slot
  - changed SelectionController::setFeedList to set the proxy's source
  - model
  
  actionmanagerimpl:
  
  - added slotSettingsChanged slot for receiving MainWidget::signalSettingsChange signal and updating action state
  - added a KAction to ActionManagerImpl:initSubscriptionListView, connected to SubscriptionListView::slotSetHideReadFeeds
  
  subscriptionlistview:
  
  - added a public slot to connect the added action to (slotSetHideReadFeeds)
  
  mainwidget:
  
  - hooked m_part's signalSettingsChanged() to m_selectionController::settingsChanged, m_actionManager::slotSettingsChanged
  
  interfaces/akregator.kcfg:
  
  - added View/HideReadFeeds entry
  
  akregator_part.rc:
  
  - add a separator and an action to <Menu name="view"> (name=feed_hide_read)
  
  settings_general.ui:
  
  - add kcfg_HideReadFeeds field under General->Global

REPOSITORY
  R201 Akregator

BRANCH
  read-feeds-hide-patch

REVISION DETAIL
  https://phabricator.kde.org/D8091

AFFECTED FILES
  configuration/ui/settings_general.ui
  interfaces/akregator.kcfg
  src/abstractselectioncontroller.h
  src/actions/actionmanagerimpl.cpp
  src/actions/actionmanagerimpl.h
  src/data/akregator_part.rc
  src/mainwidget.cpp
  src/selectioncontroller.cpp
  src/selectioncontroller.h
  src/subscription/subscriptionlistmodel.cpp
  src/subscription/subscriptionlistmodel.h
  src/subscription/subscriptionlistview.cpp
  src/subscription/subscriptionlistview.h

To: sagara
Cc: #kde_pim, dvasin, winterz, vkrause, mlaurent, knauss, dvratil
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-pim/attachments/20171001/d5955a58/attachment.html>


More information about the kde-pim mailing list