summaryrefslogtreecommitdiff
path: root/CyteKit
diff options
context:
space:
mode:
Diffstat (limited to 'CyteKit')
-rw-r--r--CyteKit/WebViewController.h1
-rw-r--r--CyteKit/WebViewController.mm17
2 files changed, 14 insertions, 4 deletions
diff --git a/CyteKit/WebViewController.h b/CyteKit/WebViewController.h
index d2f9fb5..db40a1c 100644
--- a/CyteKit/WebViewController.h
+++ b/CyteKit/WebViewController.h
@@ -125,6 +125,7 @@
- (void) customButtonClicked;
- (void) applyRightButton;
+- (UIBarButtonItem *) customButton;
- (UIBarButtonItem *) rightButton;
- (void) _didStartLoading;
diff --git a/CyteKit/WebViewController.mm b/CyteKit/WebViewController.mm
index b954b8e..b59d830 100644
--- a/CyteKit/WebViewController.mm
+++ b/CyteKit/WebViewController.mm
@@ -598,7 +598,12 @@ float CYScrollViewDecelerationRateNormal;
}
- (UIBarButtonItem *) customButton {
- return custom_ == [NSNull null] ? nil : [[[UIBarButtonItem alloc]
+ if (custom_ == nil)
+ return nil;
+ else if (custom_ == [NSNull null])
+ return (UIBarButtonItem *) [NSNull null];
+
+ return [[[UIBarButtonItem alloc]
initWithTitle:static_cast<NSString *>(custom_.operator NSObject *())
style:[self rightButtonStyle]
target:self
@@ -629,9 +634,13 @@ float CYScrollViewDecelerationRateNormal;
} else {
[indicator_ stopAnimating];
- [[self navigationItem] setRightBarButtonItem:(
- custom_ != nil ? [self customButton] : [self rightButton]
- ) animated:YES];
+ UIBarButtonItem *button([self customButton]);
+ if (button == nil)
+ button = [self rightButton];
+ else if (button == (UIBarButtonItem *) [NSNull null])
+ button = nil;
+
+ [[self navigationItem] setRightBarButtonItem:button];
}
}