[master/rhel7] tui ErrorDialog needs to be modal (#983316)
Brian C. Lane
bcl at redhat.com
Fri Sep 20 15:58:29 UTC 2013
From: "Brian C. Lane" <bcl at redhat.com>
The dialog waits for any key to be hit, and it needs to be displayed
immediately so use a modal screen.
---
pyanaconda/packaging/yumpayload.py | 3 ++-
pyanaconda/ui/tui/__init__.py | 2 +-
pyanaconda/ui/tui/tuiobject.py | 2 ++
3 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/pyanaconda/packaging/yumpayload.py b/pyanaconda/packaging/yumpayload.py
index 5c9bbc1..d9630f9 100644
--- a/pyanaconda/packaging/yumpayload.py
+++ b/pyanaconda/packaging/yumpayload.py
@@ -1525,7 +1525,8 @@ reposdir=%s
except DependencyError as e:
if errorHandler.cb(e) == ERROR_RAISE:
progressQ.send_quit(1)
- sys.exit(1)
+ while True:
+ time.sleep(100000)
# doPreInstall
# create mountpoints for protected device mountpoints (?)
diff --git a/pyanaconda/ui/tui/__init__.py b/pyanaconda/ui/tui/__init__.py
index cb3e511..c3e8471 100644
--- a/pyanaconda/ui/tui/__init__.py
+++ b/pyanaconda/ui/tui/__init__.py
@@ -258,7 +258,7 @@ class TextUserInterface(ui.UserInterface):
"""Internal helper function that MUST BE CALLED FROM THE MAIN THREAD"""
error_window = ErrorDialog(self._app, message)
- self._app.switch_screen(error_window)
+ self._app.switch_screen_modal(error_window)
def showDetailedError(self, message, details):
return self._show_message_in_main_thread(self._showDetailedError, (message, details))
diff --git a/pyanaconda/ui/tui/tuiobject.py b/pyanaconda/ui/tui/tuiobject.py
index e2c96f7..da82909 100644
--- a/pyanaconda/ui/tui/tuiobject.py
+++ b/pyanaconda/ui/tui/tuiobject.py
@@ -44,6 +44,7 @@ class ErrorDialog(tui.UIScreen):
tui.UIScreen.refresh(self, args)
text = tui.TextWidget(self._message)
self._window.append(tui.CenterWidget(text))
+ return True
def prompt(self, args = None):
return _("Press enter to exit.")
@@ -51,6 +52,7 @@ class ErrorDialog(tui.UIScreen):
def input(self, args, key):
"""This dialog is closed by any input."""
self.close()
+ return None
class YesNoDialog(tui.UIScreen):
"""Dialog screen for Yes - No questions."""
--
1.8.3.1
More information about the anaconda-patches
mailing list