Fix for AS-299 - notifications don't open up the right page and instead re-use the old notification. There were bugs upon bugs upon bugs!

pull/14/head
Tim Su 16 years ago
parent 39aa2679a7
commit 120613d067

@ -316,6 +316,7 @@
android:taskAffinity="com.todoroo.astrid.reminders.NotificationActivity"
android:launchMode="singleTask"
android:screenOrientation="portrait"
android:finishOnTaskLaunch="true"
android:clearTaskOnLaunch="true" />
<!-- producteev -->

@ -60,7 +60,6 @@ public class NotificationActivity extends TaskListActivity implements OnTimeSetL
@Override
public void onCreate(Bundle savedInstanceState) {
populateFilter(getIntent());
super.onCreate(savedInstanceState);
displayNotificationPopup();

@ -147,7 +147,7 @@ public class Notifications extends BroadcastReceiver {
Intent notifyIntent = new Intent(context, NotificationActivity.class);
notifyIntent.putExtra(NotificationActivity.TOKEN_ID, id);
notifyIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
notifyIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
showNotification((int)id, notifyIntent, type, title, text, nonstopMode);
return true;

@ -2,9 +2,9 @@ package com.todoroo.astrid.activity;
import java.util.Date;
import java.util.List;
import java.util.Map.Entry;
import java.util.Timer;
import java.util.TimerTask;
import java.util.Map.Entry;
import java.util.concurrent.atomic.AtomicReference;
import android.app.AlertDialog;
@ -25,26 +25,26 @@ import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.View.OnClickListener;
import android.view.View.OnKeyListener;
import android.view.Window;
import android.view.WindowManager;
import android.view.inputmethod.EditorInfo;
import android.widget.AbsListView;
import android.widget.AbsListView.OnScrollListener;
import android.widget.AdapterView.AdapterContextMenuInfo;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.AbsListView.OnScrollListener;
import android.widget.AdapterView.AdapterContextMenuInfo;
import android.widget.TextView.OnEditorActionListener;
import android.widget.Toast;
import com.flurry.android.FlurryAgent;
import com.timsu.astrid.R;
@ -182,13 +182,6 @@ public class TaskListActivity extends ListActivity implements OnScrollListener,
else
setContentView(R.layout.task_list_activity_api3);
Bundle extras = getIntent().getExtras();
if(extras != null && extras.containsKey(TOKEN_FILTER)) {
filter = extras.getParcelable(TOKEN_FILTER);
} else {
filter = CoreFilterExposer.buildInboxFilter(getResources());
}
if(database == null)
return;
@ -202,6 +195,14 @@ public class TaskListActivity extends ListActivity implements OnScrollListener,
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
Bundle extras = intent.getExtras();
if(extras != null && extras.containsKey(TOKEN_FILTER)) {
filter = extras.getParcelable(TOKEN_FILTER);
} else {
filter = CoreFilterExposer.buildInboxFilter(getResources());
}
setUpTaskList();
if(Constants.DEBUG)
setTitle("[D] " + filter.title); //$NON-NLS-1$
@ -278,8 +279,6 @@ public class TaskListActivity extends ListActivity implements OnScrollListener,
}
});
((TextView)findViewById(R.id.listLabel)).setText(filter.title);
// set listener for quick-changing task priority
getListView().setOnKeyListener(new OnKeyListener() {
@Override
@ -570,6 +569,8 @@ public class TaskListActivity extends ListActivity implements OnScrollListener,
sqlQueryTemplate.set(SortSelectionActivity.adjustQueryForFlagsAndSort(filter.sqlQuery,
sortFlags, sortSort));
((TextView)findViewById(R.id.listLabel)).setText(filter.title);
// perform query
TodorooCursor<Task> currentCursor = taskService.fetchFiltered(
sqlQueryTemplate.get(), null, TaskAdapter.PROPERTIES);
@ -851,6 +852,9 @@ public class TaskListActivity extends ListActivity implements OnScrollListener,
ReminderService.getInstance().setScheduler(new AlarmScheduler() {
@Override
public void createAlarm(Task theTask, long time, int type) {
if(time == 0 || time == Long.MAX_VALUE)
return;
Toast.makeText(TaskListActivity.this, "Scheduled Alarm: " + //$NON-NLS-1$
new Date(time), Toast.LENGTH_LONG).show();
ReminderService.getInstance().setScheduler(null);

@ -35,7 +35,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

@ -57,7 +57,7 @@ public class TasksWidget extends AppWidgetProvider {
// Start in service to prevent Application Not Responding timeout
updateWidgets(context);
} catch (Exception e) {
Log.e("astrid-update-widget", "widget update error", e); //$NON-NLS-1$
Log.e("astrid-update-widget", "widget update error", e); //$NON-NLS-1$ //$NON-NLS-2$
}
}

Loading…
Cancel
Save