diff --git a/astrid/common-src/com/todoroo/andlib/utility/AndroidUtilities.java b/astrid/common-src/com/todoroo/andlib/utility/AndroidUtilities.java
index d3d3b7c8a..e8015658b 100644
--- a/astrid/common-src/com/todoroo/andlib/utility/AndroidUtilities.java
+++ b/astrid/common-src/com/todoroo/andlib/utility/AndroidUtilities.java
@@ -23,8 +23,8 @@ import android.text.InputType;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
-import android.view.ViewGroup;
import android.view.View.OnTouchListener;
+import android.view.ViewGroup;
import android.widget.TextView;
import com.todoroo.andlib.service.Autowired;
@@ -39,22 +39,6 @@ import com.todoroo.andlib.service.ExceptionService;
*/
public class AndroidUtilities {
- // --- activity management
-
- private static Activity currentlyActive = null;
-
- public static void setCurrentlyActive(Activity currentlyActive) {
- AndroidUtilities.currentlyActive = currentlyActive;
- }
-
- /**
- * @return our best-guess currently active activity. Maybe null, may
- * be out of view already.
- */
- public static Activity getCurrentlyActiveActivity() {
- return currentlyActive;
- }
-
// --- utility methods
private static class ExceptionHelper {
diff --git a/astrid/plugin-src/com/todoroo/astrid/notes/NoteDetailExposer.java b/astrid/plugin-src/com/todoroo/astrid/notes/NoteDetailExposer.java
index 2a14ed1e6..d08adf488 100644
--- a/astrid/plugin-src/com/todoroo/astrid/notes/NoteDetailExposer.java
+++ b/astrid/plugin-src/com/todoroo/astrid/notes/NoteDetailExposer.java
@@ -3,14 +3,17 @@
*/
package com.todoroo.astrid.notes;
+
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
+import com.timsu.astrid.R;
import com.todoroo.astrid.api.AstridApiConstants;
import com.todoroo.astrid.api.DetailExposer;
import com.todoroo.astrid.core.PluginServices;
import com.todoroo.astrid.model.Task;
+import com.todoroo.astrid.utility.Preferences;
/**
* Exposes Task Detail for notes
@@ -43,8 +46,14 @@ public class NoteDetailExposer extends BroadcastReceiver implements DetailExpose
@Override
public String getTaskDetails(Context context, long id, boolean extended) {
- if(!extended)
- return null;
+
+ if(Preferences.getBoolean(R.string.p_showNotes, false)) {
+ if(extended)
+ return null;
+ } else {
+ if(!extended)
+ return null;
+ }
Task task = PluginServices.getTaskService().fetchById(id, Task.NOTES);
if(task == null)
diff --git a/astrid/res/values/keys.xml b/astrid/res/values/keys.xml
index fb7fa3abf..9cfa210b2 100644
--- a/astrid/res/values/keys.xml
+++ b/astrid/res/values/keys.xml
@@ -123,6 +123,7 @@
colorize
font_size
+ notesVisible
diff --git a/astrid/res/values/strings-core.xml b/astrid/res/values/strings-core.xml
index fc2a8c522..c96065851 100644
--- a/astrid/res/values/strings-core.xml
+++ b/astrid/res/values/strings-core.xml
@@ -388,10 +388,16 @@ to the plugin creator for fastest service.
Task List Size
-
Font size on the main listing page
+
+ Show Notes In Task
+
+ Notes will be displayed when you tap a task
+
+ Notes will always displayed
+
New Task Defaults
diff --git a/astrid/res/xml/preferences.xml b/astrid/res/xml/preferences.xml
index 42933d0a9..59085a048 100644
--- a/astrid/res/xml/preferences.xml
+++ b/astrid/res/xml/preferences.xml
@@ -11,14 +11,11 @@
android:entryValues="@array/EPr_font_size"
android:title="@string/EPr_fontSize_title"
android:summary="@string/EPr_fontSize_desc" />
+
+
-
-
diff --git a/astrid/src/com/todoroo/astrid/activity/EditPreferences.java b/astrid/src/com/todoroo/astrid/activity/EditPreferences.java
index 6b77cc18c..eafe8f226 100644
--- a/astrid/src/com/todoroo/astrid/activity/EditPreferences.java
+++ b/astrid/src/com/todoroo/astrid/activity/EditPreferences.java
@@ -11,6 +11,7 @@ import java.util.Map.Entry;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
+import android.content.res.Resources;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.Preference.OnPreferenceClickListener;
@@ -31,6 +32,8 @@ import com.todoroo.astrid.model.Task;
import com.todoroo.astrid.service.StartupService;
import com.todoroo.astrid.service.TaskService;
import com.todoroo.astrid.utility.Constants;
+import com.todoroo.astrid.utility.Flags;
+import com.todoroo.astrid.utility.Preferences;
/**
* Displays the preference screen for users to edit their preferences
@@ -150,7 +153,16 @@ public class EditPreferences extends TodorooPreferences {
@Override
public void updatePreferences(Preference preference, Object value) {
- // nothing to do
+ Resources r = getResources();
+ // auto
+ if (r.getString(R.string.p_showNotes).equals(preference.getKey())) {
+ if (value != null && !(Boolean)value)
+ preference.setSummary(R.string.EPr_showNotes_desc_disabled);
+ else
+ preference.setSummary(R.string.EPr_showNotes_desc_enabled);
+ if((Boolean)value != Preferences.getBoolean(preference.getKey(), false))
+ Flags.set(Flags.REFRESH);
+ }
}
diff --git a/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java b/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java
index c90494dd4..7d45d9964 100644
--- a/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java
+++ b/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java
@@ -71,6 +71,7 @@ import com.todoroo.astrid.service.MetadataService;
import com.todoroo.astrid.service.StartupService;
import com.todoroo.astrid.service.TaskService;
import com.todoroo.astrid.utility.Constants;
+import com.todoroo.astrid.utility.Flags;
/**
* Primary activity for the Bente application. Shows a list of upcoming
@@ -446,8 +447,10 @@ public class TaskListActivity extends ListActivity implements OnScrollListener {
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
- if(hasFocus)
- AndroidUtilities.setCurrentlyActive(this);
+ if(hasFocus && Flags.checkAndClear(Flags.REFRESH)) {
+ taskAdapter.flushCaches();
+ loadTaskListContent(true);
+ }
}
@Override
diff --git a/astrid/src/com/todoroo/astrid/adapter/TaskAdapter.java b/astrid/src/com/todoroo/astrid/adapter/TaskAdapter.java
index e12635a31..5d7e4b973 100644
--- a/astrid/src/com/todoroo/astrid/adapter/TaskAdapter.java
+++ b/astrid/src/com/todoroo/astrid/adapter/TaskAdapter.java
@@ -14,12 +14,12 @@ import android.database.Cursor;
import android.graphics.Paint;
import android.text.Html;
import android.view.ContextMenu;
+import android.view.ContextMenu.ContextMenuInfo;
import android.view.LayoutInflater;
import android.view.View;
-import android.view.ViewGroup;
-import android.view.ContextMenu.ContextMenuInfo;
import android.view.View.OnClickListener;
import android.view.View.OnCreateContextMenuListener;
+import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;
import android.widget.CheckBox;
@@ -566,6 +566,7 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
public void notifyDataSetChanged() {
super.notifyDataSetChanged();
fontSize = Preferences.getIntegerFromString(R.string.p_fontSize, 20);
+
}
private final View.OnClickListener completeBoxListener = new View.OnClickListener() {
diff --git a/astrid/src/com/todoroo/astrid/service/UpgradeService.java b/astrid/src/com/todoroo/astrid/service/UpgradeService.java
index fa87c2adc..7254864d2 100644
--- a/astrid/src/com/todoroo/astrid/service/UpgradeService.java
+++ b/astrid/src/com/todoroo/astrid/service/UpgradeService.java
@@ -61,6 +61,7 @@ public final class UpgradeService {
"This update contains for free all of the " +
"powerpack's features for evaluation purposes",
"Fixed widget not updating when tasks are edited",
+ "Added a setting for displaying task notes",
"If you liked the old version, you can also go back by " +
"clicking here",
});
diff --git a/astrid/src/com/todoroo/astrid/utility/Flags.java b/astrid/src/com/todoroo/astrid/utility/Flags.java
new file mode 100644
index 000000000..3908433c2
--- /dev/null
+++ b/astrid/src/com/todoroo/astrid/utility/Flags.java
@@ -0,0 +1,22 @@
+package com.todoroo.astrid.utility;
+
+public class Flags {
+
+ private static int state = 0;
+
+ /**
+ * Whether to refresh the task list
+ */
+ public static final int REFRESH = 1;
+
+ public static boolean checkAndClear(int flag) {
+ boolean set = (state & flag) > 0;
+ state &= ~flag;
+ return set;
+ }
+
+ public static void set(int flag) {
+ state |= flag;
+ }
+
+}