Refactor and arrange ListAdapter.