} return self;
}
+- (void)_updateFrameForDisplay {
+ [super _updateFrameForDisplay];
+ if ([self cancelButtonIndex] == -1) {
+ NSArray *buttons = [self buttons];
+ if ([buttons count]) {
+ UIImage *background = [[buttons objectAtIndex:0] backgroundForState:0];
+ for (UIThreePartButton *button in buttons)
+ [button setBackground:background forState:0];
+ }
+ }
+}
+
- (void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
button_ = buttonIndex + 1;
}
@end
/* }}} */
-@interface CYBrowserController : BrowserView {
+@interface CYBrowserController : BrowserController {
CydiaObject *cydia_;
}
} return self;
}
-- (void) didFinishLoading {
+- (void) applyRightButton {
UIBarButtonItem *rightItem = [[UIBarButtonItem alloc]
initWithTitle:UCLocalize("CONFIRM")
style:UIBarButtonItemStylePlain
action:@selector(confirmButtonClicked)
];
#if !AlwaysReload && !IgnoreInstall
- if (issues_ == nil) [[self navigationItem] setRightBarButtonItem:rightItem];
- else [[self navigationItem] setRightBarButtonItem:nil];
+ if (issues_ == nil && ![self isLoading]) [[self navigationItem] setRightBarButtonItem:rightItem];
+ else [super applyRightButton];
+#else
+ [[self navigationItem] setRightBarButtonItem:nil];
#endif
[rightItem release];
}
}
- (void) actionButtonClicked {
- if (commercial_ && [self isLoading])
- [super _rightButtonClicked];
- else
+ // Wait until it's done loading.
+ if (![self isLoading])
[self _actionButtonClicked];
}
+
+- (void) reloadButtonClicked {
+ // Don't reload a package view by clicking the button.
+}
+
+- (void) applyLoadingTitle {
+ // Don't show "Loading" as the title. Ever.
+}
#endif
- (id) initWithDatabase:(Database *)database {
}
}
-- (void) didFinishLoading {
+- (void) applyRightButton {
int count = [buttons_ count];
UIBarButtonItem *actionItem = [[UIBarButtonItem alloc]
initWithTitle:count == 0 ? nil : count != 1 ? UCLocalize("MODIFY") : [buttons_ objectAtIndex:0]
target:self
action:@selector(actionButtonClicked)
];
- [[self navigationItem] setRightBarButtonItem:actionItem];
+ if (![self isLoading]) [[self navigationItem] setRightBarButtonItem:actionItem];
+ else [super applyRightButton];
[actionItem release];
}