Dont call setUpTaskList in subtask list refresh

Closes #258
pull/321/head
Alex Baker 9 years ago
parent b51516e94a
commit 0c3c264fef

@ -152,10 +152,4 @@ public class TagViewFragment extends TaskListFragment {
protected boolean hasDraggableOption() { protected boolean hasDraggableOption() {
return tagData != null; return tagData != null;
} }
@Override
protected void refresh() {
loadTaskListContent();
setSyncOngoing(false);
}
} }

@ -122,6 +122,7 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
* Task ID * Task ID
*/ */
public static final String TOKEN_ID = "id"; //$NON-NLS-1$ public static final String TOKEN_ID = "id"; //$NON-NLS-1$
public static final String TOKEN_UUID = "uuid";
/** /**
* Content Values to set * Content Values to set
@ -610,6 +611,8 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
if (taskEditActivity) { if (taskEditActivity) {
Intent data = new Intent(); Intent data = new Intent();
data.putExtra(TOKEN_TAGS_CHANGED, tagsChanged); data.putExtra(TOKEN_TAGS_CHANGED, tagsChanged);
data.putExtra(TOKEN_ID, model.getId());
data.putExtra(TOKEN_UUID, model.getUuid());
getActivity().setResult(Activity.RESULT_OK, data); getActivity().setResult(Activity.RESULT_OK, data);
} else { } else {
@ -621,6 +624,9 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
tla.tagsChanged(); tla.tagsChanged();
} }
tla.refreshTaskList(); tla.refreshTaskList();
if (isNewTask) {
tla.getTaskListFragment().onTaskCreated(model.getId(), model.getUuid());
}
} }
removeExtrasFromIntent(getActivity().getIntent()); removeExtrasFromIntent(getActivity().getIntent());

@ -430,6 +430,11 @@ public class TaskListActivity extends AstridActivity implements OnPageChangeList
} }
} }
tlf.refresh(); tlf.refresh();
if (data != null) {
tlf.onTaskCreated(
data.getLongExtra(TaskEditFragment.TOKEN_ID, 0L),
data.getStringExtra(TaskEditFragment.TOKEN_UUID));
}
} }
} else if (requestCode == REQUEST_EDIT_TAG) { } else if (requestCode == REQUEST_EDIT_TAG) {
if (resultCode == RESULT_OK) { if (resultCode == RESULT_OK) {

@ -580,9 +580,6 @@ public class TaskListFragment extends InjectingListFragment implements SwipeRefr
* broadcast. Subclasses should override this. * broadcast. Subclasses should override this.
*/ */
protected void refresh() { protected void refresh() {
if (taskAdapter != null) {
taskAdapter.flushCaches();
}
TaskEditFragment taskEditFragment = ((AstridActivity) getActivity()).getTaskEditFragment(); TaskEditFragment taskEditFragment = ((AstridActivity) getActivity()).getTaskEditFragment();
Task model = taskEditFragment == null ? null : taskEditFragment.model; Task model = taskEditFragment == null ? null : taskEditFragment.model;
taskDeleter.deleteTasksWithEmptyTitles(model == null ? null : model.getId()); taskDeleter.deleteTasksWithEmptyTitles(model == null ? null : model.getId());
@ -608,7 +605,6 @@ public class TaskListFragment extends InjectingListFragment implements SwipeRefr
Cursor taskCursor = taskAdapter.getCursor(); Cursor taskCursor = taskAdapter.getCursor();
taskCursor.requery(); taskCursor.requery();
taskAdapter.flushCaches();
taskAdapter.notifyDataSetChanged(); taskAdapter.notifyDataSetChanged();
if (getView() != null) { // This was happening sometimes if (getView() != null) { // This was happening sometimes
@ -776,7 +772,7 @@ public class TaskListFragment extends InjectingListFragment implements SwipeRefr
.show(); .show();
} }
public void onTaskCreated(Task task) { public void onTaskCreated(long id, String uuid) {
} }
protected void onTaskDelete(Task task) { protected void onTaskDelete(Task task) {

@ -148,7 +148,6 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
protected final TaskListFragment fragment; protected final TaskListFragment fragment;
private DialogBuilder dialogBuilder; private DialogBuilder dialogBuilder;
protected final Resources resources; protected final Resources resources;
protected final HashMap<Object, Boolean> completedItems = new HashMap<>(0);
protected OnCompletedTaskListener onCompletedTaskListener = null; protected OnCompletedTaskListener onCompletedTaskListener = null;
protected final int resource = R.layout.task_adapter_row_simple; protected final int resource = R.layout.task_adapter_row_simple;
protected final LayoutInflater inflater; protected final LayoutInflater inflater;
@ -488,21 +487,6 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
return string; return string;
} }
/* ======================================================================
* ============================================================== add-ons
* ====================================================================== */
/**
* Called to tell the cache to be cleared
*/
public void flushCaches() {
completedItems.clear();
}
public HashMap<Object, Boolean> getCompletedItems() {
return completedItems;
}
/* ====================================================================== /* ======================================================================
* ======================================================= event handlers * ======================================================= event handlers
* ====================================================================== */ * ====================================================================== */
@ -550,15 +534,7 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
if (activity == null) { if (activity == null) {
return; return;
} }
// show item as completed if it was recently checked
Boolean value = completedItems.get(task.getUuid());
if (value == null) {
value = completedItems.get(task.getId());
}
if(value != null) {
task.setCompletionDate(
value ? DateUtilities.now() : 0);
}
boolean state = task.isCompleted(); boolean state = task.isCompleted();
TextView name = viewHolder.nameView; TextView name = viewHolder.nameView;
@ -677,7 +653,6 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
onCompletedTaskListener.onCompletedTask(task, newState); onCompletedTaskListener.onCompletedTask(task, newState);
} }
completedItems.put(task.getUuid(), newState);
taskService.setComplete(task, newState); taskService.setComplete(task, newState);
} }
} }

@ -234,8 +234,6 @@ public class OrderedMetadataListFragmentHelper<LIST> implements OrderedListFragm
model.setCompletionDate(completionDate); model.setCompletionDate(completionDate);
taskService.save(model); taskService.save(model);
model.clear(); model.clear();
taskAdapter.getCompletedItems().put(taskId, false);
} }
taskAdapter.notifyDataSetInvalidated(); taskAdapter.notifyDataSetInvalidated();
} }
@ -259,7 +257,6 @@ public class OrderedMetadataListFragmentHelper<LIST> implements OrderedListFragm
taskService.save(model); taskService.save(model);
model.clear(); model.clear();
taskAdapter.getCompletedItems().put(node.taskId, true);
chained.add(node.taskId); chained.add(node.taskId);
} }
}); });
@ -275,7 +272,7 @@ public class OrderedMetadataListFragmentHelper<LIST> implements OrderedListFragm
} }
@Override @Override
public void onCreateTask(Task task) { public void onCreateTask(long id, String uuid) {
// //
} }

@ -224,8 +224,6 @@ public class AstridOrderedListFragmentHelper<LIST> implements OrderedListFragmen
model.setCompletionDate(completionDate); model.setCompletionDate(completionDate);
taskService.update(Task.UUID.eq(taskId), model); taskService.update(Task.UUID.eq(taskId), model);
model.clear(); model.clear();
taskAdapter.getCompletedItems().put(taskId, false);
} }
taskAdapter.notifyDataSetInvalidated(); taskAdapter.notifyDataSetInvalidated();
} }
@ -240,8 +238,6 @@ public class AstridOrderedListFragmentHelper<LIST> implements OrderedListFragmen
model.setCompletionDate(completionDate); model.setCompletionDate(completionDate);
taskService.update(Task.UUID.eq(uuid), model); taskService.update(Task.UUID.eq(uuid), model);
model.clear(); model.clear();
taskAdapter.getCompletedItems().put(node.uuid, true);
chained.add(node.uuid); chained.add(node.uuid);
} }
}); });
@ -268,7 +264,6 @@ public class AstridOrderedListFragmentHelper<LIST> implements OrderedListFragmen
recurring.close(); recurring.close();
} }
chainedCompletions.put(itemId, chained); chainedCompletions.put(itemId, chained);
taskAdapter.notifyDataSetInvalidated(); taskAdapter.notifyDataSetInvalidated();
} }
@ -284,11 +279,11 @@ public class AstridOrderedListFragmentHelper<LIST> implements OrderedListFragmen
} }
@Override @Override
public void onCreateTask(Task task) { public void onCreateTask(long id, String uuid) {
updater.onCreateTask(list, getFilter(), task.getUuid()); updater.onCreateTask(list, getFilter(), uuid);
fragment.reconstructCursor(); fragment.reconstructCursor();
fragment.loadTaskListContent(); fragment.loadTaskListContent();
fragment.selectCustomId(task.getId()); fragment.selectCustomId(id);
} }
@Override @Override
@ -296,6 +291,4 @@ public class AstridOrderedListFragmentHelper<LIST> implements OrderedListFragmen
updater.onDeleteTask(list, getFilter(), task.getUuid()); updater.onDeleteTask(list, getFilter(), task.getUuid());
taskAdapter.notifyDataSetInvalidated(); taskAdapter.notifyDataSetInvalidated();
} }
} }

@ -14,7 +14,7 @@ public interface OrderedListFragmentHelperInterface<T> {
void setUpUiComponents(); void setUpUiComponents();
void beforeSetUpTaskList(Filter filter); void beforeSetUpTaskList(Filter filter);
void onCreateTask(Task task); void onCreateTask(long id, String uuid);
void onDeleteTask(Task task); void onDeleteTask(Task task);
TaskAdapter createTaskAdapter(Context context, TodorooCursor<Task> cursor, AtomicReference<String> queryTemplate); TaskAdapter createTaskAdapter(Context context, TodorooCursor<Task> cursor, AtomicReference<String> queryTemplate);
Property<?>[] taskProperties(); Property<?>[] taskProperties();

@ -94,9 +94,8 @@ public class SubtasksListFragment extends TaskListFragment {
} }
@Override @Override
public void onTaskCreated(Task task) { public void onTaskCreated(long id, String uuid) {
super.onTaskCreated(task); helper.onCreateTask(id, uuid);
helper.onCreateTask(task);
} }
@Override @Override
@ -112,9 +111,7 @@ public class SubtasksListFragment extends TaskListFragment {
@Override @Override
protected void refresh() { protected void refresh() {
super.refresh();
initializeTaskListMetadata(); initializeTaskListMetadata();
setUpTaskList();
setSyncOngoing(false);
} }
} }

@ -87,9 +87,8 @@ public class SubtasksTagListFragment extends TagViewFragment {
} }
@Override @Override
public void onTaskCreated(Task task) { public void onTaskCreated(long id, String uuid) {
super.onTaskCreated(task); helper.onCreateTask(id, uuid);
helper.onCreateTask(task);
} }
@Override @Override
@ -105,9 +104,7 @@ public class SubtasksTagListFragment extends TagViewFragment {
@Override @Override
protected void refresh() { protected void refresh() {
super.refresh();
initializeTaskListMetadata(); initializeTaskListMetadata();
setUpTaskList();
setSyncOngoing(false);
} }
} }

@ -80,7 +80,7 @@ public class QuickAddBar {
fragment.selectCustomId(task.getId()); fragment.selectCustomId(task.getId());
activity.onTaskListItemClicked(task.getId()); activity.onTaskListItemClicked(task.getId());
fragment.onTaskCreated(task); fragment.onTaskCreated(task.getId(), task.getUUID());
return task; return task;
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);

Loading…
Cancel
Save