summaryrefslogtreecommitdiff
path: root/Cydia.mm
diff options
context:
space:
mode:
Diffstat (limited to 'Cydia.mm')
-rw-r--r--Cydia.mm30
1 files changed, 15 insertions, 15 deletions
diff --git a/Cydia.mm b/Cydia.mm
index 3dfb950..2d7b203 100644
--- a/Cydia.mm
+++ b/Cydia.mm
@@ -5229,9 +5229,12 @@ bool DepSubstrate(const pkgCache::VerIterator &iterator) {
}
}
+// We don't want to allow non-commercial packages to do custom things to the install button,
+// so it must call customButtonClicked with a custom commercial_ == 1 fallthrough.
- (void) customButtonClicked {
- // Wait until it's done loading.
- if (![self isLoading])
+ if (commercial_)
+ [super customButtonClicked];
+ else
[self _customButtonClicked];
}
@@ -5242,6 +5245,16 @@ bool DepSubstrate(const pkgCache::VerIterator &iterator) {
- (void) applyLoadingTitle {
// Don't show "Loading" as the title. Ever.
}
+
+- (UIBarButtonItem *) rightButton {
+ int count = [buttons_ count];
+ return [[[UIBarButtonItem alloc]
+ initWithTitle:count == 0 ? nil : count != 1 ? UCLocalize("MODIFY") : [buttons_ objectAtIndex:0]
+ style:UIBarButtonItemStylePlain
+ target:self
+ action:@selector(customButtonClicked)
+ ] autorelease];
+}
#endif
- (id) initWithDatabase:(Database *)database {
@@ -5309,19 +5322,6 @@ bool DepSubstrate(const pkgCache::VerIterator &iterator) {
}
}
-- (void) applyRightButton {
- int count = [buttons_ count];
- UIBarButtonItem *actionItem = [[UIBarButtonItem alloc]
- initWithTitle:count == 0 ? nil : count != 1 ? UCLocalize("MODIFY") : [buttons_ objectAtIndex:0]
- style:UIBarButtonItemStylePlain
- target:self
- action:@selector(customButtonClicked)
- ];
- if (![self isLoading]) [[self navigationItem] setRightBarButtonItem:actionItem];
- else [super applyRightButton];
- [actionItem release];
-}
-
- (bool) isLoading {
return commercial_ ? [super isLoading] : false;
}