Created a warning for not setting setContext, and making sure that we nail all of the cases in various classes

pull/14/head
Tim Su 15 years ago
parent bebd8db682
commit f51c3269e8

@ -95,10 +95,16 @@
<echo message="Astrid: version ${manifest.version.code}, named ${manifest.version.name}" /> <echo message="Astrid: version ${manifest.version.code}, named ${manifest.version.name}" />
</target> </target>
<target name="warnings">
<echo>====== context classes without setContext =====</echo>
<exec executable="sh">
<arg value="-c" />
<arg value="cd bin/source; grep -L '\(setContext\|DependencyInjectionService\)' `grep -l -R '^\(public\).*class .* \(Activity\|Service\|BroadcastReceiver\)' .`" />
</exec>
</target>
<!-- post build: rename apk --> <!-- post build: rename apk -->
<target name="release" depends="get-version, android_rules.release"> <target name="release" depends="get-version, warnings, android_rules.release">
<property name="out.release.package" <property name="out.release.package"
location="${out.absolute.dir}/${ant.project.name}-release.apk" /> location="${out.absolute.dir}/${ant.project.name}-release.apk" />
<property name="out.final.package" <property name="out.final.package"

@ -11,6 +11,7 @@ import android.content.Intent;
import android.text.format.DateUtils; import android.text.format.DateUtils;
import com.todoroo.andlib.data.TodorooCursor; import com.todoroo.andlib.data.TodorooCursor;
import com.todoroo.andlib.service.ContextManager;
import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.api.AstridApiConstants;
import com.todoroo.astrid.data.Metadata; import com.todoroo.astrid.data.Metadata;
@ -25,6 +26,7 @@ public class AlarmDetailExposer extends BroadcastReceiver {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
ContextManager.setContext(context);
// get tags associated with this task // get tags associated with this task
long taskId = intent.getLongExtra(AstridApiConstants.EXTRAS_TASK_ID, -1); long taskId = intent.getLongExtra(AstridApiConstants.EXTRAS_TASK_ID, -1);
if(taskId == -1) if(taskId == -1)

@ -7,6 +7,7 @@ import android.content.Context;
import android.content.Intent; import android.content.Intent;
import com.todoroo.andlib.data.TodorooCursor; import com.todoroo.andlib.data.TodorooCursor;
import com.todoroo.andlib.service.ContextManager;
import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.api.AstridApiConstants;
import com.todoroo.astrid.data.Metadata; import com.todoroo.astrid.data.Metadata;
@ -15,6 +16,7 @@ public class AlarmTaskRepeatListener extends BroadcastReceiver {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
ContextManager.setContext(context);
long taskId = intent.getLongExtra(AstridApiConstants.EXTRAS_TASK_ID, -1); long taskId = intent.getLongExtra(AstridApiConstants.EXTRAS_TASK_ID, -1);
if(taskId == -1) if(taskId == -1)
return; return;

@ -7,12 +7,14 @@ import android.view.View.OnClickListener;
import android.widget.Button; import android.widget.Button;
import com.timsu.astrid.R; import com.timsu.astrid.R;
import com.todoroo.andlib.service.ContextManager;
public class BackupActivity extends Activity { public class BackupActivity extends Activity {
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
ContextManager.setContext(this);
setContentView(R.layout.backup_activity); setContentView(R.layout.backup_activity);
setTitle(R.string.backup_BAc_title); setTitle(R.string.backup_BAc_title);

@ -10,6 +10,7 @@ import android.content.res.Resources;
import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.BitmapDrawable;
import com.timsu.astrid.R; import com.timsu.astrid.R;
import com.todoroo.andlib.service.ContextManager;
import com.todoroo.andlib.sql.Criterion; import com.todoroo.andlib.sql.Criterion;
import com.todoroo.andlib.sql.Order; import com.todoroo.andlib.sql.Order;
import com.todoroo.andlib.sql.Query; import com.todoroo.andlib.sql.Query;
@ -35,6 +36,7 @@ public final class CoreFilterExposer extends BroadcastReceiver {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
Resources r = context.getResources(); Resources r = context.getResources();
ContextManager.setContext(context);
// core filters // core filters
Filter inbox = buildInboxFilter(r); Filter inbox = buildInboxFilter(r);

@ -8,6 +8,7 @@ import com.commonsware.cwac.tlv.TouchListView.SwipeListener;
import com.timsu.astrid.R; import com.timsu.astrid.R;
import com.todoroo.andlib.data.Property.IntegerProperty; import com.todoroo.andlib.data.Property.IntegerProperty;
import com.todoroo.andlib.service.Autowired; import com.todoroo.andlib.service.Autowired;
import com.todoroo.andlib.service.DependencyInjectionService;
import com.todoroo.andlib.utility.DialogUtilities; import com.todoroo.andlib.utility.DialogUtilities;
import com.todoroo.andlib.utility.Preferences; import com.todoroo.andlib.utility.Preferences;
import com.todoroo.astrid.activity.DraggableTaskListActivity; import com.todoroo.astrid.activity.DraggableTaskListActivity;
@ -24,6 +25,7 @@ public class GtasksListActivity extends DraggableTaskListActivity {
@Override @Override
public void onCreate(Bundle icicle) { public void onCreate(Bundle icicle) {
super.onCreate(icicle); super.onCreate(icicle);
DependencyInjectionService.getInstance().inject(this);
getTouchListView().setDropListener(dropListener); getTouchListView().setDropListener(dropListener);
getTouchListView().setSwipeListener(swipeListener); getTouchListView().setSwipeListener(swipeListener);

@ -1,11 +1,15 @@
package com.todoroo.astrid.producteev; package com.todoroo.astrid.producteev;
import java.util.Set;
import java.util.TreeSet;
import android.content.BroadcastReceiver; import android.content.BroadcastReceiver;
import android.content.ContentValues; import android.content.ContentValues;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.content.res.Resources; import android.content.res.Resources;
import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.BitmapDrawable;
import com.timsu.astrid.R; import com.timsu.astrid.R;
import com.todoroo.andlib.sql.Criterion; import com.todoroo.andlib.sql.Criterion;
import com.todoroo.andlib.sql.Join; import com.todoroo.andlib.sql.Join;
@ -23,9 +27,6 @@ import com.todoroo.astrid.producteev.sync.ProducteevDataService;
import com.todoroo.astrid.producteev.sync.ProducteevTask; import com.todoroo.astrid.producteev.sync.ProducteevTask;
import com.todoroo.astrid.producteev.sync.ProducteevUser; import com.todoroo.astrid.producteev.sync.ProducteevUser;
import java.util.Set;
import java.util.TreeSet;
public class ProducteevCustomFilterCriteriaExposer extends BroadcastReceiver { public class ProducteevCustomFilterCriteriaExposer extends BroadcastReceiver {
private static final String IDENTIFIER_PRODUCTEEV_WORKSPACE = "producteev_workspace"; //$NON-NLS-1$ private static final String IDENTIFIER_PRODUCTEEV_WORKSPACE = "producteev_workspace"; //$NON-NLS-1$
private static final String IDENTIFIER_PRODUCTEEV_ASSIGNEE = "producteev_assignee"; //$NON-NLS-1$ private static final String IDENTIFIER_PRODUCTEEV_ASSIGNEE = "producteev_assignee"; //$NON-NLS-1$

@ -9,6 +9,7 @@ import android.content.Intent;
import com.timsu.astrid.R; import com.timsu.astrid.R;
import com.todoroo.andlib.data.TodorooCursor; import com.todoroo.andlib.data.TodorooCursor;
import com.todoroo.andlib.service.ContextManager;
import com.todoroo.andlib.utility.Preferences; import com.todoroo.andlib.utility.Preferences;
import com.todoroo.astrid.adapter.TaskAdapter; import com.todoroo.astrid.adapter.TaskAdapter;
import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.api.AstridApiConstants;
@ -30,6 +31,7 @@ public class ProducteevDetailExposer extends BroadcastReceiver {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
ContextManager.setContext(context);
long taskId = intent.getLongExtra(AstridApiConstants.EXTRAS_TASK_ID, -1); long taskId = intent.getLongExtra(AstridApiConstants.EXTRAS_TASK_ID, -1);
if(taskId == -1) if(taskId == -1)
return; return;

@ -11,6 +11,7 @@ import android.content.Context;
import android.content.Intent; import android.content.Intent;
import com.timsu.astrid.R; import com.timsu.astrid.R;
import com.todoroo.andlib.service.ContextManager;
import com.todoroo.andlib.sql.Criterion; import com.todoroo.andlib.sql.Criterion;
import com.todoroo.andlib.sql.QueryTemplate; import com.todoroo.andlib.sql.QueryTemplate;
import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.api.AstridApiConstants;
@ -78,6 +79,7 @@ public class ProducteevFilterExposer extends BroadcastReceiver {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
ContextManager.setContext(context);
// if we aren't logged in, don't expose features // if we aren't logged in, don't expose features
if(!ProducteevUtilities.INSTANCE.isLoggedIn()) if(!ProducteevUtilities.INSTANCE.isLoggedIn())
return; return;

@ -4,6 +4,7 @@ import android.content.BroadcastReceiver;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import com.todoroo.andlib.service.ContextManager;
import com.todoroo.astrid.service.AstridDependencyInjector; import com.todoroo.astrid.service.AstridDependencyInjector;
/** /**
@ -23,6 +24,7 @@ public class ReminderStartupReceiver extends BroadcastReceiver {
@Override @Override
/** Called when the system is started up */ /** Called when the system is started up */
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
ContextManager.setContext(context);
startReminderSchedulingService(context); startReminderSchedulingService(context);
} }

@ -16,6 +16,7 @@ import com.google.ical.values.DateValue;
import com.google.ical.values.DateValueImpl; import com.google.ical.values.DateValueImpl;
import com.google.ical.values.Frequency; import com.google.ical.values.Frequency;
import com.google.ical.values.RRule; import com.google.ical.values.RRule;
import com.todoroo.andlib.service.ContextManager;
import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.api.AstridApiConstants;
import com.todoroo.astrid.core.PluginServices; import com.todoroo.astrid.core.PluginServices;
@ -25,6 +26,7 @@ public class RepeatTaskCompleteListener extends BroadcastReceiver {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
ContextManager.setContext(context);
long taskId = intent.getLongExtra(AstridApiConstants.EXTRAS_TASK_ID, -1); long taskId = intent.getLongExtra(AstridApiConstants.EXTRAS_TASK_ID, -1);
if(taskId == -1) if(taskId == -1)
return; return;

@ -9,6 +9,7 @@ import android.content.Context;
import android.content.Intent; import android.content.Intent;
import com.timsu.astrid.R; import com.timsu.astrid.R;
import com.todoroo.andlib.service.ContextManager;
import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.api.AstridApiConstants;
import com.todoroo.astrid.api.TaskAction; import com.todoroo.astrid.api.TaskAction;
import com.todoroo.astrid.api.TaskDecoration; import com.todoroo.astrid.api.TaskDecoration;
@ -27,6 +28,7 @@ public class TimerActionExposer extends BroadcastReceiver {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
ContextManager.setContext(context);
long taskId = intent.getLongExtra(AstridApiConstants.EXTRAS_TASK_ID, -1); long taskId = intent.getLongExtra(AstridApiConstants.EXTRAS_TASK_ID, -1);
if(taskId == -1) if(taskId == -1)
return; return;

@ -11,6 +11,7 @@ import android.content.res.Resources;
import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.BitmapDrawable;
import com.timsu.astrid.R; import com.timsu.astrid.R;
import com.todoroo.andlib.service.ContextManager;
import com.todoroo.andlib.sql.Query; import com.todoroo.andlib.sql.Query;
import com.todoroo.andlib.sql.QueryTemplate; import com.todoroo.andlib.sql.QueryTemplate;
import com.todoroo.astrid.activity.FilterListActivity; import com.todoroo.astrid.activity.FilterListActivity;
@ -30,7 +31,7 @@ public final class TimerFilterExposer extends BroadcastReceiver {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
ContextManager.setContext(context);
if(PluginServices.getTaskService().count(Query.select(Task.ID). if(PluginServices.getTaskService().count(Query.select(Task.ID).
where(Task.TIMER_START.gt(0))) == 0) where(Task.TIMER_START.gt(0))) == 0)
return; return;

@ -8,6 +8,7 @@ import android.content.Intent;
import android.content.res.Resources; import android.content.res.Resources;
import com.timsu.astrid.R; import com.timsu.astrid.R;
import com.todoroo.andlib.service.ContextManager;
import com.todoroo.andlib.service.NotificationManager; import com.todoroo.andlib.service.NotificationManager;
import com.todoroo.andlib.service.NotificationManager.AndroidNotificationManager; import com.todoroo.andlib.service.NotificationManager.AndroidNotificationManager;
import com.todoroo.andlib.sql.Query; import com.todoroo.andlib.sql.Query;
@ -27,6 +28,7 @@ public class TimerPlugin extends BroadcastReceiver {
@Override @Override
@SuppressWarnings("nls") @SuppressWarnings("nls")
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
ContextManager.setContext(context);
Addon plugin = new Addon(IDENTIFIER, "Timer", "Todoroo", Addon plugin = new Addon(IDENTIFIER, "Timer", "Todoroo",
"Lets you time how long it takes to complete tasks."); "Lets you time how long it takes to complete tasks.");

@ -4,6 +4,7 @@ import android.content.BroadcastReceiver;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import com.todoroo.andlib.service.ContextManager;
import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.api.AstridApiConstants;
import com.todoroo.astrid.core.PluginServices; import com.todoroo.astrid.core.PluginServices;
import com.todoroo.astrid.data.Task; import com.todoroo.astrid.data.Task;
@ -12,6 +13,7 @@ public class TimerTaskCompleteListener extends BroadcastReceiver {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
ContextManager.setContext(context);
long taskId = intent.getLongExtra(AstridApiConstants.EXTRAS_TASK_ID, -1); long taskId = intent.getLongExtra(AstridApiConstants.EXTRAS_TASK_ID, -1);
if(taskId == -1) if(taskId == -1)
return; return;

@ -70,6 +70,7 @@ public class ShortcutActivity extends Activity {
@Override @Override
public void onCreate(Bundle savedInstanceState) { public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
ContextManager.setContext(this);
launchTaskList(getIntent()); launchTaskList(getIntent());
} }

Loading…
Cancel
Save