WidgetHandler refactorization