refactor ListFragment + solve several dialog bugs