X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/7b0d371a7bbfb9e8d624eec9ed97e9a835f75ca7..ac2878879847f965225e0f72c22ad17b513c16e6:/lib/python/Screens/Ipkg.py diff --git a/lib/python/Screens/Ipkg.py b/lib/python/Screens/Ipkg.py old mode 100644 new mode 100755 index 216cf8c8..7f98f3df --- a/lib/python/Screens/Ipkg.py +++ b/lib/python/Screens/Ipkg.py @@ -25,10 +25,11 @@ class Ipkg(Screen): self.packages = 0 self.error = 0 + self.processed_packages = [] self.activity = 0 self.activityTimer = eTimer() - self.activityTimer.timeout.get().append(self.doActivityTimer) + self.activityTimer.callback.append(self.doActivityTimer) #self.activityTimer.start(100, False) self.ipkg = IpkgComponent() @@ -54,7 +55,7 @@ class Ipkg(Screen): self.slider.setValue(len(self.cmdList)) self.package.setText("") - self.status.setText(_("Done - Installed or upgraded %d packages with %d errors") % (self.packages, self.error)) + self.status.setText(_("Done - Installed, upgraded or removed %d packages with %d errors") % (self.packages, self.error)) return False else: cmd = self.cmdList[self.runningCmd] @@ -85,11 +86,21 @@ class Ipkg(Screen): self.slider.setValue(self.sliderPackages[param]) self.package.setText(param) self.status.setText(_("Upgrading")) - self.packages += 1 + if not param in self.processed_packages: + self.processed_packages.append(param) + self.packages += 1 elif event == IpkgComponent.EVENT_INSTALL: self.package.setText(param) self.status.setText(_("Installing")) - self.packages += 1 + if not param in self.processed_packages: + self.processed_packages.append(param) + self.packages += 1 + elif event == IpkgComponent.EVENT_REMOVE: + self.package.setText(param) + self.status.setText(_("Removing")) + if not param in self.processed_packages: + self.processed_packages.append(param) + self.packages += 1 elif event == IpkgComponent.EVENT_CONFIGURING: self.package.setText(param) self.status.setText(_("Configuring")) @@ -99,10 +110,10 @@ class Ipkg(Screen): self.runNextCmd() elif event == IpkgComponent.EVENT_MODIFIED: self.session.openWithCallback( - self.modificationCallback, - MessageBox, - _("A configuration file (%s) was modified since Installation.\nDo you want to keep your version?") % (param) - ) + self.modificationCallback, + MessageBox, + _("A configuration file (%s) was modified since Installation.\nDo you want to keep your version?") % (param) + ) def modificationCallback(self, res): self.ipkg.write(res and "N" or "Y")