diff --git a/astrid/AndroidManifest.xml b/astrid/AndroidManifest.xml index 53c40bc4e..8b9693611 100644 --- a/astrid/AndroidManifest.xml +++ b/astrid/AndroidManifest.xml @@ -190,6 +190,14 @@ + + + + + + + + + * + */ +public class NoteDetailExposer extends BroadcastReceiver { + + private static TaskService staticTaskService = null; + + @Autowired + TaskService taskService; + + @Override + public void onReceive(Context context, Intent intent) { + // get tags associated with this task + long taskId = intent.getLongExtra(AstridApiConstants.EXTRAS_TASK_ID, -1); + if(taskId == -1) + return; + + if(staticTaskService == null) { + DependencyInjectionService.getInstance().inject(this); + staticTaskService = taskService; + } + + Task task = taskService.fetchById(taskId, Task.NOTES); + if(task == null) + return; + String notes = task.getValue(Task.NOTES); + if(notes.length() == 0) + return; + + TaskDetail taskDetail = new TaskDetail(NotesPlugin.IDENTIFIER, + "Notes: " + notes); + + // transmit + TaskDetail[] details = new TaskDetail[1]; + details[0] = taskDetail; + Intent broadcastIntent = new Intent(AstridApiConstants.BROADCAST_SEND_DETAILS); + broadcastIntent.putExtra(AstridApiConstants.EXTRAS_ITEMS, details); + broadcastIntent.putExtra(AstridApiConstants.EXTRAS_TASK_ID, taskId); + context.sendBroadcast(broadcastIntent, AstridApiConstants.PERMISSION_READ); + } + +} diff --git a/astrid/plugin-src/com/todoroo/astrid/notes/NotesPlugin.java b/astrid/plugin-src/com/todoroo/astrid/notes/NotesPlugin.java new file mode 100644 index 000000000..de8b5e77b --- /dev/null +++ b/astrid/plugin-src/com/todoroo/astrid/notes/NotesPlugin.java @@ -0,0 +1,24 @@ +package com.todoroo.astrid.notes; + +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; + +import com.todoroo.astrid.api.AstridApiConstants; +import com.todoroo.astrid.api.Plugin; + +public class NotesPlugin extends BroadcastReceiver { + + static final String IDENTIFIER = "notes"; + + @Override + public void onReceive(Context context, Intent intent) { + Plugin plugin = new Plugin(IDENTIFIER, "Notes", "Todoroo", + "Lets you add and view notes for a task."); + + Intent broadcastIntent = new Intent(AstridApiConstants.BROADCAST_SEND_PLUGINS); + broadcastIntent.putExtra(AstridApiConstants.EXTRAS_PLUGIN, plugin); + context.sendBroadcast(broadcastIntent, AstridApiConstants.PERMISSION_READ); + } + +}