Restore the current screen using try/catch.

This fixes a bug where the current screen could be set at an
inopportune time, causing crashes.

See: https://gist.github.com/vaendryl/97fb82b9cbee8bda0777