Exemplo n.º 1
0
        // menu callbacks -----------------------------------------------//

        private void OnFeedMenuSubscribeToggled(object sender, EventArgs args)
        {
            PodcastFeedInfo feed = GetSelectedFeed();

            if (feed != null)
            {
                if (feed.IsUpdating)
                {
                    return;
                }

                feed.IsSubscribed = !feed.IsSubscribed;
                feed.Commit();
                podcast_view.Refilter();
            }
        }
Exemplo n.º 2
0
        private void OnFeedMenuUpdateCurrentActivated(object sender, EventArgs args)
        {
            PodcastFeedInfo feed = GetSelectedFeed();

            if (feed != null)
            {
                if (!feed.IsSubscribed)
                {
                    feed.IsSubscribed = true;
                    feed.Commit();

                    podcast_view.Refilter();
                    podcast_view.QueueDraw();
                }

                PodcastCore.FeedFetcher.Update(feed, true);
            }
        }
        private void OnResponse(object sender, ResponseArgs args)
        {
            Destroy();

            if (args.ResponseId == Gtk.ResponseType.Ok)
            {
                SyncPreference new_sync_pref = new_episode_option_combo.ActiveSyncPreference;

                if (feed.SyncPreference != new_sync_pref)
                {
                    feed.SyncPreference = new_sync_pref;
                    feed.Commit();

                    if (new_sync_pref != SyncPreference.None &&
                        feed.IsSubscribed)
                    {
                        PodcastCore.FeedFetcher.Update(feed);
                    }
                }
            }

            (sender as Dialog).Response -= OnResponse;
            (sender as Dialog).Destroy();
        }