newui: Refactor adapters using base adapter