X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fui%2Ftemplates%2FTemplateDetailsViewModel.java;h=bf1dc35a1d1c904c34c2613d20c4bdeb53cd140d;hb=128cb44c82144c3bb2fcba8afba5636c0196b61d;hp=5132af264025056cb95a9ab9fde9271aadeea702;hpb=4b16829ace7160afba02d7f9bba516bd40f1fcbd;p=mobile-ledger.git diff --git a/app/src/main/java/net/ktnx/mobileledger/ui/templates/TemplateDetailsViewModel.java b/app/src/main/java/net/ktnx/mobileledger/ui/templates/TemplateDetailsViewModel.java index 5132af26..bf1dc35a 100644 --- a/app/src/main/java/net/ktnx/mobileledger/ui/templates/TemplateDetailsViewModel.java +++ b/app/src/main/java/net/ktnx/mobileledger/ui/templates/TemplateDetailsViewModel.java @@ -66,7 +66,7 @@ public class TemplateDetailsViewModel extends ViewModel { if (list.size() < 1) { final TemplateDetailsItem.Header header = TemplateDetailsItem.createHeader(); header.setName(mDefaultPatternName); - header.setId(genItemId()); + header.setId(0); list.add(header); changes = true; } @@ -184,6 +184,21 @@ public class TemplateDetailsViewModel extends ViewModel { taDAO.finishSave(mPatternId); }); } + private ArrayList copyItems() { + List oldList = items.getValue(); + ArrayList result = new ArrayList<>(oldList.size()); + + for (TemplateDetailsItem item : oldList) { + if (item instanceof TemplateDetailsItem.Header) + result.add(new TemplateDetailsItem.Header(item.asHeaderItem())); + else if (item instanceof TemplateDetailsItem.AccountRow) + result.add(new TemplateDetailsItem.AccountRow(item.asAccountRowItem())); + else + throw new RuntimeException("Unexpected item " + item); + } + + return result; + } public void moveItem(int sourcePos, int targetPos) { ArrayList newList = new ArrayList<>(items.getValue()); TemplateDetailsItem item = newList.remove(sourcePos);