]> git.saurik.com Git - cydia.git/commitdiff
Reload all the crazy different iPad tabs.
authorJay Freeman (saurik) <saurik@saurik.com>
Mon, 6 Dec 2010 11:04:17 +0000 (03:04 -0800)
committerJay Freeman (saurik) <saurik@saurik.com>
Mon, 6 Dec 2010 11:05:08 +0000 (03:05 -0800)
MobileCydia.mm

index f73dce6458a6738bd6cec73e90da33a48b1d33a7..e9ff8fcbd37ecef9f1f73ae12cee422ce23ac0e3 100644 (file)
@@ -8117,15 +8117,25 @@ static _finline void _setHomePage(Cydia *self) {
 - (void) _updateData {
     [self _saveConfig];
 
-    /* XXX: this is just stupid */
-    if (tag_ != 1 && sections_ != nil)
-        [sections_ reloadData];
-    if (tag_ != 2 && changes_ != nil)
-        [changes_ reloadData];
-    if (tag_ != 4 && search_ != nil)
-        [search_ reloadData];
-
-    [(CYNavigationController *)[tabbar_ selectedViewController] reloadData];
+    NSMutableSet *tabs([[[NSMutableSet alloc] initWithCapacity:10] autorelease]);
+
+    [tabs addObject:[tabbar_ selectedViewController]];
+
+    if (sections_ != nil)
+        [tabs addObject:sections_];
+    if (changes_ != nil)
+        [tabs addObject:changes_];
+    if (manage_ != nil)
+        [tabs addObject:manage_];
+    if (search_ != nil)
+        [tabs addObject:search_];
+    if (sources_ != nil)
+        [tabs addObject:sources_];
+    if (installed_ != nil)
+        [tabs addObject:installed_];
+
+    for (CYNavigationController *tab in tabs)
+        [tab reloadData];
 
     [queueDelegate_ queueStatusDidChange];
     [[[self queueBadgeController] tabBarItem] setBadgeValue:(Queuing_ ? UCLocalize("Q_D") : nil)];