]> git.saurik.com Git - cydia.git/commitdiff
Removed reloading data when clearing queue. Method of clearing without reloading...
authorGrant Paul <chpwn@chpwn.com>
Sat, 16 Oct 2010 20:28:12 +0000 (13:28 -0700)
committerGrant Paul <chpwn@chpwn.com>
Sat, 16 Oct 2010 20:28:12 +0000 (13:28 -0700)
Cydia.mm

index c64a587b080a714db08797e95e6cfe5388f47534..b7d2b35157d42a97fd8579587711b358cd8387f6 100644 (file)
--- a/Cydia.mm
+++ b/Cydia.mm
@@ -8349,19 +8349,23 @@ static _finline void _setHomePage(Cydia *self) {
 - (void) cancelAndClear:(bool)clear {
     @synchronized (self) {
         if (clear) {
-            /* XXX: clear marks instead of reloading data */
-            /*pkgCacheFile &cache([database_ cache]);
+            // Clear all marks.
+            pkgCacheFile &cache([database_ cache]);
             for (pkgCache::PkgIterator iterator = cache->PkgBegin(); !iterator.end(); ++iterator) {
-                if (!cache[iterator].Keep()) cache->MarkKeep(iterator, false, false);
+                // Unmark method taken from Synaptic Package Manager.
+                               // Thanks for being sane, unlike Aptitude.
+                               if (!cache[iterator].Keep()) {
+                                       cache->MarkKeep(iterator, false);
+                                       cache->SetReInstall(iterator, false);
+                               }
             }
 
-            [self updateData];
-
+                       // Stop queuing, and let the appropriate controller know it.
             Queuing_ = false;
             [[[[tabbar_ viewControllers] objectAtIndex:[self indexOfTabWithTag:kManageTag] != -1 ? [self indexOfTabWithTag:kManageTag] : [self indexOfTabWithTag:kInstalledTag]] tabBarItem] setBadgeValue:nil];
-            [queueDelegate_ queueStatusDidChange];*/
-            [self reloadData];
+            [queueDelegate_ queueStatusDidChange];
         } else {
+                       // Start queuing, and let the controllers know.
             Queuing_ = true;
 
             [[[[tabbar_ viewControllers] objectAtIndex:[self indexOfTabWithTag:kManageTag] != -1 ? [self indexOfTabWithTag:kManageTag] : [self indexOfTabWithTag:kInstalledTag]] tabBarItem] setBadgeValue:UCLocalize("Q_D")];