|
@ -36,6 +36,8 @@ import android.widget.Toast; |
|
|
|
|
|
|
|
|
import com.google.android.material.floatingactionbutton.FloatingActionButton; |
|
|
import com.google.android.material.floatingactionbutton.FloatingActionButton; |
|
|
|
|
|
|
|
|
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
|
import androidx.annotation.NonNull; |
|
|
import androidx.annotation.NonNull; |
|
|
import androidx.annotation.Nullable; |
|
|
import androidx.annotation.Nullable; |
|
|
import androidx.constraintlayout.widget.Group; |
|
|
import androidx.constraintlayout.widget.Group; |
|
@ -139,15 +141,38 @@ public class FragmentMessages extends FragmentEx { |
|
|
boolean debug = PreferenceManager.getDefaultSharedPreferences(getContext()).getBoolean("debug", false); |
|
|
boolean debug = PreferenceManager.getDefaultSharedPreferences(getContext()).getBoolean("debug", false); |
|
|
if (thread < 0) |
|
|
if (thread < 0) |
|
|
if (folder < 0) { |
|
|
if (folder < 0) { |
|
|
setSubtitle(R.string.title_folder_unified); |
|
|
|
|
|
|
|
|
db.folder().liveUnified().observe(getViewLifecycleOwner(), new Observer<List<TupleFolderEx>>() { |
|
|
|
|
|
@Override |
|
|
|
|
|
public void onChanged(List<TupleFolderEx> folders) { |
|
|
|
|
|
int unseen = 0; |
|
|
|
|
|
if (folders != null) |
|
|
|
|
|
for (TupleFolderEx folder : folders) |
|
|
|
|
|
unseen += folder.unseen; |
|
|
|
|
|
String name = getString(R.string.title_folder_unified); |
|
|
|
|
|
if (unseen > 0) |
|
|
|
|
|
setSubtitle(getString(R.string.title_folder_unseen, name, unseen)); |
|
|
|
|
|
else |
|
|
|
|
|
setSubtitle(name); |
|
|
|
|
|
} |
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
messages = new LivePagedListBuilder<>(db.message().pagedUnifiedInbox(debug), PAGE_SIZE).build(); |
|
|
messages = new LivePagedListBuilder<>(db.message().pagedUnifiedInbox(debug), PAGE_SIZE).build(); |
|
|
} else { |
|
|
} else { |
|
|
db.folder().liveFolderEx(folder).observe(getViewLifecycleOwner(), new Observer<TupleFolderEx>() { |
|
|
db.folder().liveFolderEx(folder).observe(getViewLifecycleOwner(), new Observer<TupleFolderEx>() { |
|
|
@Override |
|
|
@Override |
|
|
public void onChanged(@Nullable TupleFolderEx folder) { |
|
|
public void onChanged(@Nullable TupleFolderEx folder) { |
|
|
setSubtitle(folder == null ? null : Helper.localizeFolderName(getContext(), folder.name)); |
|
|
|
|
|
|
|
|
if (folder == null) |
|
|
|
|
|
setSubtitle(null); |
|
|
|
|
|
else { |
|
|
|
|
|
String name = Helper.localizeFolderName(getContext(), folder.name); |
|
|
|
|
|
if (folder.unseen > 0) |
|
|
|
|
|
setSubtitle(getString(R.string.title_folder_unseen, name, folder.unseen)); |
|
|
|
|
|
else |
|
|
|
|
|
setSubtitle(name); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
messages = new LivePagedListBuilder<>(db.message().pagedFolder(folder, debug), PAGE_SIZE).build(); |
|
|
messages = new LivePagedListBuilder<>(db.message().pagedFolder(folder, debug), PAGE_SIZE).build(); |
|
|
} |
|
|
} |
|
|
else { |
|
|
else { |
|
|