From 695c78fd180f0844401d2b746756bc05285c450c Mon Sep 17 00:00:00 2001 From: Sam Bosley Date: Sun, 29 Jan 2012 18:05:58 -0800 Subject: [PATCH] Killed the NotificationWrapperActivity and other custom wrappers for custom intents--just use the normal tasklistactivity with a custom fragment --- .../astrid/api/FilterWithCustomIntent.java | 5 +---- .../astrid/gtasks/GtasksFilterExposer.java | 2 -- .../NotificationWrapperActivity.java | 21 ------------------- .../astrid/reminders/Notifications.java | 3 ++- .../todoroo/astrid/tags/TagFilterExposer.java | 2 -- .../layout/notification_wrapper_activity.xml | 8 ------- .../astrid/activity/AstridActivity.java | 8 +++++-- .../astrid/activity/TaskListActivity.java | 7 ++++++- .../astrid/activity/TaskListFragment.java | 1 + 9 files changed, 16 insertions(+), 41 deletions(-) delete mode 100644 astrid/plugin-src/com/todoroo/astrid/reminders/NotificationWrapperActivity.java delete mode 100644 astrid/res/layout/notification_wrapper_activity.xml diff --git a/api/src/com/todoroo/astrid/api/FilterWithCustomIntent.java b/api/src/com/todoroo/astrid/api/FilterWithCustomIntent.java index b8c99ef03..0ce5290e0 100644 --- a/api/src/com/todoroo/astrid/api/FilterWithCustomIntent.java +++ b/api/src/com/todoroo/astrid/api/FilterWithCustomIntent.java @@ -17,7 +17,6 @@ public class FilterWithCustomIntent extends Filter { * Custom activity name */ public ComponentName customTaskList = null; - public ComponentName customWrapperActivity = null; /** * Bundle with extras set. Can be null @@ -41,7 +40,7 @@ public class FilterWithCustomIntent extends Filter { public Intent getCustomIntent() { Intent intent = new Intent(); intent.putExtra("filter", this); //$NON-NLS-1$ - intent.setComponent(customWrapperActivity); + intent.setComponent(new ComponentName(AstridApiConstants.PACKAGE, "com.todoroo.astrid.activity.TaskListActivity")); if(customExtras != null) intent.putExtras(customExtras); @@ -69,7 +68,6 @@ public class FilterWithCustomIntent extends Filter { public void writeToParcel(Parcel dest, int flags) { super.writeToParcel(dest, flags); dest.writeParcelable(customTaskList, 0); - dest.writeParcelable(customWrapperActivity, 0); dest.writeParcelable(customExtras, 0); } @@ -77,7 +75,6 @@ public class FilterWithCustomIntent extends Filter { public void readFromParcel(Parcel source) { super.readFromParcel(source); customTaskList = source.readParcelable(ComponentName.class.getClassLoader()); - customWrapperActivity = source.readParcelable(ComponentName.class.getClassLoader()); customExtras = source.readParcelable(Bundle.class.getClassLoader()); } diff --git a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksFilterExposer.java b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksFilterExposer.java index 30eae8e64..7c99c6cfa 100644 --- a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksFilterExposer.java +++ b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksFilterExposer.java @@ -23,7 +23,6 @@ import com.todoroo.andlib.sql.Join; import com.todoroo.andlib.sql.Order; import com.todoroo.andlib.sql.QueryTemplate; import com.todoroo.astrid.activity.TaskListFragment; -import com.todoroo.astrid.activity.TaskListActivity; import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.api.AstridFilterExposer; import com.todoroo.astrid.api.Filter; @@ -72,7 +71,6 @@ public class GtasksFilterExposer extends BroadcastReceiver implements AstridFilt values); filter.listingIcon = ((BitmapDrawable)context.getResources().getDrawable(R.drawable.gtasks_icon)).getBitmap(); filter.customTaskList = new ComponentName(ContextManager.getContext(), GtasksListActivity.class); - filter.customWrapperActivity = new ComponentName(ContextManager.getContext(), TaskListActivity.class); Bundle extras = new Bundle(); extras.putBoolean(TaskListFragment.TOKEN_OVERRIDE_ANIM, true); extras.putLong(GtasksListActivity.TOKEN_STORE_ID, list.getId()); diff --git a/astrid/plugin-src/com/todoroo/astrid/reminders/NotificationWrapperActivity.java b/astrid/plugin-src/com/todoroo/astrid/reminders/NotificationWrapperActivity.java deleted file mode 100644 index 4ae67ff1c..000000000 --- a/astrid/plugin-src/com/todoroo/astrid/reminders/NotificationWrapperActivity.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.todoroo.astrid.reminders; - -import android.os.Bundle; - -import com.timsu.astrid.R; -import com.todoroo.astrid.activity.AstridActivity; -import com.todoroo.astrid.service.ThemeService; - -public class NotificationWrapperActivity extends AstridActivity { - - /* (non-Javadoc) - * @see com.todoroo.astrid.activity.AstridWrapperActivity#onCreate(android.os.Bundle) - */ - @Override - protected void onCreate(Bundle savedInstanceState) { - ThemeService.applyTheme(this); - super.onCreate(savedInstanceState); - setContentView(R.layout.notification_wrapper_activity); - } - -} diff --git a/astrid/plugin-src/com/todoroo/astrid/reminders/Notifications.java b/astrid/plugin-src/com/todoroo/astrid/reminders/Notifications.java index c9853bf9e..ac8704120 100644 --- a/astrid/plugin-src/com/todoroo/astrid/reminders/Notifications.java +++ b/astrid/plugin-src/com/todoroo/astrid/reminders/Notifications.java @@ -24,6 +24,7 @@ import com.todoroo.andlib.service.NotificationManager.AndroidNotificationManager import com.todoroo.andlib.utility.AndroidUtilities; import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.andlib.utility.Preferences; +import com.todoroo.astrid.activity.TaskListActivity; import com.todoroo.astrid.activity.TaskListFragment; import com.todoroo.astrid.dao.TaskDao; import com.todoroo.astrid.data.Task; @@ -162,7 +163,7 @@ public class Notifications extends BroadcastReceiver { String title = context.getString(R.string.app_name); String text = reminder + " " + taskTitle; //$NON-NLS-1$ - Intent notifyIntent = new Intent(context, NotificationWrapperActivity.class); + Intent notifyIntent = new Intent(context, TaskListActivity.class); notifyIntent.setAction("NOTIFY" + id); //$NON-NLS-1$ notifyIntent.putExtra(NotificationFragment.TOKEN_ID, id); notifyIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_MULTIPLE_TASK); diff --git a/astrid/plugin-src/com/todoroo/astrid/tags/TagFilterExposer.java b/astrid/plugin-src/com/todoroo/astrid/tags/TagFilterExposer.java index 8ab9a8fc0..0fcaed8b6 100644 --- a/astrid/plugin-src/com/todoroo/astrid/tags/TagFilterExposer.java +++ b/astrid/plugin-src/com/todoroo/astrid/tags/TagFilterExposer.java @@ -29,7 +29,6 @@ import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.andlib.utility.DialogUtilities; import com.todoroo.astrid.actfm.TagViewActivity; import com.todoroo.astrid.activity.TaskListFragment; -import com.todoroo.astrid.activity.TaskListActivity; import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.api.AstridFilterExposer; import com.todoroo.astrid.api.Filter; @@ -86,7 +85,6 @@ public class TagFilterExposer extends BroadcastReceiver implements AstridFilterE newTagIntent(context, DeleteTagActivity.class, tag) }; filter.customTaskList = new ComponentName(ContextManager.getContext(), TagViewActivity.class); - filter.customWrapperActivity = new ComponentName(ContextManager.getContext(), TaskListActivity.class); if(tag.image != null) filter.imageUrl = tag.image; if(tag.updateText != null) diff --git a/astrid/res/layout/notification_wrapper_activity.xml b/astrid/res/layout/notification_wrapper_activity.xml deleted file mode 100644 index cfbd7f95c..000000000 --- a/astrid/res/layout/notification_wrapper_activity.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - \ No newline at end of file diff --git a/astrid/src/com/todoroo/astrid/activity/AstridActivity.java b/astrid/src/com/todoroo/astrid/activity/AstridActivity.java index 5d2e64437..c1c252138 100644 --- a/astrid/src/com/todoroo/astrid/activity/AstridActivity.java +++ b/astrid/src/com/todoroo/astrid/activity/AstridActivity.java @@ -124,8 +124,12 @@ public class AstridActivity extends FragmentActivity } } - protected void setupTasklistFragmentWithFilter(Filter filter) { - Class component = TaskListFragment.class; + protected final void setupTasklistFragmentWithFilter(Filter filter) { + setupTasklistFragmentWithFilterAndCustomTaskList(filter, TaskListFragment.class); + } + + protected final void setupTasklistFragmentWithFilterAndCustomTaskList(Filter filter, Class customTaskList) { + Class component = customTaskList; if (filter instanceof FilterWithCustomIntent) { try { component = Class.forName(((FilterWithCustomIntent) filter).customTaskList.getClassName()); diff --git a/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java b/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java index 168b695d1..e78664108 100644 --- a/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java +++ b/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java @@ -23,10 +23,12 @@ import com.todoroo.astrid.actfm.ActFmLoginActivity; import com.todoroo.astrid.actfm.TagSettingsActivity; import com.todoroo.astrid.api.Filter; import com.todoroo.astrid.api.FilterListItem; +import com.todoroo.astrid.reminders.NotificationFragment; import com.todoroo.astrid.service.ThemeService; import com.todoroo.astrid.ui.FragmentPopover; import com.todoroo.astrid.ui.MainMenuPopover; import com.todoroo.astrid.ui.MainMenuPopover.MainMenuListener; +import com.todoroo.astrid.utility.Constants; import com.todoroo.astrid.utility.Flags; import com.todoroo.astrid.welcome.tutorial.WelcomeWalkthrough; @@ -217,8 +219,11 @@ public class TaskListActivity extends AstridActivity implements MainMenuListener super.onPostResume(); Filter savedFilter = getIntent().getParcelableExtra(TaskListFragment.TOKEN_FILTER); - if (!Flags.checkAndClear(Flags.TLA_RESUMED_FROM_VOICE_ADD)) + if (getIntent().getIntExtra(TaskListFragment.TOKEN_SOURCE, Constants.SOURCE_DEFAULT) == Constants.SOURCE_NOTIFICATION) + setupTasklistFragmentWithFilterAndCustomTaskList(savedFilter, NotificationFragment.class); + else if (!Flags.checkAndClear(Flags.TLA_RESUMED_FROM_VOICE_ADD)) setupTasklistFragmentWithFilter(savedFilter); + if (savedFilter != null) lists.setText(savedFilter.title); diff --git a/astrid/src/com/todoroo/astrid/activity/TaskListFragment.java b/astrid/src/com/todoroo/astrid/activity/TaskListFragment.java index 29fb664f1..34105f7b5 100644 --- a/astrid/src/com/todoroo/astrid/activity/TaskListFragment.java +++ b/astrid/src/com/todoroo/astrid/activity/TaskListFragment.java @@ -348,6 +348,7 @@ public class TaskListFragment extends ListFragment implements OnScrollListener, StatisticsService.reportEvent(StatisticsConstants.LAUNCH_FROM_C2DM); break; } + getActivity().getIntent().putExtra(TOKEN_SOURCE, Constants.SOURCE_DEFAULT); // Only report source once } getActivity().runOnUiThread(new Runnable() {