Bugzilla – Bug 1093071
YaST constantly steals focus
Last modified: 2022-01-24 20:16:22 UTC
+++ This bug was initially created as a clone of Bug #326158 +++
There are a lot of very old bugs already and at least in the current state seems like the behaviour described in these bugs is still present: YaST during some actions, especially package installation (but not in the "software management" module itself), opens many popup dialogs and steals the focus preventing to work with the system while yast does its actions
## Steps to reproduce
* In an installed system, open the yast control center, open "Remote Administration (VNC)", enable any of the Remote Administration options and confirm
* Confirm installation of necessary package and minimize or focus another application
* Observe how the yast configuration dialog gains focus again (unminimized)
## Expected result
* For minimised YaST progress dialogs should never popup
* progress dialogs should not get focus for unfocussed foreground applications
## Further details
Seems this has been reported already many times so it might be interesting to dig a bit into history here:
The YaST Qt UI does a QWidget::raise() for each new dialog (created from the Ruby/ex-YCP application code:
We are doing that for a good reason because every so often it happened that some weird window manager got the window stacking wrong and a small popup dialog would end up behind (!) the main dialog, rendering the entire YaST application unusable. Only very advanced users try [Alt][Tab] to check if maybe some modal popup is hiding behind the main window; to the great majority of users, that application has become unusable.
This was a workaround for an even larger number of other bugs that turned out to be complete showstoppers for many users. We never liked that approach, but it was a feasible workaround for a real-world problem.
What you are asking for, however, is a minor annoyance that affects only a very small number of users, mostly in our internal QA department.
For more details, see also
We will definitely not go back to make the YaST UI unusable for average users in many cases when some window manager misbehaves (which a surprising number of them tends to do).
If anybody is actually willing to spend time on this and has a solution that does not break things (i.e. go back to hiding small popup windows behind the main window in some cases), we will seriously consider it. But so far, nobody seems to have a bright idea what can be done.
(In reply to Stefan Hundhammer from comment #1)
> What you are asking for, however, is a minor annoyance that affects only a
> very small number of users, mostly in our internal QA department.
Well, I got this report from a non-SUSE openSUSE user and was just trying to first reproduce myself and report accordingly.
> […] But so far, nobody seems to have a bright idea what can be done.
well, the software management module actually does it fine: It shows the progress notification using the same view as the installer within the same window in an inner frame and therefore no problem there. Another alternative is to ensure that multiple packages do not spawn multiple dialogs but just one. In this case it might popup once but you can minimize. That would already help.
The package installed from the package manager work correctly because it prepares the progress window for that. The other modules request installing a needed package, but do not prepare a progress window. In that case the progress cannot be displayed in the current window as it would be destroyed and it could contain unexpected content after returning the control back to the module.
I think the fix could be opening a new window in the Package.Install and related calls and closing it in the end.
Now tracking in our Trello scrum queue.
Still don't know a solution, though.
It looks like we are not going to fix it. Sorry.