summaryrefslogtreecommitdiff
authordrw <drw>2003-04-20 23:58:21 (UTC)
committer drw <drw>2003-04-20 23:58:21 (UTC)
commit9163bfcc25b78477a75a153f2a75be30ad297c6a (patch) (unidiff)
tree668e10a9bb0ca7937e3f630a62d3afbbbbf06438
parent6b78c023f67433b8f38d9e77598b8530988bfec8 (diff)
downloadopie-9163bfcc25b78477a75a153f2a75be30ad297c6a.zip
opie-9163bfcc25b78477a75a153f2a75be30ad297c6a.tar.gz
opie-9163bfcc25b78477a75a153f2a75be30ad297c6a.tar.bz2
Finally fixed it so that packages are not incorrectly marked as having an update available
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/aqpkg/mainwin.cpp6
-rw-r--r--noncore/settings/aqpkg/package.cpp5
-rw-r--r--noncore/settings/aqpkg/package.h19
-rw-r--r--noncore/settings/aqpkg/server.cpp2
4 files changed, 16 insertions, 16 deletions
diff --git a/noncore/settings/aqpkg/mainwin.cpp b/noncore/settings/aqpkg/mainwin.cpp
index 6ea619c..fb40d52 100644
--- a/noncore/settings/aqpkg/mainwin.cpp
+++ b/noncore/settings/aqpkg/mainwin.cpp
@@ -639,8 +639,7 @@ void MainWindow :: serverSelected( int, bool raiseProgress )
639 // Apply show only new installed packages filter 639 // Apply show only new installed packages filter
640 if ( showUpgradedPkgs ) 640 if ( showUpgradedPkgs )
641 { 641 {
642 if ( !package->isInstalled() || 642 if ( !package->isInstalled() || !package->getNewVersionAvailable() )
643 compareVersions( package->getInstalledVersion(), package->getVersion() ) != 1 )
644 continue; 643 continue;
645 } 644 }
646 645
@@ -663,8 +662,7 @@ void MainWindow :: serverSelected( int, bool raiseProgress )
663 { 662 {
664 // If a different version of package is available, show update available icon 663 // If a different version of package is available, show update available icon
665 // Otherwise, show installed icon 664 // Otherwise, show installed icon
666 if ( package->getVersion() != package->getInstalledVersion() && 665 if ( package->getNewVersionAvailable())
667 compareVersions( package->getInstalledVersion(), package->getVersion() ) == 1)
668 { 666 {
669 667
670 item->setPixmap( 0, updatedIcon ); 668 item->setPixmap( 0, updatedIcon );
diff --git a/noncore/settings/aqpkg/package.cpp b/noncore/settings/aqpkg/package.cpp
index 83e0706..3395870 100644
--- a/noncore/settings/aqpkg/package.cpp
+++ b/noncore/settings/aqpkg/package.cpp
@@ -50,6 +50,7 @@ Package::Package( char *name )
50 installedToRoot = false; 50 installedToRoot = false;
51 installed = false; 51 installed = false;
52 installedTo = 0; 52 installedTo = 0;
53 differentVersionAvailable = false;
53} 54}
54 55
55Package::~Package() 56Package::~Package()
@@ -89,7 +90,7 @@ void Package :: setLocalPackage( Package *p )
89 localPackage = p; 90 localPackage = p;
90 91
91 if ( localPackage ) 92 if ( localPackage )
92 if ( localPackage->getVersion() != getVersion() ) 93 if ( localPackage->getVersion() < getVersion() && !installed )
93 differentVersionAvailable = true; 94 differentVersionAvailable = true;
94 else 95 else
95 differentVersionAvailable = false; 96 differentVersionAvailable = false;
@@ -100,7 +101,7 @@ void Package :: setVersion( const QString &v )
100 version = v; 101 version = v;
101 102
102 if ( localPackage ) 103 if ( localPackage )
103 if ( localPackage->getVersion() != getVersion() ) 104 if ( localPackage->getVersion() < getVersion() && !installed )
104 differentVersionAvailable = true; 105 differentVersionAvailable = true;
105 else 106 else
106 differentVersionAvailable = false; 107 differentVersionAvailable = false;
diff --git a/noncore/settings/aqpkg/package.h b/noncore/settings/aqpkg/package.h
index f5a132f..110ae91 100644
--- a/noncore/settings/aqpkg/package.h
+++ b/noncore/settings/aqpkg/package.h
@@ -47,15 +47,16 @@ public:
47 void setPackageSize( const QString &size ) { packageSize = size; } 47 void setPackageSize( const QString &size ) { packageSize = size; }
48 void setSection( const QString &sect) { section = sect; } 48 void setSection( const QString &sect) { section = sect; }
49 49
50 Package *getLocalPackage() { return localPackage; } 50 Package *getLocalPackage() { return localPackage; }
51 QString getPackageName() { return packageName; } 51 QString getPackageName() { return packageName; }
52 QString getVersion() { return version; } 52 QString getVersion() { return version; }
53 QString getStatus() { return status; } 53 QString getStatus() { return status; }
54 QString getDescription() { return description; } 54 QString getDescription() { return description; }
55 QString getFilename() { return filename; } 55 QString getFilename() { return filename; }
56 QString getDependancies() { return dependancies; } 56 QString getDependancies() { return dependancies; }
57 QString getPackageSize() { return packageSize; } 57 QString getPackageSize() { return packageSize; }
58 QString getSection() { return section; } 58 QString getSection() { return section; }
59 bool getNewVersionAvailable() { return differentVersionAvailable; }
59 60
60 bool isInstalled(); 61 bool isInstalled();
61 bool isPackageStoredLocally(){ return packageStoredLocally; } 62 bool isPackageStoredLocally(){ return packageStoredLocally; }
diff --git a/noncore/settings/aqpkg/server.cpp b/noncore/settings/aqpkg/server.cpp
index 9a239a5..e2b8096 100644
--- a/noncore/settings/aqpkg/server.cpp
+++ b/noncore/settings/aqpkg/server.cpp
@@ -184,7 +184,7 @@ void Server :: readPackageFile( Server *local, bool clearAll, bool installingToR
184 } 184 }
185 else 185 else
186 { 186 {
187 if (currPackage->getStatus().find( "deinstall" ) != -1 ) 187 if ( currPackage->isInstalled() )
188 currPackage->setInstalledTo( dest ); 188 currPackage->setInstalledTo( dest );
189 } 189 }
190 } 190 }