Revert "Removed [CATransaction flush] & added [NSRunloop runUntilDate:] instead." because restoring originalRootViewController must be done before running run loop, or its view.frame will not be properly set."

This reverts commit 43d51595a580e8e8262293c9525c5b45383b5fe0.