POP3 multiple select

This commit is contained in:
M66B
2019-02-11 20:40:02 +00:00
parent 53cf0f98f1
commit 82e7ddd8c3
2 changed files with 71 additions and 45 deletions

View File

@@ -25,6 +25,7 @@ import androidx.recyclerview.widget.RecyclerView;
public class SelectionPredicateMessage extends SelectionTracker.SelectionPredicate<Long> {
private boolean enabled;
private boolean folder;
private RecyclerView recyclerView;
SelectionPredicateMessage(RecyclerView recyclerView) {
@@ -36,6 +37,10 @@ public class SelectionPredicateMessage extends SelectionTracker.SelectionPredica
this.enabled = enabled;
}
void setFolder(boolean folder) {
this.folder = folder;
}
@Override
public boolean canSetStateForKey(@NonNull Long key, boolean nextState) {
if (!enabled)
@@ -43,8 +48,10 @@ public class SelectionPredicateMessage extends SelectionTracker.SelectionPredica
AdapterMessage adapter = (AdapterMessage) recyclerView.getAdapter();
TupleMessageEx message = adapter.getItemForKey(key);
if (message == null)
return false;
if (message != null && message.uid != null)
if (message.uid != null || (folder && message.accountPop))
return true;
return false;
@@ -57,8 +64,10 @@ public class SelectionPredicateMessage extends SelectionTracker.SelectionPredica
AdapterMessage adapter = (AdapterMessage) recyclerView.getAdapter();
TupleMessageEx message = adapter.getItemAtPosition(position);
if (message == null)
return false;
if (message != null && message.uid != null)
if (message.uid != null || (folder && message.accountPop))
return true;
return false;