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