Added sort on snoozed

This commit is contained in:
M66B 2019-05-09 09:04:22 +02:00
parent e3b1aa13d6
commit 114f7276d9
4 changed files with 13 additions and 0 deletions

View File

@ -76,6 +76,7 @@ public interface DaoMessage {
" WHEN 'sender' = :sort THEN LOWER(message.sender)" +
" WHEN 'subject' = :sort THEN LOWER(message.subject)" +
" WHEN 'size' = :sort THEN -SUM(message.size)" +
" WHEN 'snoozed' = :sort THEN SUM(CASE WHEN message.ui_snoozed IS NULL THEN 0 ELSE 1 END) = 0" +
" ELSE 0" +
" END, message.received DESC")
@SuppressWarnings(RoomWarnings.CURSOR_MISMATCH)
@ -122,6 +123,7 @@ public interface DaoMessage {
" WHEN 'sender' = :sort THEN LOWER(message.sender)" +
" WHEN 'subject' = :sort THEN LOWER(message.subject)" +
" WHEN 'size' = :sort THEN -SUM(message.size)" +
" WHEN 'snoozed' = :sort THEN SUM(CASE WHEN message.ui_snoozed IS NULL THEN 0 ELSE 1 END) = 0" +
" ELSE 0" +
" END, message.received DESC")
@SuppressWarnings(RoomWarnings.CURSOR_MISMATCH)

View File

@ -2097,6 +2097,8 @@ public class FragmentMessages extends FragmentBase {
menu.findItem(R.id.menu_sort_on_subject).setChecked(true);
else if ("size".equals(sort))
menu.findItem(R.id.menu_sort_on_size).setChecked(true);
else if ("snoozed".equals(sort))
menu.findItem(R.id.menu_sort_on_snoozed).setChecked(true);
menu.findItem(R.id.menu_filter).setVisible(viewType != AdapterMessage.ViewType.SEARCH && !outbox);
menu.findItem(R.id.menu_filter_seen).setVisible(viewType != AdapterMessage.ViewType.THREAD);
@ -2152,6 +2154,11 @@ public class FragmentMessages extends FragmentBase {
onMenuSort("size");
return true;
case R.id.menu_sort_on_snoozed:
item.setChecked(true);
onMenuSort("snoozed");
return true;
case R.id.menu_filter_seen:
onMenuFilterRead(!item.isChecked());
return true;

View File

@ -40,6 +40,9 @@
<item
android:id="@+id/menu_sort_on_size"
android:title="@string/title_sort_on_size" />
<item
android:id="@+id/menu_sort_on_snoozed"
android:title="@string/title_sort_on_snoozed" />
</group>
</menu>
</item>

View File

@ -493,6 +493,7 @@
<string name="title_sort_on_sender">Sender</string>
<string name="title_sort_on_subject">Subject</string>
<string name="title_sort_on_size">Size</string>
<string name="title_sort_on_snoozed">Snoozed</string>
<string name="title_filter">Filter</string>
<string name="title_filter_seen">Read</string>