You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Oliver Weiss (JIRA)" <ji...@apache.org> on 2017/04/11 15:39:41 UTC
[jira] [Commented] (CB-12586) [iOS] Method hide doesn't works
[ https://issues.apache.org/jira/browse/CB-12586?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15964532#comment-15964532 ]
Oliver Weiss commented on CB-12586:
-----------------------------------
Hey,
I have the same issue with multiple iPads. I am not experienced with Cordova Plugins. I am using the newest version of InAppBrowser (1.7.0) now. But they did not fix this.
I changed the hide function in the CDVInAppBrowser.m to the following, but the ref.hide() is still not working. Can you tell me, if I did something wrong? This is a major problem for me right now :( I need to hide the InAppBrowser to work with a camera plugin. Another possibility would be to make the InAppBrowser transparent. But I have no idea how to make this work. So I need the hide() function to work...
Thanks for the help!
{code}
- (void)hide:(CDVInvokedUrlCommand*)command
{
if (self.inAppBrowserViewController == nil) {
NSLog(@"Tried to hide IAB after it was closed.");
return;
}
if (_previousStatusBarStyle == -1) {
NSLog(@"Tried to hide IAB while already hidden");
return;
}
dispatch_async(dispatch_get_global_queue( DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
if (weakSelf.inAppBrowserViewController != nil) {
_previousStatusBarStyle = -1;
[weakSelf.viewController dismissViewControllerAnimated:YES completion:nil];
// I have added this line in order to hide the webview
[weakSelf.inAppBrowserViewController dismissViewControllerAnimated:YES completion:nil];
}
});
}
{code}
> [iOS] Method hide doesn't works
> -------------------------------
>
> Key: CB-12586
> URL: https://issues.apache.org/jira/browse/CB-12586
> Project: Apache Cordova
> Issue Type: Bug
> Components: Plugin InAppBrowser
> Affects Versions: 1.7.0
> Environment: I have tested on the iPhone 7 with iOS 10.2.1 and the iPhone 6 Plus with iOS 10.2
> Reporter: Roberto Orden Erena
>
> I have using the `hide()` method in order to hide the webview window when the mobile hasn't wifi connection, in Android works fine, but in iOS not.
> My temporal solution for this is:
> {code}
> // Run later to avoid the "took a long time" log message.
> dispatch_async(dispatch_get_global_queue( DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
> if (weakSelf.inAppBrowserViewController != nil) {
> _previousStatusBarStyle = -1;
> [weakSelf.viewController dismissViewControllerAnimated:YES completion:nil];
> // I have added this line in order to hide the webview
> [weakSelf.inAppBrowserViewController dismissViewControllerAnimated:YES completion:nil];
> }
> });
> {code}
> I think that : "what is the weakSelf.viewController?", when shows and when creates the inAppBrowser the plugin uses self.inAppBrowserViewController. Why use at this point viewController instead of?
> Note: It's my first issue report, If I have done wrong it, please notify me in order to do better the next time.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org