]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/ui/templates/TemplateDetailsAdapter.java
touch helper: avoid moving an item to its present position
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / ui / templates / TemplateDetailsAdapter.java
index 5c49a494a6958885fc59b9016988ed89fc79b13a..297fa73e3f012c7bd42b40cc6047d228b4c32cda 100644 (file)
@@ -166,6 +166,16 @@ class TemplateDetailsAdapter extends RecyclerView.Adapter<TemplateDetailsAdapter
 
                 final int fromPosition = viewHolder.getAdapterPosition();
                 final int toPosition = target.getAdapterPosition();
+                if (fromPosition == toPosition) {
+                    Logger.debug("drag", String.format(Locale.US,
+                            "Ignoring request to move an account from position %d to %d",
+                            fromPosition, toPosition));
+                    return false;
+                }
+
+                Logger.debug("drag",
+                        String.format(Locale.US, "Moving account from %d to %d", fromPosition,
+                                toPosition));
                 mModel.moveItem(fromPosition, toPosition);
 
                 return true;
@@ -193,7 +203,7 @@ class TemplateDetailsAdapter extends RecyclerView.Adapter<TemplateDetailsAdapter
     public long getItemId(int position) {
         // header item is always first and IDs id may duplicate some of the account IDs
         if (position == 0)
-            return -1;
+            return 0;
         TemplateDetailsItem.AccountRow accRow = differ.getCurrentList()
                                                       .get(position)
                                                       .asAccountRowItem();