From 8bdb7239b62257fd3dcafd845401bcaecb5c6802 Mon Sep 17 00:00:00 2001 From: ivan baktsheev Date: Sun, 10 Nov 2013 22:58:18 +0300 Subject: [PATCH 1/5] disallowOverscroll option similar to the main cordova webview --- src/ios/CDVInAppBrowser.m | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/ios/CDVInAppBrowser.m b/src/ios/CDVInAppBrowser.m index 4ef051f0e..23f2831f9 100644 --- a/src/ios/CDVInAppBrowser.m +++ b/src/ios/CDVInAppBrowser.m @@ -146,6 +146,18 @@ - (void)openInInAppBrowser:(NSURL*)url withOptions:(NSString*)options } self.inAppBrowserViewController.modalTransitionStyle = transitionStyle; + // prevent webView from bouncing + if (!browserOptions.disallowOverscroll) { + if ([self.inAppBrowserViewController.webView respondsToSelector:@selector(scrollView)]) { + ((UIScrollView*)[self.inAppBrowserViewController.webView scrollView]).bounces = NO; + } else { + for (id subview in self.inAppBrowserViewController.webView.subviews) { + if ([[subview class] isSubclassOfClass:[UIScrollView class]]) { + ((UIScrollView*)subview).bounces = NO; + } + } + } + } // UIWebView options self.inAppBrowserViewController.webView.scalesPageToFit = browserOptions.enableviewportscale; @@ -821,6 +833,7 @@ - (id)init self.keyboarddisplayrequiresuseraction = YES; self.suppressesincrementalrendering = NO; self.hidden = NO; + self.disallowOverscroll = YES; } return self; From 25e0b084ddd49c6f2b3db6c2c58fe243c04a676f Mon Sep 17 00:00:00 2001 From: ivan baktsheev Date: Sun, 10 Nov 2013 23:00:05 +0300 Subject: [PATCH 2/5] added property for option --- src/ios/CDVInAppBrowser.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ios/CDVInAppBrowser.h b/src/ios/CDVInAppBrowser.h index 059edb0dc..776b99aed 100644 --- a/src/ios/CDVInAppBrowser.h +++ b/src/ios/CDVInAppBrowser.h @@ -83,6 +83,7 @@ @property (nonatomic, assign) BOOL keyboarddisplayrequiresuseraction; @property (nonatomic, assign) BOOL suppressesincrementalrendering; @property (nonatomic, assign) BOOL hidden; +@property (nonatomic, assign) BOOL disallowOverscroll; + (CDVInAppBrowserOptions*)parseOptions:(NSString*)options; From 7f7e26a5dac3ce508befd22d4d82ea419babd6bb Mon Sep 17 00:00:00 2001 From: ivan baktsheev Date: Sun, 10 Nov 2013 23:21:24 +0300 Subject: [PATCH 3/5] property name fix --- src/ios/CDVInAppBrowser.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ios/CDVInAppBrowser.h b/src/ios/CDVInAppBrowser.h index 776b99aed..868450449 100644 --- a/src/ios/CDVInAppBrowser.h +++ b/src/ios/CDVInAppBrowser.h @@ -83,7 +83,7 @@ @property (nonatomic, assign) BOOL keyboarddisplayrequiresuseraction; @property (nonatomic, assign) BOOL suppressesincrementalrendering; @property (nonatomic, assign) BOOL hidden; -@property (nonatomic, assign) BOOL disallowOverscroll; +@property (nonatomic, assign) BOOL disallowoverscroll; + (CDVInAppBrowserOptions*)parseOptions:(NSString*)options; From 99d34c6ed1de9400ca56b6168ec6a57828eddb31 Mon Sep 17 00:00:00 2001 From: ivan baktsheev Date: Sun, 10 Nov 2013 23:22:29 +0300 Subject: [PATCH 4/5] property name fix; logic fix --- src/ios/CDVInAppBrowser.m | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ios/CDVInAppBrowser.m b/src/ios/CDVInAppBrowser.m index 23f2831f9..53b906190 100644 --- a/src/ios/CDVInAppBrowser.m +++ b/src/ios/CDVInAppBrowser.m @@ -147,7 +147,7 @@ - (void)openInInAppBrowser:(NSURL*)url withOptions:(NSString*)options self.inAppBrowserViewController.modalTransitionStyle = transitionStyle; // prevent webView from bouncing - if (!browserOptions.disallowOverscroll) { + if (browserOptions.disallowOverscroll) { if ([self.inAppBrowserViewController.webView respondsToSelector:@selector(scrollView)]) { ((UIScrollView*)[self.inAppBrowserViewController.webView scrollView]).bounces = NO; } else { @@ -833,7 +833,7 @@ - (id)init self.keyboarddisplayrequiresuseraction = YES; self.suppressesincrementalrendering = NO; self.hidden = NO; - self.disallowOverscroll = YES; + self.disallowoverscroll = NO; } return self; From c076bfac1db8a7c2f1d90f19610660d18a1980e9 Mon Sep 17 00:00:00 2001 From: ivan baktsheev Date: Wed, 4 Dec 2013 05:32:32 +0300 Subject: [PATCH 5/5] disallowOverscroll => disallowoverscroll --- src/ios/CDVInAppBrowser.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ios/CDVInAppBrowser.m b/src/ios/CDVInAppBrowser.m index 53b906190..a05cc6e0e 100644 --- a/src/ios/CDVInAppBrowser.m +++ b/src/ios/CDVInAppBrowser.m @@ -147,7 +147,7 @@ - (void)openInInAppBrowser:(NSURL*)url withOptions:(NSString*)options self.inAppBrowserViewController.modalTransitionStyle = transitionStyle; // prevent webView from bouncing - if (browserOptions.disallowOverscroll) { + if (browserOptions.disallowoverscroll) { if ([self.inAppBrowserViewController.webView respondsToSelector:@selector(scrollView)]) { ((UIScrollView*)[self.inAppBrowserViewController.webView scrollView]).bounces = NO; } else {