package im.actor.runtime.mvvm;
import com.google.j2objc.annotations.ObjectiveCName;
import java.util.ArrayList;
public class ReorderListValue<T> extends LockableValue<ArrayList<T>> {
public ReorderListValue(String name, Value<ArrayList<T>> baseValue) {
super(name, baseValue);
}
@Override
@ObjectiveCName("get")
public ArrayList<T> get() {
return super.get();
}
public void move(int from, int to) {
if (from == to) {
return;
}
ArrayList<T> src = getModifiedValue();
ArrayList<T> res = new ArrayList<T>(src);
T item = res.remove(from);
res.add(to, item);
change(res);
}
}