diff --git a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksDetailExposer.java b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksDetailExposer.java
index 9c17880e0..30aba7e66 100644
--- a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksDetailExposer.java
+++ b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksDetailExposer.java
@@ -7,6 +7,7 @@ import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
+import com.todoroo.andlib.data.AbstractModel;
import com.todoroo.andlib.service.Autowired;
import com.todoroo.andlib.service.ContextManager;
import com.todoroo.andlib.service.DependencyInjectionService;
@@ -73,6 +74,10 @@ public class GtasksDetailExposer extends BroadcastReceiver {
builder.append("
").append(listName); //$NON-NLS-1$
+ if(metadata.getValue(GtasksMetadata.PARENT_TASK) > AbstractModel.NO_ID) {
+ builder.append(DETAIL_SEPARATOR).append("Parent: ").append(metadata.getValue(GtasksMetadata.PARENT_TASK));
+ }
+
return builder.toString();
}
diff --git a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksIndentAction.java b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksIndentAction.java
index 3a3840990..c866bdef2 100644
--- a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksIndentAction.java
+++ b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksIndentAction.java
@@ -43,6 +43,8 @@ abstract public class GtasksIndentAction extends BroadcastReceiver {
metadata.setValue(GtasksMetadata.INDENT, newIndent);
PluginServices.getMetadataService().save(metadata);
+ gtasksMetadataService.updateMetadataForList(metadata.getValue(GtasksMetadata.LIST_ID));
+
Flags.set(Flags.REFRESH);
Toast.makeText(context, context.getString(R.string.gtasks_indent_toast, newIndent),
Toast.LENGTH_SHORT).show();
diff --git a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksMetadataService.java b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksMetadataService.java
index 12e5a717e..5be214c32 100644
--- a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksMetadataService.java
+++ b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksMetadataService.java
@@ -74,11 +74,13 @@ public final class GtasksMetadataService extends SyncMetadataService cursor = PluginServices.getTaskService().fetchFiltered(filter.sqlQuery, null, Task.ID);
try {
+ Long[] ids = new Long[cursor.getCount()];
int order = 0;
int previousIndent = -1;
Stack taskHierarchyStack = new Stack();
for(cursor.moveToFirst(); !cursor.isAfterLast(); cursor.moveToNext()) {
long taskId = cursor.getLong(0);
+ ids[order] = taskId;
Metadata metadata = getTaskMetadata(taskId);
if(metadata == null)
continue;
@@ -86,19 +88,27 @@ public final class GtasksMetadataService extends SyncMetadataService 0) {
- if(taskHierarchyStack.isEmpty())
+ if(taskHierarchyStack.isEmpty()) {
+ metadata.setValue(GtasksMetadata.PARENT_TASK, 0L);
metadata.setValue(GtasksMetadata.INDENT, 0);
- else
+ } else
metadata.setValue(GtasksMetadata.PARENT_TASK, taskHierarchyStack.peek());
+ } else {
+ metadata.setValue(GtasksMetadata.PARENT_TASK, 0L);
}
PluginServices.getMetadataService().save(metadata);
taskHierarchyStack.push(taskId);
+ previousIndent = indent;
}
+
+ PluginServices.getTaskService().clearDetails(Task.ID.in(ids));
} finally {
cursor.close();
}
diff --git a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksOrderAction.java b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksOrderAction.java
index e56673037..6194f996d 100644
--- a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksOrderAction.java
+++ b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksOrderAction.java
@@ -47,7 +47,8 @@ abstract public class GtasksOrderAction extends BroadcastReceiver {
return;
metadata.setValue(GtasksMetadata.ORDER, newOrder);
- TodorooCursor cursor = PluginServices.getMetadataService().query(Query.select(Metadata.ID, GtasksMetadata.INDENT).where(
+ TodorooCursor cursor = PluginServices.getMetadataService().query(Query.select(Metadata.ID,
+ Metadata.TASK, GtasksMetadata.INDENT).where(
Criterion.and(Metadata.KEY.eq(GtasksMetadata.METADATA_KEY),
GtasksMetadata.LIST_ID.eq(metadata.getValue(GtasksMetadata.LIST_ID)),
GtasksMetadata.ORDER.eq(newOrder))));
diff --git a/astrid/src/com/todoroo/astrid/utility/Constants.java b/astrid/src/com/todoroo/astrid/utility/Constants.java
index 810e38189..7f5e820a9 100644
--- a/astrid/src/com/todoroo/astrid/utility/Constants.java
+++ b/astrid/src/com/todoroo/astrid/utility/Constants.java
@@ -30,7 +30,7 @@ public final class Constants {
/**
* Whether to turn on debugging logging and UI
*/
- public static final boolean DEBUG = false;
+ public static final boolean DEBUG = true;
/**
* Upgrade time