summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authordrabux <drabux@fouragan.net>2015-01-24 13:17:19 -0500
committerdrabux <drabux@fouragan.net>2015-01-24 13:18:29 -0500
commit9764b8093544857261bb5abf99c1ab9dbfcda65a (patch)
tree39a5c276e32f48f9d687a7430c16f627a8e38b58 /app
parent520ed8327c5d04134619f47eebf3c81615665f13 (diff)
downloadAntennaPod-9764b8093544857261bb5abf99c1ab9dbfcda65a.zip
Options to sort queue refactor, add sort by alpha and duration
Diffstat (limited to 'app')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java17
-rw-r--r--app/src/main/res/menu/queue.xml50
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>