Allow selecting child folder of excluded target folder

This commit is contained in:
M66B
2019-05-26 13:15:56 +02:00
parent ef3a03ca87
commit 0f0e1935fc
3 changed files with 24 additions and 53 deletions

View File

@@ -78,6 +78,7 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
private int colorUnread;
private int textColorSecondary;
private List<Long> disabledIds = new ArrayList<>();
private List<TupleFolderEx> items = new ArrayList<>();
private NumberFormat nf = NumberFormat.getNumberInstance();
@@ -177,7 +178,7 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
view.setVisibility(hidden ? View.GONE : View.VISIBLE);
view.setActivated(folder.tbc != null || folder.tbd != null);
view.setAlpha(folder.hide ? Helper.LOW_LIGHT : 1.0f);
view.setAlpha(folder.hide || disabledIds.contains(folder.id) ? Helper.LOW_LIGHT : 1.0f);
if (textSize != 0)
tvName.setTextSize(TypedValue.COMPLEX_UNIT_PX, textSize);
@@ -317,8 +318,11 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
new Intent(ActivityView.ACTION_VIEW_MESSAGES)
.putExtra("account", folder.account)
.putExtra("folder", folder.id));
} else
} else {
if (disabledIds.contains(folder.id))
return;
listener.onFolderSelected(folder);
}
}
}
@@ -705,6 +709,10 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
setHasStableIds(true);
}
void setDisabled(List<Long> ids) {
disabledIds = ids;
}
public void set(@NonNull List<TupleFolderEx> folders) {
Log.i("Set folders=" + folders.size());