From 63070138b0cebb6aab95b55e1890d5058042746c Mon Sep 17 00:00:00 2001 From: Thomas Perl Date: Mon, 10 Feb 2014 20:50:19 +0100 Subject: [PATCH] Re-enable "Fresh episodes" view as pull down menu item --- qml/FreshEpisodes.qml | 35 +++++++++-------------------------- qml/PodcastsPage.qml | 5 +++++ 2 files changed, 14 insertions(+), 26 deletions(-) diff --git a/qml/FreshEpisodes.qml b/qml/FreshEpisodes.qml index a475e4e..cfa3ff9 100644 --- a/qml/FreshEpisodes.qml +++ b/qml/FreshEpisodes.qml @@ -21,15 +21,17 @@ import QtQuick 2.0 import Sailfish.Silica 1.0 +import 'common' import 'common/util.js' as Util Page { id: freshEpisodes property bool ready: false + onStatusChanged: pgst.handlePageStatusChange(status) + Component.onCompleted: { - py.call('main.get_fresh_episodes', [], function (episodes) { - Util.updateModelFrom(freshEpisodesListModel, episodes); + episodesListModel.loadFreshEpisodes(function () { freshEpisodes.ready = true; }); } @@ -46,39 +48,20 @@ Page { VerticalScrollDecorator { flickable: freshEpisodesList } - PullDownMenu { - MenuItem { - text: 'Mark all as old' - } - - MenuItem { - text: 'Download all episodes' - } - } - header: PageHeader { title: 'Fresh episodes' } - model: ListModel { id: freshEpisodesListModel } + model: GPodderEpisodeListModel { id: episodesListModel } section.property: 'published' section.delegate: SectionHeader { text: section } - delegate: EpisodeItem { - onClicked: py.call('main.download_episode', [id]); + delegate: EpisodeItem {} - Connections { - target: py - onDownloaded: { - if (id == episode_id) { - freshEpisodesListModel.remove(index); - } - } - } - - //pgst.loadPage('EpisodeDetail.qml', {episode_id: id, title: title}); + ViewPlaceholder { + enabled: freshEpisodesList.count == 0 && freshEpisodes.ready + text: 'No fresh episodes' } } } - diff --git a/qml/PodcastsPage.qml b/qml/PodcastsPage.qml index 6b22e5a..239bdfd 100644 --- a/qml/PodcastsPage.qml +++ b/qml/PodcastsPage.qml @@ -36,6 +36,11 @@ Page { PullDownMenu { busy: py.refreshing + MenuItem { + text: 'Fresh episodes' + onClicked: pgst.loadPage('FreshEpisodes.qml'); + } + MenuItem { text: py.refreshing ? 'Checking for new episodes...' : 'Check for new episodes' enabled: podcastListModel.count > 0 && !py.refreshing