[Bug 1199020] Wrong resolution at Installation / Window background not cleared
https://bugzilla.suse.com/show_bug.cgi?id=1199020 https://bugzilla.suse.com/show_bug.cgi?id=1199020#c54 --- Comment #54 from Fabian Vogt <fvogt@suse.com> --- (In reply to Stefan Hundhammer from comment #49)
https://github.com/openSUSE/branding/blob/leap-15.4/yast/installation.qss#L6
/* Richtext: installation_richtext.css */ QMainWindow { background: #EEEEEE; } QFileDialog { background: #EEEEEE; } QDialog { background: #EEEEEE; } YQWizard { background: #EEEEEE; } YQDialog { background: #EEEEEE; color:#333; } ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Removing that YQDialog line fixes the problem. I don't know why, and in particular, why that would make any difference; all that it does is to set the background and the foreground color.
Just removing the "color:#333;" part does not make any difference. But any valid value for "background:" seems to trigger transparency for the complete dialog, resulting in the overwriting problem that we saw.
AFAICS that line is present in all our openSUSE .qss style sheets (except style.qss, the default one), but NOT in the SLE .qss style sheets.
FWICT it's because YQDialog does: setAutoFillBackground( true ); the documentation about that property says: Warning: Use this property with caution in conjunction with Qt Style Sheets. When a widget has a style sheet with a valid background or a border-image, this property is automatically disabled. No idea why that is the case though. Setting the StyledBackground attribute to force background drawing works, but IMO fixing the widget stack by only having one of them visible is the better option. I'll review the PR. -- You are receiving this mail because: You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@suse.com