diff --git a/astrid/plugin-src/com/todoroo/astrid/actfm/TagViewFragment.java b/astrid/plugin-src/com/todoroo/astrid/actfm/TagViewFragment.java index 5da005c80..a7a6afae3 100644 --- a/astrid/plugin-src/com/todoroo/astrid/actfm/TagViewFragment.java +++ b/astrid/plugin-src/com/todoroo/astrid/actfm/TagViewFragment.java @@ -73,7 +73,7 @@ public class TagViewFragment extends TaskListFragment { public static final String TOKEN_START_ACTIVITY = "startActivity"; //$NON-NLS-1$ - private TagData tagData; + protected TagData tagData; @Autowired TagDataService tagDataService; @@ -83,7 +83,7 @@ public class TagViewFragment extends TaskListFragment { @Autowired SyncV2Service syncService; - private View taskListView; + protected View taskListView; private boolean dataLoaded = false; diff --git a/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksFragmentHelper.java b/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksFragmentHelper.java new file mode 100644 index 000000000..24bbc7bfd --- /dev/null +++ b/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksFragmentHelper.java @@ -0,0 +1,265 @@ +package com.todoroo.astrid.subtasks; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.Map; +import java.util.concurrent.atomic.AtomicBoolean; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.atomic.AtomicReference; + +import android.app.Activity; +import android.database.Cursor; +import android.util.DisplayMetrics; +import android.util.TypedValue; +import android.view.View; +import android.widget.ListView; + +import com.commonsware.cwac.tlv.TouchListView.DropListener; +import com.commonsware.cwac.tlv.TouchListView.GrabberClickListener; +import com.commonsware.cwac.tlv.TouchListView.SwipeListener; +import com.timsu.astrid.R; +import com.todoroo.andlib.data.Property; +import com.todoroo.andlib.data.TodorooCursor; +import com.todoroo.andlib.service.Autowired; +import com.todoroo.andlib.service.DependencyInjectionService; +import com.todoroo.andlib.utility.DateUtilities; +import com.todoroo.astrid.activity.TaskListFragment; +import com.todoroo.astrid.adapter.TaskAdapter; +import com.todoroo.astrid.adapter.TaskAdapter.OnCompletedTaskListener; +import com.todoroo.astrid.api.Filter; +import com.todoroo.astrid.data.Metadata; +import com.todoroo.astrid.data.Task; +import com.todoroo.astrid.service.TaskService; +import com.todoroo.astrid.subtasks.OrderedListUpdater.OrderedListIterator; +import com.todoroo.astrid.ui.DraggableListView; + +public class SubtasksFragmentHelper { + + private final DisplayMetrics metrics = new DisplayMetrics(); + private final SubtasksUpdater updater = new SubtasksUpdater(); + private final TaskListFragment fragment; + + @Autowired TaskService taskService; + + private DraggableTaskAdapter taskAdapter; + + private String list; + + public SubtasksFragmentHelper(TaskListFragment fragment) { + DependencyInjectionService.getInstance().inject(this); + this.fragment = fragment; + } + + // --- ui component setup + + private Activity getActivity() { + return fragment.getActivity(); + } + + private ListView getListView() { + return fragment.getListView(); + } + + private Filter getFilter() { + return fragment.getFilter(); + } + + public DraggableListView getTouchListView() { + DraggableListView tlv = (DraggableListView) fragment.getListView(); + return tlv; + } + + public void setUpUiComponents() { + TypedValue tv = new TypedValue(); + getActivity().getTheme().resolveAttribute(R.attr.asThemeTextColor, tv, false); + getTouchListView().setDragndropBackgroundColor(tv.data); + getTouchListView().setDropListener(dropListener); + getTouchListView().setClickListener(rowClickListener); + getTouchListView().setSwipeListener(swipeListener); + getActivity().getWindowManager().getDefaultDisplay().getMetrics(metrics); + } + + public void beforeSetUpTaskList(Filter filter) { + updater.applySubtasksToFilter(filter, null); + updater.sanitizeTaskList(filter, list); + } + + public Property[] taskProperties() { + ArrayList> properties = new ArrayList>(Arrays.asList(TaskAdapter.PROPERTIES)); + properties.add(SubtasksMetadata.INDENT); + properties.add(SubtasksMetadata.ORDER); + return properties.toArray(new Property[properties.size()]); + } + + + private final DropListener dropListener = new DropListener() { + @Override + public void drop(int from, int to) { + long targetTaskId = taskAdapter.getItemId(from); + long destinationTaskId = taskAdapter.getItemId(to); + + if(to == getListView().getCount() - 1) + updater.moveTo(getFilter(), list, targetTaskId, -1); + else + updater.moveTo(getFilter(), list, targetTaskId, destinationTaskId); + + fragment.loadTaskListContent(true); + } + }; + + private final SwipeListener swipeListener = new SwipeListener() { + @Override + public void swipeRight(int which) { + long targetTaskId = taskAdapter.getItemId(which); + updater.indent(getFilter(), list, targetTaskId, 1); + fragment.loadTaskListContent(true); + } + + @Override + public void swipeLeft(int which) { + long targetTaskId = taskAdapter.getItemId(which); + updater.indent(getFilter(), list, targetTaskId, -1); + fragment.loadTaskListContent(true); + } + }; + + private final GrabberClickListener rowClickListener = new GrabberClickListener() { + @Override + public void onLongClick(final View v) { + fragment.registerForContextMenu(getListView()); + getListView().showContextMenuForChild(v); + fragment.unregisterForContextMenu(getListView()); + } + + @Override + public void onClick(View v) { + ((DraggableTaskAdapter) taskAdapter).getListener().onClick(v); + } + }; + + public TaskAdapter createTaskAdapter(TodorooCursor cursor, + AtomicReference sqlQueryTemplate) { + taskAdapter = new DraggableTaskAdapter(fragment, R.layout.task_adapter_row, + cursor, sqlQueryTemplate, false, null); + + taskAdapter.addOnCompletedTaskListener(new OnCompletedTaskListener() { + @Override + public void onCompletedTask(Task item, boolean newState) { + setCompletedForItemAndSubtasks(item, newState); + } + }); + + return taskAdapter; + } + + private final class DraggableTaskAdapter extends TaskAdapter { + + private DraggableTaskAdapter(TaskListFragment activity, int resource, + Cursor c, AtomicReference query, boolean autoRequery, + OnCompletedTaskListener onCompletedTaskListener) { + super(activity, resource, c, query, autoRequery, + onCompletedTaskListener); + + applyListeners = APPLY_LISTENERS_NONE; + } + + @Override + protected ViewHolder getTagFromCheckBox(View v) { + return (ViewHolder)((View)v.getParent()).getTag(); + } + + @Override + public synchronized void setFieldContentsAndVisibility(View view) { + super.setFieldContentsAndVisibility(view); + + view.getLayoutParams().height = Math.round(45 * metrics.density); + ViewHolder vh = (ViewHolder) view.getTag(); + int indent = vh.task.getValue(SubtasksMetadata.INDENT); + vh.rowBody.setPadding(Math.round(indent * 20 * metrics.density), 0, 0, 0); + } + + @Override + protected void addListeners(View container) { + super.addListeners(container); + } + + public TaskRowListener getListener() { + return listener; + } + } + + + private void setCompletedForItemAndSubtasks(final Task item, final boolean completedState) { + final Map> chainedCompletions = + Collections.synchronizedMap(new HashMap>()); + + final long itemId = item.getId(); + + final Task task = new Task(); + task.setValue(Task.COMPLETION_DATE, completedState ? DateUtilities.now() : 0); + + if(completedState == false) { + ArrayList chained = chainedCompletions.get(itemId); + if(chained != null) { + for(Long taskId : chained) { + taskAdapter.getCompletedItems().put(taskId, false); + task.setId(taskId); + taskService.save(task); + } + taskAdapter.notifyDataSetInvalidated(); + } + return; + } + + new Thread() { + @Override + public void run() { + final AtomicInteger startIndent = new AtomicInteger( + item.getValue(SubtasksMetadata.INDENT)); + final AtomicLong startOrder= new AtomicLong( + item.getValue(SubtasksMetadata.ORDER)); + final AtomicBoolean finished = new AtomicBoolean(false); + final ArrayList chained = new ArrayList(); + chainedCompletions.put(itemId, chained); + + updater.iterateThroughList(getFilter(), list, new OrderedListIterator() { + @Override + public void processTask(long taskId, Metadata metadata) { + if(finished.get()) + return; + + long order = metadata.containsNonNullValue(SubtasksMetadata.ORDER) ? + metadata.getValue(SubtasksMetadata.ORDER) : 0; + int indent = metadata.containsNonNullValue(SubtasksMetadata.INDENT) ? + metadata.getValue(SubtasksMetadata.INDENT) : 0; + + if(order < startOrder.get()) + return; + else if(indent == startIndent.get()) { + finished.set(true); + return; + } + + taskAdapter.getCompletedItems().put(taskId, true); + task.setId(taskId); + taskService.save(task); + chained.add(taskId); + } + }); + getActivity().runOnUiThread(new Runnable() { + public void run() { + taskAdapter.notifyDataSetInvalidated(); + } + }); + } + }.start(); + } + + public void setList(String list) { + this.list = list; + } + +} diff --git a/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksListFragment.java b/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksListFragment.java index 5b04e0a28..9c844c976 100644 --- a/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksListFragment.java +++ b/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksListFragment.java @@ -1,35 +1,14 @@ package com.todoroo.astrid.subtasks; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.HashMap; -import java.util.Map; -import java.util.concurrent.atomic.AtomicBoolean; -import java.util.concurrent.atomic.AtomicInteger; -import java.util.concurrent.atomic.AtomicLong; -import java.util.concurrent.atomic.AtomicReference; - -import android.database.Cursor; -import android.util.DisplayMetrics; -import android.util.TypedValue; import android.view.View; import android.view.ViewGroup; -import com.commonsware.cwac.tlv.TouchListView.DropListener; -import com.commonsware.cwac.tlv.TouchListView.GrabberClickListener; -import com.commonsware.cwac.tlv.TouchListView.SwipeListener; import com.timsu.astrid.R; import com.todoroo.andlib.data.Property; import com.todoroo.andlib.data.TodorooCursor; -import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.astrid.activity.TaskListFragment; import com.todoroo.astrid.adapter.TaskAdapter; -import com.todoroo.astrid.adapter.TaskAdapter.OnCompletedTaskListener; -import com.todoroo.astrid.data.Metadata; import com.todoroo.astrid.data.Task; -import com.todoroo.astrid.subtasks.OrderedListUpdater.OrderedListIterator; -import com.todoroo.astrid.ui.DraggableListView; /** * Fragment for subtasks @@ -39,13 +18,12 @@ import com.todoroo.astrid.ui.DraggableListView; */ public class SubtasksListFragment extends TaskListFragment { - private final DisplayMetrics metrics = new DisplayMetrics(); - - private final SubtasksUpdater updater = new SubtasksUpdater(); + private final SubtasksFragmentHelper helper; - public DraggableListView getTouchListView() { - DraggableListView tlv = (DraggableListView) getListView(); - return tlv; + public SubtasksListFragment() { + super(); + helper = new SubtasksFragmentHelper(this); + helper.setList(SubtasksMetadata.LIST_ACTIVE_TASKS); } @Override @@ -57,204 +35,32 @@ public class SubtasksListFragment extends TaskListFragment { protected void setUpUiComponents() { super.setUpUiComponents(); - TypedValue tv = new TypedValue(); - getActivity().getTheme().resolveAttribute(R.attr.asThemeTextColor, tv, false); - getTouchListView().setDragndropBackgroundColor(tv.data); - getTouchListView().setDropListener(dropListener); - getTouchListView().setClickListener(rowClickListener); - getTouchListView().setSwipeListener(swipeListener); - getActivity().getWindowManager().getDefaultDisplay().getMetrics(metrics); + helper.setUpUiComponents(); } @Override protected void setUpTaskList() { - - updater.applySubtasksToFilter(filter, null); - updater.sanitizeTaskList(filter, SubtasksMetadata.LIST_ACTIVE_TASKS); + helper.beforeSetUpTaskList(filter); super.setUpTaskList(); unregisterForContextMenu(getListView()); - } @Override public Property[] taskProperties() { - ArrayList> properties = new ArrayList>(Arrays.asList(TaskAdapter.PROPERTIES)); - properties.add(SubtasksMetadata.INDENT); - properties.add(SubtasksMetadata.ORDER); - return properties.toArray(new Property[properties.size()]); + return helper.taskProperties(); } - private final DropListener dropListener = new DropListener() { - @Override - public void drop(int from, int to) { - long targetTaskId = taskAdapter.getItemId(from); - long destinationTaskId = taskAdapter.getItemId(to); - - if(to == getListView().getCount() - 1) - updater.moveTo(filter, SubtasksMetadata.LIST_ACTIVE_TASKS, targetTaskId, -1); - else - updater.moveTo(filter, SubtasksMetadata.LIST_ACTIVE_TASKS, targetTaskId, destinationTaskId); - - loadTaskListContent(true); - } - }; - - private final SwipeListener swipeListener = new SwipeListener() { - @Override - public void swipeRight(int which) { - long targetTaskId = taskAdapter.getItemId(which); - updater.indent(filter, SubtasksMetadata.LIST_ACTIVE_TASKS, targetTaskId, 1); - loadTaskListContent(true); - } - - @Override - public void swipeLeft(int which) { - long targetTaskId = taskAdapter.getItemId(which); - updater.indent(filter, SubtasksMetadata.LIST_ACTIVE_TASKS, targetTaskId, -1); - loadTaskListContent(true); - } - }; - - private final GrabberClickListener rowClickListener = new GrabberClickListener() { - @Override - public void onLongClick(final View v) { - registerForContextMenu(getListView()); - getListView().showContextMenuForChild(v); - unregisterForContextMenu(getListView()); - } - - @Override - public void onClick(View v) { - ((DraggableTaskAdapter) taskAdapter).getListener().onClick(v); - } - }; - - // --- task adapter - - @Override - protected TaskAdapter createTaskAdapter(TodorooCursor cursor) { - taskAdapter = new DraggableTaskAdapter(this, R.layout.task_adapter_row, - cursor, sqlQueryTemplate, false, null); - - taskAdapter.addOnCompletedTaskListener(new OnCompletedTaskListener() { - @Override - public void onCompletedTask(Task item, boolean newState) { - setCompletedForItemAndSubtasks(item, newState); - } - }); - - return taskAdapter; - } - - private final class DraggableTaskAdapter extends TaskAdapter { - - private DraggableTaskAdapter(TaskListFragment activity, int resource, - Cursor c, AtomicReference query, boolean autoRequery, - OnCompletedTaskListener onCompletedTaskListener) { - super(activity, resource, c, query, autoRequery, - onCompletedTaskListener); - - applyListeners = APPLY_LISTENERS_NONE; - } - - @Override - protected ViewHolder getTagFromCheckBox(View v) { - return (ViewHolder)((View)v.getParent()).getTag(); - } - - @Override - public synchronized void setFieldContentsAndVisibility(View view) { - super.setFieldContentsAndVisibility(view); - - view.getLayoutParams().height = Math.round(45 * metrics.density); - ViewHolder vh = (ViewHolder) view.getTag(); - int indent = vh.task.getValue(SubtasksMetadata.INDENT); - vh.rowBody.setPadding(Math.round(indent * 20 * metrics.density), 0, 0, 0); - } - - @Override - protected void addListeners(View container) { - super.addListeners(container); - } - - public TaskRowListener getListener() { - return listener; - } - } @Override protected boolean isDraggable() { return true; } - - - private void setCompletedForItemAndSubtasks(final Task item, final boolean completedState) { - final Map> chainedCompletions = - Collections.synchronizedMap(new HashMap>()); - - final long itemId = item.getId(); - - final Task task = new Task(); - task.setValue(Task.COMPLETION_DATE, completedState ? DateUtilities.now() : 0); - - if(completedState == false) { - ArrayList chained = chainedCompletions.get(itemId); - if(chained != null) { - for(Long taskId : chained) { - taskAdapter.getCompletedItems().put(taskId, false); - task.setId(taskId); - taskService.save(task); - } - taskAdapter.notifyDataSetInvalidated(); - } - return; - } - - new Thread() { - @Override - public void run() { - final AtomicInteger startIndent = new AtomicInteger( - item.getValue(SubtasksMetadata.INDENT)); - final AtomicLong startOrder= new AtomicLong( - item.getValue(SubtasksMetadata.ORDER)); - final AtomicBoolean finished = new AtomicBoolean(false); - final ArrayList chained = new ArrayList(); - chainedCompletions.put(itemId, chained); - - updater.iterateThroughList(filter, SubtasksMetadata.LIST_ACTIVE_TASKS, new OrderedListIterator() { - @Override - public void processTask(long taskId, Metadata metadata) { - if(finished.get()) - return; - - long order = metadata.containsNonNullValue(SubtasksMetadata.ORDER) ? - metadata.getValue(SubtasksMetadata.ORDER) : 0; - int indent = metadata.containsNonNullValue(SubtasksMetadata.INDENT) ? - metadata.getValue(SubtasksMetadata.INDENT) : 0; - - if(order < startOrder.get()) - return; - else if(indent == startIndent.get()) { - finished.set(true); - return; - } - - taskAdapter.getCompletedItems().put(taskId, true); - task.setId(taskId); - taskService.save(task); - chained.add(taskId); - } - }); - getActivity().runOnUiThread(new Runnable() { - public void run() { - taskAdapter.notifyDataSetInvalidated(); - } - }); - } - }.start(); + @Override + protected TaskAdapter createTaskAdapter(TodorooCursor cursor) { + return helper.createTaskAdapter(cursor, sqlQueryTemplate); } } diff --git a/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksTagListFragment.java b/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksTagListFragment.java new file mode 100644 index 000000000..48aef75d3 --- /dev/null +++ b/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksTagListFragment.java @@ -0,0 +1,77 @@ +package com.todoroo.astrid.subtasks; + +import android.content.Intent; +import android.view.View; +import android.view.ViewGroup; + +import com.timsu.astrid.R; +import com.todoroo.andlib.data.Property; +import com.todoroo.andlib.data.TodorooCursor; +import com.todoroo.astrid.actfm.TagViewFragment; +import com.todoroo.astrid.adapter.TaskAdapter; +import com.todoroo.astrid.data.Task; + +public class SubtasksTagListFragment extends TagViewFragment { + + private final SubtasksFragmentHelper helper; + + public SubtasksTagListFragment() { + super(); + helper = new SubtasksFragmentHelper(this); + } + + @Override + protected void onNewIntent(Intent intent) { + super.onNewIntent(intent); + String list = "td:" + tagData.getId(); //$NON-NLS-1$ + helper.setList(list); + } + + /* (non-Javadoc) + * @see com.todoroo.astrid.activity.TaskListActivity#getListBody(android.view.ViewGroup) + */ + @Override + protected View getListBody(ViewGroup root) { + ViewGroup parent = (ViewGroup) getActivity().getLayoutInflater().inflate( + R.layout.task_list_body_tag, root, false); + + taskListView = + getActivity().getLayoutInflater().inflate(R.layout.task_list_body_subtasks, root, false); + parent.addView(taskListView); + + return parent; + } + + @Override + protected void setUpUiComponents() { + super.setUpUiComponents(); + + helper.setUpUiComponents(); + } + + @Override + protected void setUpTaskList() { + helper.beforeSetUpTaskList(filter); + + super.setUpTaskList(); + + unregisterForContextMenu(getListView()); + } + + @Override + public Property[] taskProperties() { + return helper.taskProperties(); + } + + + @Override + protected boolean isDraggable() { + return true; + } + + @Override + protected TaskAdapter createTaskAdapter(TodorooCursor cursor) { + return helper.createTaskAdapter(cursor, sqlQueryTemplate); + } + +} diff --git a/astrid/plugin-src/com/todoroo/astrid/tags/TagFilterExposer.java b/astrid/plugin-src/com/todoroo/astrid/tags/TagFilterExposer.java index a4c78b7ad..f5b76a34b 100644 --- a/astrid/plugin-src/com/todoroo/astrid/tags/TagFilterExposer.java +++ b/astrid/plugin-src/com/todoroo/astrid/tags/TagFilterExposer.java @@ -12,6 +12,7 @@ import android.content.ContentValues; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; +import android.content.SharedPreferences; import android.content.res.Resources; import android.graphics.Color; import android.graphics.drawable.BitmapDrawable; @@ -37,13 +38,16 @@ import com.todoroo.astrid.api.FilterListItem; import com.todoroo.astrid.api.FilterWithCustomIntent; import com.todoroo.astrid.api.FilterWithUpdate; import com.todoroo.astrid.core.PluginServices; +import com.todoroo.astrid.core.SortHelper; import com.todoroo.astrid.dao.TaskDao.TaskCriteria; import com.todoroo.astrid.data.Metadata; import com.todoroo.astrid.data.TagData; import com.todoroo.astrid.gtasks.GtasksPreferenceService; import com.todoroo.astrid.service.AstridDependencyInjector; import com.todoroo.astrid.service.TagDataService; +import com.todoroo.astrid.subtasks.SubtasksTagListFragment; import com.todoroo.astrid.tags.TagService.Tag; +import com.todoroo.astrid.utility.AstridPreferences; /** * Exposes filters based on tags @@ -92,7 +96,13 @@ public class TagFilterExposer extends BroadcastReceiver implements AstridFilterE newTagIntent(context, RenameTagActivity.class, tag, tagTemplate.toString()), newTagIntent(context, DeleteTagActivity.class, tag, tagTemplate.toString()) }; - filter.customTaskList = new ComponentName(ContextManager.getContext(), TagViewFragment.class); + + SharedPreferences publicPrefs = AstridPreferences.getPublicPrefs(context); + int sortFlags = publicPrefs.getInt(SortHelper.PREF_SORT_FLAGS, 0); + + Class fragmentClass = SortHelper.isManualSort(sortFlags) ? + SubtasksTagListFragment.class : TagViewFragment.class; + filter.customTaskList = new ComponentName(ContextManager.getContext(), fragmentClass); if(tag.image != null) filter.imageUrl = tag.image; if(tag.updateText != null) diff --git a/astrid/src/com/todoroo/astrid/activity/AstridActivity.java b/astrid/src/com/todoroo/astrid/activity/AstridActivity.java index f3a559c6f..8afe9d4c8 100644 --- a/astrid/src/com/todoroo/astrid/activity/AstridActivity.java +++ b/astrid/src/com/todoroo/astrid/activity/AstridActivity.java @@ -205,7 +205,7 @@ public class AstridActivity extends FragmentActivity protected final void setupTasklistFragmentWithFilter(Filter filter) { Class customTaskList = TaskListFragment.class; - System.err.println("default time"); //$NON-NLS-1$ + System.err.println("default time - " + ((filter != null) ? filter.title : "null")); //$NON-NLS-1$ if(filter == null || CoreFilterExposer.isInbox(filter)) { System.err.println("is inbox"); //$NON-NLS-1$ SharedPreferences publicPrefs = AstridPreferences.getPublicPrefs(this); diff --git a/astrid/src/com/todoroo/astrid/activity/TaskListFragment.java b/astrid/src/com/todoroo/astrid/activity/TaskListFragment.java index 735def5c6..d90057b87 100644 --- a/astrid/src/com/todoroo/astrid/activity/TaskListFragment.java +++ b/astrid/src/com/todoroo/astrid/activity/TaskListFragment.java @@ -496,7 +496,6 @@ public class TaskListFragment extends ListFragment implements OnScrollListener, } }); - System.err.println("NOW setup ui componetns"); SharedPreferences publicPrefs = AstridPreferences.getPublicPrefs(getActivity()); sortFlags = publicPrefs.getInt(SortHelper.PREF_SORT_FLAGS, 0); sortSort = publicPrefs.getInt(SortHelper.PREF_SORT_SORT, 0); @@ -1061,7 +1060,6 @@ public class TaskListFragment extends ListFragment implements OnScrollListener, showSettings(); return true; case MENU_SORT_ID: - System.err.println("displaying " + sortFlags); StatisticsService.reportEvent(StatisticsConstants.TLA_MENU_SORT); AlertDialog dialog = SortSelectionActivity.createDialog( getActivity(), isInbox, this, sortFlags, sortSort); @@ -1185,8 +1183,6 @@ public class TaskListFragment extends ListFragment implements OnScrollListener, sortFlags = flags; sortSort = sort; - System.err.println("FLAGS : " + flags); - if (always) { SharedPreferences publicPrefs = AstridPreferences.getPublicPrefs(getActivity()); Editor editor = publicPrefs.edit();