summaryrefslogtreecommitdiff
path: root/src/de/podfetcher/fragment/QueueFragment.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/de/podfetcher/fragment/QueueFragment.java')
-rw-r--r--src/de/podfetcher/fragment/QueueFragment.java43
1 files changed, 38 insertions, 5 deletions
diff --git a/src/de/podfetcher/fragment/QueueFragment.java b/src/de/podfetcher/fragment/QueueFragment.java
index 2afaca35e..b169215a9 100644
--- a/src/de/podfetcher/fragment/QueueFragment.java
+++ b/src/de/podfetcher/fragment/QueueFragment.java
@@ -1,5 +1,10 @@
package de.podfetcher.fragment;
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+
import com.actionbarsherlock.view.ActionMode;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuItem;
@@ -16,15 +21,34 @@ public class QueueFragment extends ItemlistFragment {
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
super.onCreateActionMode(mode, menu);
- menu.add(Menu.NONE, R.id.move_up_item, Menu.NONE, R.string.move_up_label);
- menu.add(Menu.NONE, R.id.move_down_item, Menu.NONE, R.string.move_down_label);
+ menu.add(Menu.NONE, R.id.move_up_item, Menu.NONE,
+ R.string.move_up_label);
+ menu.add(Menu.NONE, R.id.move_down_item, Menu.NONE,
+ R.string.move_down_label);
return true;
}
@Override
+ public void onPause() {
+ super.onPause();
+ try {
+ getActivity().unregisterReceiver(queueUpdate);
+ } catch (IllegalArgumentException e) {
+
+ }
+ }
+
+ @Override
+ public void onResume() {
+ super.onResume();
+ getActivity().registerReceiver(queueUpdate,
+ new IntentFilter(FeedManager.ACTION_QUEUE_UPDATE));
+ }
+
+ @Override
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
boolean handled = false;
- switch(item.getItemId()) {
+ switch (item.getItemId()) {
case R.id.move_up_item:
manager.moveQueueItem(getActivity(), selectedItem, -1);
handled = true;
@@ -33,12 +57,21 @@ public class QueueFragment extends ItemlistFragment {
manager.moveQueueItem(getActivity(), selectedItem, 1);
handled = true;
break;
- default:
- handled = super.onActionItemClicked(mode, item);
+ default:
+ handled = super.onActionItemClicked(mode, item);
}
fila.notifyDataSetChanged();
mode.finish();
return handled;
}
+ private BroadcastReceiver queueUpdate = new BroadcastReceiver() {
+
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ fila.notifyDataSetChanged();
+ }
+
+ };
+
}