visibleItems.addAll(destinationIndex, movedItems);
/* Save Visible */
int[] newState = new int[items.length];
for (int i = 0; i < visibleItems.size(); i++) {
ShareProvider provider = visibleItems.get(i);
int index = provider.getIndex();
index++; //Adjust to non-zero indexing
if (!provider.isEnabled())
index = index * -1;
newState[i] = index;
}