win: adapt to latest qtbase changes
This commit is contained in:
parent
78fc5057ab
commit
415fb55222
|
@ -245,11 +245,13 @@ void FramelessHelperWin::addWindow(const QObject *window)
|
||||||
#if 0
|
#if 0
|
||||||
data->callbacks->setWindowFlags(data->callbacks->getWindowFlags() | Qt::FramelessWindowHint);
|
data->callbacks->setWindowFlags(data->callbacks->getWindowFlags() | Qt::FramelessWindowHint);
|
||||||
#else
|
#else
|
||||||
|
# if (QT_VERSION < QT_VERSION_CHECK(6, 5, 3))
|
||||||
// Qt maintains a frame margin internally, we need to update it accordingly
|
// Qt maintains a frame margin internally, we need to update it accordingly
|
||||||
// otherwise we'll get lots of warning messages when we change the window
|
// otherwise we'll get lots of warning messages when we change the window
|
||||||
// geometry, it will also affect the final window geometry because QPA will
|
// geometry, it will also affect the final window geometry because QPA will
|
||||||
// always take it into account when setting window size and position.
|
// always take it into account when setting window size and position.
|
||||||
std::ignore = Utils::updateInternalWindowFrameMargins(qWindow, true);
|
std::ignore = Utils::updateInternalWindowFrameMargins(qWindow, true);
|
||||||
|
# endif
|
||||||
#endif
|
#endif
|
||||||
// Tell DWM our preferred frame margin.
|
// Tell DWM our preferred frame margin.
|
||||||
std::ignore = Utils::updateWindowFrameMargins(data->windowId, false);
|
std::ignore = Utils::updateWindowFrameMargins(data->windowId, false);
|
||||||
|
|
|
@ -416,11 +416,11 @@ void FramelessQuickHelperPrivate::doRepaintAllChildren()
|
||||||
if (!window) {
|
if (!window) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#ifdef Q_OS_WINDOWS
|
#if (defined(Q_OS_WINDOWS) && (QT_VERSION < QT_VERSION_CHECK(6, 5, 3)))
|
||||||
// Sync the internal window frame margins with the latest DPI, otherwise
|
// Sync the internal window frame margins with the latest DPI, otherwise
|
||||||
// we will get wrong window sizes after the DPI change.
|
// we will get wrong window sizes after the DPI change.
|
||||||
std::ignore = Utils::updateInternalWindowFrameMargins(window, true);
|
std::ignore = Utils::updateInternalWindowFrameMargins(window, true);
|
||||||
#endif // Q_OS_WINDOWS \
|
#endif // Q_OS_WINDOWS
|
||||||
// No need to repaint the window when it's hidden.
|
// No need to repaint the window when it's hidden.
|
||||||
if (!window->isVisible()) {
|
if (!window->isVisible()) {
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -161,7 +161,7 @@ static inline void forceWidgetRepaint(QWidget *widget)
|
||||||
if (!widget) {
|
if (!widget) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#ifdef Q_OS_WINDOWS
|
#if (defined(Q_OS_WINDOWS) && (QT_VERSION < QT_VERSION_CHECK(6, 5, 3)))
|
||||||
// There's some additional things to do for top level windows on Windows.
|
// There's some additional things to do for top level windows on Windows.
|
||||||
if (widget->isWindow()) {
|
if (widget->isWindow()) {
|
||||||
// Don't crash if the QWindow instance has not been created yet.
|
// Don't crash if the QWindow instance has not been created yet.
|
||||||
|
|
Loading…
Reference in New Issue