screen saver refactor