list and item widgets refactoring