aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/CacheDetailActivity.java
diff options
context:
space:
mode:
authorSamuel Tardieu <sam@rfc1149.net>2013-04-06 16:42:14 +0200
committerSamuel Tardieu <sam@rfc1149.net>2013-04-06 16:42:14 +0200
commit64493f9a529f452d439242793973d6131c1b2536 (patch)
tree020208b30f7c290604335638e5753f0a4ed87f5b /main/src/cgeo/geocaching/CacheDetailActivity.java
parent0856587453f4df9379cda95891b9a785f3673095 (diff)
parente46b4a46ff6c3ab07ad3172f3c39c8c98202ed46 (diff)
downloadcgeo-64493f9a529f452d439242793973d6131c1b2536.zip
cgeo-64493f9a529f452d439242793973d6131c1b2536.tar.gz
cgeo-64493f9a529f452d439242793973d6131c1b2536.tar.bz2
Merge branch 'issue-2598' into upstream
Diffstat (limited to 'main/src/cgeo/geocaching/CacheDetailActivity.java')
-rw-r--r--main/src/cgeo/geocaching/CacheDetailActivity.java37
1 files changed, 22 insertions, 15 deletions
diff --git a/main/src/cgeo/geocaching/CacheDetailActivity.java b/main/src/cgeo/geocaching/CacheDetailActivity.java
index ea8794f..9347db9 100644
--- a/main/src/cgeo/geocaching/CacheDetailActivity.java
+++ b/main/src/cgeo/geocaching/CacheDetailActivity.java
@@ -23,12 +23,13 @@ import cgeo.geocaching.ui.AnchorAwareLinkMovementMethod;
import cgeo.geocaching.ui.CacheDetailsCreator;
import cgeo.geocaching.ui.CoordinatesFormatSwitcher;
import cgeo.geocaching.ui.DecryptTextClickListener;
+import cgeo.geocaching.ui.EditNoteDialog;
+import cgeo.geocaching.ui.EditNoteDialog.EditNoteDialogListener;
import cgeo.geocaching.ui.Formatter;
import cgeo.geocaching.ui.ImagesList;
import cgeo.geocaching.ui.ImagesList.ImageType;
import cgeo.geocaching.ui.LoggingUI;
import cgeo.geocaching.ui.WeakReferenceHandler;
-import cgeo.geocaching.ui.dialog.EditorDialog;
import cgeo.geocaching.utils.BaseUtils;
import cgeo.geocaching.utils.CancellableHandler;
import cgeo.geocaching.utils.ClipboardUtils;
@@ -66,6 +67,7 @@ import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
+import android.support.v4.app.FragmentManager;
import android.text.Editable;
import android.text.Html;
import android.text.Spannable;
@@ -113,7 +115,8 @@ import java.util.regex.Pattern;
*
* e.g. details, description, logs, waypoints, inventory...
*/
-public class CacheDetailActivity extends AbstractViewPagerActivity<CacheDetailActivity.Page> {
+public class CacheDetailActivity extends AbstractViewPagerActivity<CacheDetailActivity.Page>
+ implements EditNoteDialogListener {
private static final int MENU_FIELD_COPY = 1;
private static final int MENU_FIELD_TRANSLATE = 2;
@@ -140,6 +143,8 @@ public class CacheDetailActivity extends AbstractViewPagerActivity<CacheDetailAc
private final Progress progress = new Progress();
private SearchResult search;
+ private EditNoteDialogListener editNoteDialogListener;
+
private final GeoDirHandler locationUpdater = new GeoDirHandler() {
@Override
public void updateGeoData(final IGeoData geo) {
@@ -1779,16 +1784,16 @@ public class CacheDetailActivity extends AbstractViewPagerActivity<CacheDetailAc
personalNoteEdit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- EditorDialog editor = new EditorDialog(CacheDetailActivity.this, personalNoteView.getText());
- editor.setOnEditorUpdate(new EditorDialog.EditorUpdate() {
+ editNoteDialogListener = new EditNoteDialogListener() {
@Override
- public void update(CharSequence editorText) {
- cache.setPersonalNote(editorText.toString());
+ public void onFinishEditNoteDialog(final String note) {
+ cache.setPersonalNote(note);
setPersonalNote(personalNoteView);
- cgData.saveCache(cache, EnumSet.of(SaveFlag.SAVE_DB));
- }
- });
- editor.show();
+ cgData.saveCache(cache, EnumSet.of(SaveFlag.SAVE_DB)); }
+ };
+ final FragmentManager fm = getSupportFragmentManager();
+ final EditNoteDialog dialog = new EditNoteDialog(cache.getPersonalNote());
+ dialog.show(fm, "fragment_edit_note");
}
});
} else {
@@ -1851,13 +1856,10 @@ public class CacheDetailActivity extends AbstractViewPagerActivity<CacheDetailAc
personalNoteView.setText(personalNote, TextView.BufferType.SPANNABLE);
if (StringUtils.isNotBlank(personalNote)) {
personalNoteView.setVisibility(View.VISIBLE);
- }
- else {
+ } else {
personalNoteView.setVisibility(View.GONE);
}
- }
-
- private void loadLongDescription() {
+ }private void loadLongDescription() {
Button showDesc = (Button) view.findViewById(R.id.show_description);
showDesc.setVisibility(View.GONE);
showDesc.setOnClickListener(null);
@@ -1869,6 +1871,11 @@ public class CacheDetailActivity extends AbstractViewPagerActivity<CacheDetailAc
}
+ @Override
+ public void onFinishEditNoteDialog(final String note) {
+ editNoteDialogListener.onFinishEditNoteDialog(note);
+ }
+
private static class HtmlImageCounter implements Html.ImageGetter {
private int imageCount = 0;