Confirm mark as played/unplayed
This commit is contained in:
parent
934e2802f8
commit
850529856a
@ -232,8 +232,34 @@ public abstract class EpisodesListFragment extends Fragment implements EpisodeIt
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
speedDialView.setOnActionSelectedListener(actionItem -> {
|
speedDialView.setOnActionSelectedListener(actionItem -> {
|
||||||
|
int confirmationString = 0;
|
||||||
|
if (listAdapter.getSelectedItems().size() >= 25 || listAdapter.shouldSelectLazyLoadedItems()) {
|
||||||
|
// Should ask for confirmation
|
||||||
|
if (actionItem.getId() == R.id.mark_read_batch) {
|
||||||
|
confirmationString = R.string.multi_select_mark_played_confirmation;
|
||||||
|
} else if (actionItem.getId() == R.id.mark_unread_batch) {
|
||||||
|
confirmationString = R.string.multi_select_mark_unplayed_confirmation;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (confirmationString == 0) {
|
||||||
|
performMultiSelectAction(actionItem.getId());
|
||||||
|
} else {
|
||||||
|
new ConfirmationDialog(getActivity(), R.string.multi_select, confirmationString) {
|
||||||
|
@Override
|
||||||
|
public void onConfirmButtonPressed(DialogInterface dialog) {
|
||||||
|
performMultiSelectAction(actionItem.getId());
|
||||||
|
}
|
||||||
|
}.createNewDialog().show();
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
});
|
||||||
|
|
||||||
|
return root;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void performMultiSelectAction(int actionItemId) {
|
||||||
EpisodeMultiSelectActionHandler handler =
|
EpisodeMultiSelectActionHandler handler =
|
||||||
new EpisodeMultiSelectActionHandler(((MainActivity) getActivity()), actionItem.getId());
|
new EpisodeMultiSelectActionHandler(((MainActivity) getActivity()), actionItemId);
|
||||||
Completable.fromAction(
|
Completable.fromAction(
|
||||||
() -> {
|
() -> {
|
||||||
handler.handleAction(listAdapter.getSelectedItems());
|
handler.handleAction(listAdapter.getSelectedItems());
|
||||||
@ -251,10 +277,6 @@ public abstract class EpisodesListFragment extends Fragment implements EpisodeIt
|
|||||||
.observeOn(AndroidSchedulers.mainThread())
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
.subscribe(() -> listAdapter.endSelectMode(),
|
.subscribe(() -> listAdapter.endSelectMode(),
|
||||||
error -> Log.e(TAG, Log.getStackTraceString(error)));
|
error -> Log.e(TAG, Log.getStackTraceString(error)));
|
||||||
return true;
|
|
||||||
});
|
|
||||||
|
|
||||||
return root;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setupLoadMoreScrollListener() {
|
private void setupLoadMoreScrollListener() {
|
||||||
|
@ -155,6 +155,8 @@
|
|||||||
<string name="remove_all_inbox_label">Remove all from inbox</string>
|
<string name="remove_all_inbox_label">Remove all from inbox</string>
|
||||||
<string name="removed_all_inbox_msg">Removed all from inbox</string>
|
<string name="removed_all_inbox_msg">Removed all from inbox</string>
|
||||||
<string name="remove_all_inbox_confirmation_msg">Please confirm that you want to remove all from the inbox.</string>
|
<string name="remove_all_inbox_confirmation_msg">Please confirm that you want to remove all from the inbox.</string>
|
||||||
|
<string name="multi_select_mark_played_confirmation">Please confirm that you want to mark all selected items as played.</string>
|
||||||
|
<string name="multi_select_mark_unplayed_confirmation">Please confirm that you want to mark all selected items as unplayed.</string>
|
||||||
<string name="show_info_label">Show information</string>
|
<string name="show_info_label">Show information</string>
|
||||||
<string name="show_feed_settings_label">Show podcast settings</string>
|
<string name="show_feed_settings_label">Show podcast settings</string>
|
||||||
<string name="feed_settings_label">Podcast settings</string>
|
<string name="feed_settings_label">Podcast settings</string>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user