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 <[email protected]>
YaST Developer
SUSE Software Solutions Germany GmbH
GF: Ivo Totev; HRB 36809, AG Nürnberg