Much cleaner init sequence, no leakage, works with screen rotation.