From 4ef34ef28bab811c0563829f857de45df1b2a959 Mon Sep 17 00:00:00 2001 From: Martin Fietz Date: Fri, 25 Mar 2016 18:07:32 +0100 Subject: [PATCH] Don't get notified about mark as played --- .../antennapod/fragment/QueueFragment.java | 2 +- .../antennapod/core/storage/DBWriter.java | 19 +++++++++++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java index 4bfc3c9da..fcec00ca6 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java @@ -409,7 +409,7 @@ public class QueueFragment extends Fragment { Log.d(TAG, "remove(" + position + ")"); final FeedItem item = queue.get(position); final boolean isRead = item.isPlayed(); - DBWriter.markItemPlayed(FeedItem.PLAYED, item.getId()); + DBWriter.markItemPlayed(FeedItem.PLAYED, false, item.getId()); DBWriter.removeQueueItem(getActivity(), item, true); Snackbar snackbar = Snackbar.make(root, getString(R.string.marked_as_read_label), Snackbar.LENGTH_LONG); snackbar.setAction(getString(R.string.undo), v -> { diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/DBWriter.java b/core/src/main/java/de/danoeh/antennapod/core/storage/DBWriter.java index 7dad9cb08..3b4dfe9a6 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/storage/DBWriter.java +++ b/core/src/main/java/de/danoeh/antennapod/core/storage/DBWriter.java @@ -583,18 +583,33 @@ public class DBWriter { /* * Sets the 'read'-attribute of all specified FeedItems * - * @param context A context that is used for opening a database connection. * @param played New value of the 'read'-attribute, one of FeedItem.PLAYED, FeedItem.NEW, * FeedItem.UNPLAYED * @param itemIds IDs of the FeedItems. */ public static Future markItemPlayed(final int played, final long... itemIds) { + return markItemPlayed(played, true, itemIds); + } + + /* + * Sets the 'read'-attribute of all specified FeedItems + * + * @param played New value of the 'read'-attribute, one of FeedItem.PLAYED, FeedItem.NEW, + * FeedItem.UNPLAYED + * @param broadcastUpdate true if this operation should trigger a UnreadItemsUpdate broadcast. + * This option is usually set to true + * @param itemIds IDs of the FeedItems. + */ + public static Future markItemPlayed(final int played, final boolean broadcastUpdate, + final long... itemIds) { return dbExec.submit(() -> { final PodDBAdapter adapter = PodDBAdapter.getInstance(); adapter.open(); adapter.setFeedItemRead(played, itemIds); adapter.close(); - EventDistributor.getInstance().sendUnreadItemsUpdateBroadcast(); + if(broadcastUpdate) { + EventDistributor.getInstance().sendUnreadItemsUpdateBroadcast(); + } }); }