refactored out screen update logic