refactored foreground view