diff options
-rw-r--r-- | UICaboodle/BrowserView.m | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/UICaboodle/BrowserView.m b/UICaboodle/BrowserView.m index 68427d2..ed6ddbe 100644 --- a/UICaboodle/BrowserView.m +++ b/UICaboodle/BrowserView.m @@ -371,7 +371,7 @@ [book_ pushPage:page]; } -- (BOOL) getSpecial:(NSURL *)url { +- (BOOL) getSpecial:(NSURL *)url swap:(BOOL)swap { #if ForSaurik NSLog(@"getSpecial:%@", url); #endif @@ -391,7 +391,10 @@ return false; if (page != nil) - [self swapPage:page]; + if (swap) + [self swapPage:page]; + else + [self pushPage:page]; return true; } @@ -511,7 +514,7 @@ if (NSURL *url = [request URL]) { if (name == nil) unknown: { - if (![self getSpecial:url]) { + if (![self getSpecial:url swap:NO]) { NSString *scheme([[url scheme] lowercaseString]); if ([scheme isEqualToString:@"mailto"]) [delegate_ openMailToURL:url]; @@ -625,7 +628,7 @@ goto ignore; } - if ([self getSpecial:url]) + if ([self getSpecial:url swap:YES]) goto ignore; else if ([WebView _canHandleRequest:request]) goto use; |