Multi select: handle local feeds
This commit is contained in:
parent
984233d1d0
commit
6a18c19784
|
@ -51,7 +51,7 @@ public class EpisodesApplyActionFragment extends Fragment {
|
||||||
private static final int ACTION_MARK_UNPLAYED = 8;
|
private static final int ACTION_MARK_UNPLAYED = 8;
|
||||||
public static final int ACTION_DOWNLOAD = 16;
|
public static final int ACTION_DOWNLOAD = 16;
|
||||||
public static final int ACTION_DELETE = 32;
|
public static final int ACTION_DELETE = 32;
|
||||||
private static final int ACTION_ALL = ACTION_ADD_TO_QUEUE | ACTION_REMOVE_FROM_QUEUE
|
public static final int ACTION_ALL = ACTION_ADD_TO_QUEUE | ACTION_REMOVE_FROM_QUEUE
|
||||||
| ACTION_MARK_PLAYED | ACTION_MARK_UNPLAYED | ACTION_DOWNLOAD | ACTION_DELETE;
|
| ACTION_MARK_PLAYED | ACTION_MARK_UNPLAYED | ACTION_DOWNLOAD | ACTION_DELETE;
|
||||||
private Toolbar toolbar;
|
private Toolbar toolbar;
|
||||||
|
|
||||||
|
@ -103,10 +103,6 @@ public class EpisodesApplyActionFragment extends Fragment {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static EpisodesApplyActionFragment newInstance(List<FeedItem> items) {
|
|
||||||
return newInstance(items, ACTION_ALL);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static EpisodesApplyActionFragment newInstance(List<FeedItem> items, int actions) {
|
public static EpisodesApplyActionFragment newInstance(List<FeedItem> items, int actions) {
|
||||||
EpisodesApplyActionFragment f = new EpisodesApplyActionFragment();
|
EpisodesApplyActionFragment f = new EpisodesApplyActionFragment();
|
||||||
f.episodes.addAll(items);
|
f.episodes.addAll(items);
|
||||||
|
@ -449,7 +445,7 @@ public class EpisodesApplyActionFragment extends Fragment {
|
||||||
// download the check episodes in the same order as they are currently displayed
|
// download the check episodes in the same order as they are currently displayed
|
||||||
List<FeedItem> toDownload = new ArrayList<>(checkedIds.size());
|
List<FeedItem> toDownload = new ArrayList<>(checkedIds.size());
|
||||||
for (FeedItem episode : episodes) {
|
for (FeedItem episode : episodes) {
|
||||||
if (checkedIds.contains(episode.getId()) && episode.hasMedia()) {
|
if (checkedIds.contains(episode.getId()) && episode.hasMedia() && !episode.getFeed().isLocalFeed()) {
|
||||||
toDownload.add(episode);
|
toDownload.add(episode);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -473,10 +469,8 @@ public class EpisodesApplyActionFragment extends Fragment {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void close(@PluralsRes int msgId, int numItems) {
|
private void close(@PluralsRes int msgId, int numItems) {
|
||||||
if (numItems > 0) {
|
((MainActivity) getActivity()).showSnackbarAbovePlayer(
|
||||||
((MainActivity) getActivity()).showSnackbarAbovePlayer(
|
getResources().getQuantityString(msgId, numItems, numItems), Snackbar.LENGTH_LONG);
|
||||||
getResources().getQuantityString(msgId, numItems, numItems), Snackbar.LENGTH_LONG);
|
|
||||||
}
|
|
||||||
getActivity().getSupportFragmentManager().popBackStack();
|
getActivity().getSupportFragmentManager().popBackStack();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -257,8 +257,14 @@ public class FeedItemlistFragment extends Fragment implements AdapterView.OnItem
|
||||||
if (!FeedMenuHandler.onOptionsItemClicked(getActivity(), item, feed)) {
|
if (!FeedMenuHandler.onOptionsItemClicked(getActivity(), item, feed)) {
|
||||||
switch (item.getItemId()) {
|
switch (item.getItemId()) {
|
||||||
case R.id.episode_actions:
|
case R.id.episode_actions:
|
||||||
|
int actions = EpisodesApplyActionFragment.ACTION_ALL;
|
||||||
|
if (feed.isLocalFeed()) {
|
||||||
|
// turn off download and delete actions for local feed
|
||||||
|
actions ^= EpisodesApplyActionFragment.ACTION_DOWNLOAD;
|
||||||
|
actions ^= EpisodesApplyActionFragment.ACTION_DELETE;
|
||||||
|
}
|
||||||
EpisodesApplyActionFragment fragment = EpisodesApplyActionFragment
|
EpisodesApplyActionFragment fragment = EpisodesApplyActionFragment
|
||||||
.newInstance(feed.getItems());
|
.newInstance(feed.getItems(), actions);
|
||||||
((MainActivity)getActivity()).loadChildFragment(fragment);
|
((MainActivity)getActivity()).loadChildFragment(fragment);
|
||||||
return true;
|
return true;
|
||||||
case R.id.rename_item:
|
case R.id.rename_item:
|
||||||
|
|
Loading…
Reference in New Issue