From: Jay Freeman (saurik) Date: Sun, 20 Feb 2011 00:16:44 +0000 (-0800) Subject: Use setViewportWidth: only on main thread. X-Git-Tag: v1.1.0%b1~282 X-Git-Url: https://git.saurik.com/cydia.git/commitdiff_plain/8dbdaafa2948a9c2fb180a9571bf3bb0a669b934 Use setViewportWidth: only on main thread. --- diff --git a/MobileCydia.mm b/MobileCydia.mm index cdc9a526..17b08bd4 100644 --- a/MobileCydia.mm +++ b/MobileCydia.mm @@ -4109,7 +4109,7 @@ static NSString *Warning_; } - (void) setViewportWidth:(float)width { - [indirect_ setViewportWidth:width]; + [indirect_ setViewportWidthOnMainThread:width]; } - (NSString *) stringWithFormat:(NSString *)format arguments:(WebScriptObject *)arguments { diff --git a/UICaboodle/BrowserView.h b/UICaboodle/BrowserView.h index 4e9be45a..51cb345f 100644 --- a/UICaboodle/BrowserView.h +++ b/UICaboodle/BrowserView.h @@ -130,4 +130,6 @@ - (void) dispatchEvent:(NSString *)event; +- (void) setViewportWidthOnMainThread:(float)value; + @end diff --git a/UICaboodle/BrowserView.mm b/UICaboodle/BrowserView.mm index d5496403..43f2905a 100644 --- a/UICaboodle/BrowserView.mm +++ b/UICaboodle/BrowserView.mm @@ -646,6 +646,14 @@ static void $UIWebViewWebViewDelegate$webViewClose$(UIWebViewWebViewDelegate *se [self _setViewportWidth]; } +- (void) _setViewportWidthOnMainThread:(NSNumber *)width { + [self setViewportWidth:[width floatValue]]; +} + +- (void) setViewportWidthOnMainThread:(float)width { + [self performSelectorOnMainThread:@selector(_setViewportWidthOnMainThread:) withObject:[NSNumber numberWithFloat:width] waitUntilDone:NO]; +} + - (void) webViewUpdateViewSettings:(UIWebView *)view { [self _setViewportWidth]; }