On 2021-11-29 10:03, josef Reidinger wrote:
I tried in both qt and ncurses release notes button and check how it behave. In QT it works perfectly, as it just open release notes, but progress is still updated and any issue is properly reported with popup showing on top of release notes. In ncurses it is worse. Opening release notes blocks whole installation process. So it does not just stop updating UI, but it also does not install at all. So reading release notes is bad idea.
Yes, this is expected: In the Qt UI, this uses (as part of the YQWizard) a Qt-based dialog for the release notes which is completely self-sufficient and does its own event handling on the Qt level, so the abstract libyui layer doesn't even know that it exists or is open on top of the main window, so it doesn't interfere with updating that main dialog. In NCurses, this emulates a similar thing, but it's based on a dialog that uses YUI widgets, so it's another libyui dialog that just opens on top of the main dialog and does its own event handling there with UI.UserInput(); but even if it didn't, any attempt to update the main window (the wizard) would fail since all those UI calls always operate on the toplevel dialog which is then that release notes dialog, not the expected wizard window; the widgets that it wants to update with UI.ChangeWidget() or replace with UI.ReplaceWidget() simply don't exist in that dialog, and those calls fail; which is fortunate because UI.ReplaceWidget() throws a fatal exception if it fails (UI.ChangeWidget() just logs a y2error).
Question is how to proceed here? The simple proposal I have is to simply not show release notes button in ncurses as majority of local users use qt and for remote ones, there are many other ways how to entertain or read release notes outside of installation process.
Yes; as we discussed, we don't need the complete luxury version for NCurses; IMHO we can simply omit that "Release Notes" button in NCurses during package installation. The user already had plenty of opportunities to read them: During any previous wizard step during the installation workflow. Let's keep this simple, robust and easy to maintain. Kind regards -- Stefan Hundhammer <shundhammer@suse.de> YaST Developer SUSE Software Solutions Germany GmbH GF: Ivo Totev; HRB 36809, AG Nürnberg