diff --git a/src/ios/CDVThemeableBrowser.m b/src/ios/CDVThemeableBrowser.m index eae386782..9d32b4da4 100644 --- a/src/ios/CDVThemeableBrowser.m +++ b/src/ios/CDVThemeableBrowser.m @@ -78,6 +78,11 @@ - (CDVThemeableBrowser*)initWithWebView:(UIWebView*)theWebView return self; } +- (id)settingForKey:(NSString*)key +{ + return [self.commandDelegate.settings objectForKey:[key lowercaseString]]; +} + - (void)onReset { [self close:nil]; @@ -216,9 +221,18 @@ - (void)openInThemeableBrowser:(NSURL*)url withOptions:(NSString*)options } if (self.themeableBrowserViewController == nil) { - NSString* originalUA = [CDVUserAgentUtil originalUserAgent]; + NSString* userAgent = [CDVUserAgentUtil originalUserAgent]; + NSString* overrideUserAgent = [self settingForKey:@"OverrideUserAgent"]; + if (overrideUserAgent) { + userAgent = overrideUserAgent; + } else { + NSString* appendUserAgent = [self settingForKey:@"AppendUserAgent"]; + if(appendUserAgent) { + userAgent = [userAgent stringByAppendingString: appendUserAgent]; + } + } self.themeableBrowserViewController = [[CDVThemeableBrowserViewController alloc] - initWithUserAgent:originalUA prevUserAgent:[self.commandDelegate userAgent] + initWithUserAgent:userAgent prevUserAgent:[self.commandDelegate userAgent] browserOptions: browserOptions navigationDelete:self statusBarStyle:[UIApplication sharedApplication].statusBarStyle];