diff --git a/ui/app/os_ios.m b/ui/app/os_ios.m index 1acb0380..6eda6364 100644 --- a/ui/app/os_ios.m +++ b/ui/app/os_ios.m @@ -129,9 +129,6 @@ NSArray *_keyCommands; if (self) { __weak id weakSelf = self; displayLink = [CADisplayLink displayLinkWithTarget:weakSelf selector:@selector(onFrameCallback:)]; - displayLink.paused = YES; - NSRunLoop *runLoop = [NSRunLoop currentRunLoop]; - [displayLink addToRunLoop:runLoop forMode:[runLoop currentMode]]; } return self; } @@ -141,7 +138,12 @@ NSArray *_keyCommands; } - (void)setAnimating:(BOOL)anim { - displayLink.paused = !anim; + NSRunLoop *runLoop = [NSRunLoop currentRunLoop]; + if (anim) { + [displayLink addToRunLoop:runLoop forMode:[runLoop currentMode]]; + } else { + [displayLink removeFromRunLoop:runLoop forMode:[runLoop currentMode]]; + } } - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {