mirror of https://github.com/M66B/FairEmail.git
Allow sorting thread on oldest first
This commit is contained in:
parent
648bb0b509
commit
ec636b338e
|
@ -149,9 +149,9 @@ public interface DaoMessage {
|
||||||
" AND message.thread = :thread" +
|
" AND message.thread = :thread" +
|
||||||
" AND (:id IS NULL OR message.id = :id)" +
|
" AND (:id IS NULL OR message.id = :id)" +
|
||||||
" AND (message.ui_hide = 0 OR :debug)" +
|
" AND (message.ui_hide = 0 OR :debug)" +
|
||||||
" ORDER BY message.received DESC" +
|
" ORDER BY CASE WHEN :ascending THEN message.received ELSE -message.received END" +
|
||||||
", CASE WHEN folder.type = '" + EntityFolder.ARCHIVE + "' THEN 1 ELSE 0 END")
|
", CASE WHEN folder.type = '" + EntityFolder.ARCHIVE + "' THEN 1 ELSE 0 END")
|
||||||
DataSource.Factory<Integer, TupleMessageEx> pagedThread(long account, String thread, Long id, boolean debug);
|
DataSource.Factory<Integer, TupleMessageEx> pagedThread(long account, String thread, Long id, boolean ascending, boolean debug);
|
||||||
|
|
||||||
@Query("SELECT account.name AS accountName" +
|
@Query("SELECT account.name AS accountName" +
|
||||||
", COUNT(message.id) AS count" +
|
", COUNT(message.id) AS count" +
|
||||||
|
|
|
@ -2486,8 +2486,17 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
|
||||||
ib.setImageResource(connected
|
ib.setImageResource(connected
|
||||||
? R.drawable.baseline_folder_special_24 : R.drawable.baseline_folder_open_24);
|
? R.drawable.baseline_folder_special_24 : R.drawable.baseline_folder_open_24);
|
||||||
|
|
||||||
menu.findItem(R.id.menu_sort_on).setVisible(
|
menu.findItem(R.id.menu_sort_on).setVisible(viewType != AdapterMessage.ViewType.SEARCH);
|
||||||
viewType == AdapterMessage.ViewType.UNIFIED || viewType == AdapterMessage.ViewType.FOLDER);
|
|
||||||
|
if (viewType == AdapterMessage.ViewType.THREAD) {
|
||||||
|
menu.findItem(R.id.menu_sort_on_time).setVisible(false);
|
||||||
|
menu.findItem(R.id.menu_sort_on_unread).setVisible(false);
|
||||||
|
menu.findItem(R.id.menu_sort_on_starred).setVisible(false);
|
||||||
|
menu.findItem(R.id.menu_sort_on_sender).setVisible(false);
|
||||||
|
menu.findItem(R.id.menu_sort_on_subject).setVisible(false);
|
||||||
|
menu.findItem(R.id.menu_sort_on_size).setVisible(false);
|
||||||
|
menu.findItem(R.id.menu_sort_on_snoozed).setVisible(false);
|
||||||
|
}
|
||||||
|
|
||||||
if ("time".equals(sort))
|
if ("time".equals(sort))
|
||||||
menu.findItem(R.id.menu_sort_on_time).setChecked(true);
|
menu.findItem(R.id.menu_sort_on_time).setChecked(true);
|
||||||
|
|
|
@ -118,6 +118,7 @@ public class ViewModelMessages extends ViewModel {
|
||||||
db.message().pagedThread(
|
db.message().pagedThread(
|
||||||
args.account, args.thread,
|
args.account, args.thread,
|
||||||
args.threading ? null : args.id,
|
args.threading ? null : args.id,
|
||||||
|
args.ascending,
|
||||||
args.debug), LOCAL_PAGE_SIZE);
|
args.debug), LOCAL_PAGE_SIZE);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue