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() {
return tagData != null;
}
@Override
protected void refresh() {
loadTaskListContent();
setSyncOngoing(false);
}
}

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

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

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

@ -148,7 +148,6 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
protected final TaskListFragment fragment;
private DialogBuilder dialogBuilder;
protected final Resources resources;
protected final HashMap<Object, Boolean> completedItems = new HashMap<>(0);
protected OnCompletedTaskListener onCompletedTaskListener = null;
protected final int resource = R.layout.task_adapter_row_simple;
protected final LayoutInflater inflater;
@ -488,21 +487,6 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
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
* ====================================================================== */
@ -550,15 +534,7 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
if (activity == null) {
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();
TextView name = viewHolder.nameView;
@ -677,7 +653,6 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
onCompletedTaskListener.onCompletedTask(task, newState);
}
completedItems.put(task.getUuid(), newState);
taskService.setComplete(task, newState);
}
}

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

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

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

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

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

Loading…
Cancel
Save