way better API for screen handling