Cross widget refactoring #144