aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/CachePopupFragment.java
diff options
context:
space:
mode:
Diffstat (limited to 'main/src/cgeo/geocaching/CachePopupFragment.java')
-rw-r--r--main/src/cgeo/geocaching/CachePopupFragment.java30
1 files changed, 14 insertions, 16 deletions
diff --git a/main/src/cgeo/geocaching/CachePopupFragment.java b/main/src/cgeo/geocaching/CachePopupFragment.java
index b2af12c..ff4348a 100644
--- a/main/src/cgeo/geocaching/CachePopupFragment.java
+++ b/main/src/cgeo/geocaching/CachePopupFragment.java
@@ -2,8 +2,8 @@ package cgeo.geocaching;
import cgeo.geocaching.activity.Progress;
import cgeo.geocaching.apps.cache.navi.NavigationAppFactory;
-import cgeo.geocaching.geopoint.Geopoint;
import cgeo.geocaching.list.StoredList;
+import cgeo.geocaching.location.Geopoint;
import cgeo.geocaching.network.Network;
import cgeo.geocaching.settings.Settings;
import cgeo.geocaching.ui.CacheDetailsCreator;
@@ -17,13 +17,12 @@ import rx.functions.Action0;
import rx.functions.Action1;
import rx.schedulers.Schedulers;
-import android.content.Context;
-import android.content.Intent;
import android.content.res.Configuration;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.v4.app.DialogFragment;
+import android.support.v4.app.FragmentActivity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -135,20 +134,25 @@ public class CachePopupFragment extends AbstractDialogFragment {
public void call(final Integer selectedListId) {
storeCache(selectedListId);
}
- }, true, StoredList.TEMPORARY_LIST_ID);
+ }, true, StoredList.TEMPORARY_LIST.id);
} else {
- storeCache(StoredList.TEMPORARY_LIST_ID);
+ storeCache(StoredList.TEMPORARY_LIST.id);
}
}
protected void storeCache(final int listId) {
final StoreCacheHandler storeCacheHandler = new StoreCacheHandler(R.string.cache_dialog_offline_save_message);
- progress.show(getActivity(), res.getString(R.string.cache_dialog_offline_save_title), res.getString(R.string.cache_dialog_offline_save_message), true, storeCacheHandler.cancelMessage());
- Schedulers.io().createWorker().schedule(new Action0() {
+ final FragmentActivity activity = getActivity();
+ progress.show(activity, res.getString(R.string.cache_dialog_offline_save_title), res.getString(R.string.cache_dialog_offline_save_message), true, storeCacheHandler.cancelMessage());
+ RxUtils.andThenOnUi(Schedulers.io(), new Action0() {
@Override
public void call() {
cache.store(listId, storeCacheHandler);
- getActivity().supportInvalidateOptionsMenu();
+ }
+ }, new Action0() {
+ @Override
+ public void call() {
+ activity.supportInvalidateOptionsMenu();
}
});
}
@@ -162,7 +166,7 @@ public class CachePopupFragment extends AbstractDialogFragment {
return;
}
- if (!Network.isNetworkConnected(getActivity())) {
+ if (!Network.isNetworkConnected()) {
showToast(getString(R.string.err_server));
return;
}
@@ -183,7 +187,7 @@ public class CachePopupFragment extends AbstractDialogFragment {
final DropCacheHandler dropCacheHandler = new DropCacheHandler();
progress.show(getActivity(), res.getString(R.string.cache_dialog_offline_drop_title), res.getString(R.string.cache_dialog_offline_drop_message), true, null);
- cache.drop(dropCacheHandler, Schedulers.io());
+ cache.drop(dropCacheHandler);
}
}
@@ -212,12 +216,6 @@ public class CachePopupFragment extends AbstractDialogFragment {
getActivity().finish();
}
- public static void startActivity(final Context context, final String geocode) {
- final Intent popupIntent = new Intent(context, CachePopup.class);
- popupIntent.putExtra(Intents.EXTRA_GEOCODE, geocode);
- context.startActivity(popupIntent);
- }
-
@Override
protected Geopoint getCoordinates() {
if (cache == null) {