QPA/Windows: Fix QPainter warnings when animations are disabled
Don't draw on a QImage with a size of 0/0. This amends 5feefd30734cd12753956819fc7c152be07c24cd Pick-to: 6.10 6.9 6.9.1 Fixes: QTBUG-135844 Task-number: QTBUG-127634 Change-Id: Ib57cdccfabe67454984f3229f9d7ad02dd0d9992 Reviewed-by: Błażej Szczygieł <mumei6102@gmail.com> Reviewed-by: Wladimir Leuschner <wladimir.leuschner@qt.io>
This commit is contained in:
parent
5e9efe45df
commit
46c2aa2b61
@ -2457,14 +2457,16 @@ void QWindowsWindow::handleGeometryChange()
|
||||
clearFlag(SynchronousGeometryChangeEvent);
|
||||
qCDebug(lcQpaEvents) << __FUNCTION__ << this << window() << m_data.geometry;
|
||||
|
||||
bool arranged = QWindowsWindow::isWindowArranged(m_data.hwnd);
|
||||
if (arranged || (m_windowWasArranged && !arranged)) {
|
||||
transitionAnimatedCustomTitleBar();
|
||||
}
|
||||
if (m_data.hwndTitlebar) {
|
||||
bool arranged = QWindowsWindow::isWindowArranged(m_data.hwnd);
|
||||
if (arranged || (m_windowWasArranged && !arranged))
|
||||
transitionAnimatedCustomTitleBar();
|
||||
|
||||
const int titleBarHeight = getTitleBarHeight_sys(savedDpi());
|
||||
MoveWindow(m_data.hwndTitlebar, m_data.geometry.x(), m_data.geometry.y(), m_data.geometry.width(), titleBarHeight, true);
|
||||
m_windowWasArranged = arranged;
|
||||
const int titleBarHeight = getTitleBarHeight_sys(savedDpi());
|
||||
MoveWindow(m_data.hwndTitlebar, m_data.geometry.x(), m_data.geometry.y(),
|
||||
m_data.geometry.width(), titleBarHeight, true);
|
||||
m_windowWasArranged = arranged;
|
||||
}
|
||||
}
|
||||
|
||||
void QWindowsBaseWindow::setGeometry_sys(const QRect &rect) const
|
||||
@ -2743,6 +2745,8 @@ void QWindowsWindow::correctWindowPlacement(WINDOWPLACEMENT &windowPlacement)
|
||||
|
||||
void QWindowsWindow::transitionAnimatedCustomTitleBar()
|
||||
{
|
||||
if (!m_data.hwndTitlebar)
|
||||
return;
|
||||
const QWinRegistryKey registry(HKEY_CURRENT_USER, LR"(Control Panel\Desktop\WindowMetrics)");
|
||||
if (registry.isValid() && registry.value(LR"(MinAnimate)") == 1) {
|
||||
ShowWindow(m_data.hwndTitlebar, SW_HIDE);
|
||||
|
Loading…
x
Reference in New Issue
Block a user