improved orientationchange handling