From 4e70c19cd94b78a630ee86f0c9da840c879610b7 Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Tue, 10 Apr 2018 16:20:12 -0500 Subject: [PATCH] Fix task list animations * Update item before moving * Retain scroll position after move --- app/build.gradle | 4 ++-- .../main/java/org/tasks/tasklist/TaskListRecyclerAdapter.java | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index bee1fc7fb..24e02956e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -33,8 +33,8 @@ android { defaultConfig { testApplicationId "org.tasks.test" applicationId "org.tasks" - versionCode 506 - versionName "5.3.4" + versionCode 507 + versionName "5.3.5" targetSdkVersion 27 minSdkVersion 15 testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" diff --git a/app/src/main/java/org/tasks/tasklist/TaskListRecyclerAdapter.java b/app/src/main/java/org/tasks/tasklist/TaskListRecyclerAdapter.java index da6449039..343eb7a66 100644 --- a/app/src/main/java/org/tasks/tasklist/TaskListRecyclerAdapter.java +++ b/app/src/main/java/org/tasks/tasklist/TaskListRecyclerAdapter.java @@ -52,6 +52,7 @@ public class TaskListRecyclerAdapter extends RecyclerView.Adapter private ActionMode mode = null; private boolean dragging; private boolean animate; + private RecyclerView recyclerView; public TaskListRecyclerAdapter(Activity activity, TaskAdapter adapter, ViewHolderFactory viewHolderFactory, @@ -71,6 +72,7 @@ public class TaskListRecyclerAdapter extends RecyclerView.Adapter } public void applyToRecyclerView(RecyclerView recyclerView) { + this.recyclerView = recyclerView; recyclerView.setAdapter(this); itemTouchHelper.attachToRecyclerView(recyclerView); } @@ -242,7 +244,9 @@ public class TaskListRecyclerAdapter extends RecyclerView.Adapter @Override public void onMoved(int fromPosition, int toPosition) { if (animate) { + notifyItemChanged(fromPosition); notifyItemMoved(fromPosition, toPosition); + recyclerView.scrollToPosition(fromPosition); } else { notifyDataSetChanged(); }