diff options
author | drabux <drabux@fouragan.net> | 2015-01-24 13:17:19 -0500 |
---|---|---|
committer | drabux <drabux@fouragan.net> | 2015-01-24 13:18:29 -0500 |
commit | 9764b8093544857261bb5abf99c1ab9dbfcda65a (patch) | |
tree | 39a5c276e32f48f9d687a7430c16f627a8e38b58 /app/src | |
parent | 520ed8327c5d04134619f47eebf3c81615665f13 (diff) | |
download | AntennaPod-9764b8093544857261bb5abf99c1ab9dbfcda65a.zip |
Options to sort queue refactor, add sort by alpha and duration
Diffstat (limited to 'app/src')
-rw-r--r-- | app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java | 17 | ||||
-rw-r--r-- | app/src/main/res/menu/queue.xml | 50 |
2 files changed, 58 insertions, 9 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java index 185af0e93..ca8543b4c 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java @@ -40,6 +40,7 @@ import de.danoeh.antennapod.core.storage.DBReader; import de.danoeh.antennapod.core.storage.DBTasks; import de.danoeh.antennapod.core.storage.DBWriter; import de.danoeh.antennapod.core.storage.DownloadRequester; +import de.danoeh.antennapod.core.util.QueueSorter; import de.danoeh.antennapod.menuhandler.MenuItemUtils; import de.danoeh.antennapod.menuhandler.NavDrawerActivity; @@ -174,11 +175,23 @@ public class QueueFragment extends Fragment { DBTasks.refreshAllFeeds(getActivity(), feeds); } return true; + case R.id.queue_sort_alpha_asc: + QueueSorter.sort(getActivity(), QueueSorter.Rule.ALPHA_ASC, true); + return true; + case R.id.queue_sort_alpha_desc: + QueueSorter.sort(getActivity(), QueueSorter.Rule.ALPHA_DESC, true); + return true; case R.id.queue_sort_date_asc: - DBWriter.sortQueueItemByDate(getActivity(), true, true); + QueueSorter.sort(getActivity(), QueueSorter.Rule.DATE_ASC, true); return true; case R.id.queue_sort_date_desc: - DBWriter.sortQueueItemByDate(getActivity(), false, true); + QueueSorter.sort(getActivity(), QueueSorter.Rule.DATE_DESC, true); + return true; + case R.id.queue_sort_duration_asc: + QueueSorter.sort(getActivity(), QueueSorter.Rule.DURATION_ASC, true); + return true; + case R.id.queue_sort_duration_desc: + QueueSorter.sort(getActivity(), QueueSorter.Rule.DURATION_DESC, true); return true; default: return false; diff --git a/app/src/main/res/menu/queue.xml b/app/src/main/res/menu/queue.xml index fa4d21b21..b85279e5a 100644 --- a/app/src/main/res/menu/queue.xml +++ b/app/src/main/res/menu/queue.xml @@ -15,13 +15,49 @@ android:title="@string/sort"> <menu> - <item - android:id="@+id/queue_sort_date_asc" - android:title="@string/date_asc"/> - <item - android:id="@+id/queue_sort_date_desc" - android:title="@string/date_desc"/> + <item + android:id="@+id/queue_sort_alpha" + android:title="@string/alpha"> + + <menu> + <item + android:id="@+id/queue_sort_alpha_asc" + android:title="@string/ascending"/> + <item + android:id="@+id/queue_sort_alpha_desc" + android:title="@string/descending"/> + </menu> + </item> + + <item + android:id="@+id/queue_sort_date" + android:title="@string/date"> + + <menu> + <item + android:id="@+id/queue_sort_date_asc" + android:title="@string/ascending"/> + <item + android:id="@+id/queue_sort_date_desc" + android:title="@string/descending"/> + </menu> + </item> + + <item + android:id="@+id/queue_sort_duration" + android:title="@string/duration"> + + <menu> + <item + android:id="@+id/queue_sort_duration_asc" + android:title="@string/ascending"/> + <item + android:id="@+id/queue_sort_duration_desc" + android:title="@string/descending"/> + </menu> + </item> + </menu> - </item> + </item> </menu> |