Windows: Add a workaround for render-to-texture widgets for translucent windows
Do not attempt to switch from translucent GL windows (emulated by DWM blur behind) to translucent raster windows (using layered windows) as this produces warnings from UpdateLayeredWindowIndirect() failing. Task-number: QTBUG-54734 Change-Id: Ie05126c5cb091a00f17b88a74b287c90aa2dfebd Reviewed-by: Joni Poikelin <joni.poikelin@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
This commit is contained in:
parent
34de4f6a15
commit
89765ced6e
@ -1018,9 +1018,11 @@ static QPlatformTextureList *widgetTexturesFor(QWidget *tlw, QWidget *widget)
|
||||
// The Windows compositor handles fullscreen OpenGL window specially. Besides
|
||||
// having trouble with popups, it also has issues with flip-flopping between
|
||||
// OpenGL-based and normal flushing. Therefore, stick with GL for fullscreen
|
||||
// windows. (QTBUG-53515)
|
||||
// windows (QTBUG-53515). Similary, translucent windows should not switch to
|
||||
// layered native windows (QTBUG-54734).
|
||||
#if defined(Q_OS_WIN) && !defined(Q_OS_WINRT) && !defined(Q_OS_WINCE)
|
||||
|| tlw->windowState().testFlag(Qt::WindowFullScreen)
|
||||
|| tlw->testAttribute(Qt::WA_TranslucentBackground)
|
||||
#endif
|
||||
)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user