diff --git a/astrid/common-src/com/commonsware/cwac/tlv/TouchListView.java b/astrid/common-src/com/commonsware/cwac/tlv/TouchListView.java index ad9542aff..61ae83a6e 100644 --- a/astrid/common-src/com/commonsware/cwac/tlv/TouchListView.java +++ b/astrid/common-src/com/commonsware/cwac/tlv/TouchListView.java @@ -44,6 +44,7 @@ public class TouchListView extends ListView { private int mFirstDragPos; // where was the dragged item originally private int mDragPoint; // at what offset inside the item did the user grab it private int mCoordOffset; // the difference between screen coordinates and coordinates in this view + private int mDragStartX; private DragListener mDragListener; private DropListener mDropListener; private SwipeListener mSwipeListener; @@ -123,6 +124,7 @@ public class TouchListView extends ListView { int touchSlop = mTouchSlop; mUpperBound = Math.min(y - touchSlop, mHeight / 3); mLowerBound = Math.max(y + touchSlop, mHeight * 2 /3); + mDragStartX = x; return false; } mDragView = null; @@ -260,13 +262,12 @@ public class TouchListView extends ListView { Rect r = mTempRect; mDragView.getDrawingRect(r); stopDragging(); - - if (mRemoveMode == SLIDE_RIGHT && ev.getX() > r.left+(r.width()*3/4)) { + if (ev.getX() > mDragStartX + 20) { if (mSwipeListener!= null) { mSwipeListener.swipeRight(mFirstDragPos); } unExpandViews(true); - } else if (mRemoveMode == SLIDE_LEFT && ev.getX() < r.left+(r.width()/4)) { + } else if (ev.getX() < mDragStartX - 20) { if (mSwipeListener!= null) { mSwipeListener.swipeLeft(mFirstDragPos); } diff --git a/astrid/common-src/com/todoroo/andlib/widget/Api4GestureDetector.java b/astrid/common-src/com/todoroo/andlib/widget/Api4GestureDetector.java index 11a110081..9c52756bf 100644 --- a/astrid/common-src/com/todoroo/andlib/widget/Api4GestureDetector.java +++ b/astrid/common-src/com/todoroo/andlib/widget/Api4GestureDetector.java @@ -7,8 +7,8 @@ import android.gesture.Gesture; import android.gesture.GestureLibraries; import android.gesture.GestureLibrary; import android.gesture.GestureOverlayView; -import android.gesture.Prediction; import android.gesture.GestureOverlayView.OnGesturePerformedListener; +import android.gesture.Prediction; import com.todoroo.andlib.widget.GestureService.GestureInterface; @@ -22,7 +22,8 @@ public class Api4GestureDetector implements OnGesturePerformedListener { if(mLibrary.load()) { GestureOverlayView gestures = (GestureOverlayView) activity.findViewById(view); - gestures.addOnGesturePerformedListener(this); + if(gestures != null) + gestures.addOnGesturePerformedListener(this); } } diff --git a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksListActivity.java b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksListActivity.java index 15f66eba5..263429577 100644 --- a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksListActivity.java +++ b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksListActivity.java @@ -62,14 +62,14 @@ public class GtasksListActivity extends DraggableTaskListActivity { public void swipeRight(int which) { long targetTaskId = taskAdapter.getItemId(which); gtasksTaskListUpdater.indent(listId, targetTaskId, 1); - taskAdapter.notifyDataSetChanged(); + loadTaskListContent(true); } @Override public void swipeLeft(int which) { long targetTaskId = taskAdapter.getItemId(which); gtasksTaskListUpdater.indent(listId, targetTaskId, -1); - taskAdapter.notifyDataSetChanged(); + loadTaskListContent(true); } }; diff --git a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksTaskListUpdater.java b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksTaskListUpdater.java index 57978fa1c..56f00bf11 100644 --- a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksTaskListUpdater.java +++ b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksTaskListUpdater.java @@ -6,9 +6,11 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; import android.text.TextUtils; +import android.widget.Toast; import com.todoroo.andlib.data.TodorooCursor; import com.todoroo.andlib.service.Autowired; +import com.todoroo.andlib.service.ContextManager; import com.todoroo.andlib.service.DependencyInjectionService; import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.astrid.api.Filter; @@ -77,6 +79,7 @@ public class GtasksTaskListUpdater { // if indenting is warranted, indent me and my children if(indent + delta <= previousIndent.get() + 1 && indent + delta >= 0) { targetTaskIndent.set(indent); + Toast.makeText(ContextManager.getContext(), "indent: " + (indent + delta), Toast.LENGTH_SHORT).show(); metadata.setValue(GtasksMetadata.INDENT, indent + delta); if(delta > 0) metadata.setValue(GtasksMetadata.PARENT_TASK, previousTask.get()); diff --git a/astrid/plugin-src/com/todoroo/astrid/notes/NoteDetailExposer.java b/astrid/plugin-src/com/todoroo/astrid/notes/NoteDetailExposer.java index 96397e5f7..870eeea44 100644 --- a/astrid/plugin-src/com/todoroo/astrid/notes/NoteDetailExposer.java +++ b/astrid/plugin-src/com/todoroo/astrid/notes/NoteDetailExposer.java @@ -9,10 +9,10 @@ import android.content.Context; import android.content.Intent; import com.timsu.astrid.R; +import com.todoroo.andlib.utility.Preferences; import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.core.PluginServices; import com.todoroo.astrid.data.Task; -import com.todoroo.andlib.utility.Preferences; /** * Exposes Task Detail for notes @@ -44,7 +44,6 @@ public class NoteDetailExposer extends BroadcastReceiver { } public String getTaskDetails(long id, boolean extended) { - if(Preferences.getBoolean(R.string.p_showNotes, false)) { if(extended) return null; diff --git a/astrid/res/drawable/grabber.png b/astrid/res/drawable/grabber.png index 9acdda0cb..9169ae57b 100644 Binary files a/astrid/res/drawable/grabber.png and b/astrid/res/drawable/grabber.png differ diff --git a/astrid/res/layout/task_adapter_draggable_row.xml b/astrid/res/layout/task_adapter_draggable_row.xml index 501a8a9d6..fbac5f86b 100644 --- a/astrid/res/layout/task_adapter_draggable_row.xml +++ b/astrid/res/layout/task_adapter_draggable_row.xml @@ -27,12 +27,13 @@ android:layout_width="0dip" android:layout_height="fill_parent"/> - - + + android:scaleType="center" + android:src="@drawable/grabber"/> - - - + + android:paddingLeft="5dip" + android:button="@drawable/btn_check"/> diff --git a/astrid/res/layout/task_list_body_draggable.xml b/astrid/res/layout/task_list_body_draggable.xml index 24b70af4e..a62b5cc87 100644 --- a/astrid/res/layout/task_list_body_draggable.xml +++ b/astrid/res/layout/task_list_body_draggable.xml @@ -1,14 +1,8 @@ - + android:layout_height="wrap_content"> - +