diff options
author | Mike Fulbright <msf@redhat.com> | 2002-03-04 21:08:14 +0000 |
---|---|---|
committer | Mike Fulbright <msf@redhat.com> | 2002-03-04 21:08:14 +0000 |
commit | f0212770d4d5d17434c6fff5c682df584b8ce5a8 (patch) | |
tree | cc02ede2d21f05a25e7b5ad90d3cd38a90a9c78b /packages.py | |
parent | 2a635bf84d86d360f2d3aad4599313f24a433894 (diff) | |
download | anaconda-f0212770d4d5d17434c6fff5c682df584b8ce5a8.tar.gz anaconda-f0212770d4d5d17434c6fff5c682df584b8ce5a8.tar.xz anaconda-f0212770d4d5d17434c6fff5c682df584b8ce5a8.zip |
pop up a dialog during long delay at start of transcation sort that doesnt do callbacks, otherwise machine looks very locked up
Diffstat (limited to 'packages.py')
-rw-r--r-- | packages.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/packages.py b/packages.py index a0dd0ffc0..4d7235a7a 100644 --- a/packages.py +++ b/packages.py @@ -209,6 +209,12 @@ def checkDependencies(dir, intf, disp, id, instPath): class InstallCallback: def cb(self, what, amount, total, h, (param)): + # first time here means we should pop the window telling + # user to wait until we get here + if not self.beenCalled: + self.beenCalled = 1 + self.initWindow.pop() + if (what == rpm.RPMCALLBACK_TRANS_START): # step 6 is the bulk of the transaction set # processing time @@ -280,6 +286,8 @@ class InstallCallback: self.progressWindow = None self.instLog = instLog self.modeText = modeText + self.beenCalled = 0 + self.initWindow = None def sortPackages(first, second): # install packages in cd order (cd tag is 1000002) @@ -562,6 +570,8 @@ def doInstall(method, id, intf, instPath): "%s" "\n\n") % (id.upgradeDeps,)) + cb.initWindow = intf.waitWindow(_("Install Starting"), + _("Starting install process, may take several minutes...")) problems = ts.run(0, ~rpm.RPMPROB_FILTER_DISKSPACE, cb.cb, 0) |