Fix mixed-type usage of qFuzzyCompare

When building Qt with a non-double qreal type, i.e.
QT_COORD_TYPE=float, mixing types on qFuzzyCompare will result
in ambiguities since only

        qFuzzyCompare(float, float)
        qFuzzyCompare(double, double)

are accepted.

Pick-to: 6.8
Change-Id: I4450516ffdf019ef8288aefd99a8e729c039bcd1
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit d693a06522f660076afaa22eb7c677da290254d9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Dennis Oberst 2025-03-12 15:30:22 +01:00 committed by Qt Cherry-pick Bot
parent b4177967dc
commit de02c59757

View File

@ -292,7 +292,7 @@ void QAndroidPlatformWindow::applicationStateChanged(Qt::ApplicationState)
void QAndroidPlatformWindow::createSurface()
{
const bool windowStaysOnTop = bool(window()->flags() & Qt::WindowStaysOnTopHint);
const bool isOpaque = !format().hasAlpha() && qFuzzyCompare(window()->opacity(), 1.0);
const bool isOpaque = !format().hasAlpha() && qFuzzyCompare(window()->opacity(), qreal(1.0));
m_nativeQtWindow.callMethod<void>("createSurface", windowStaysOnTop, 32, isOpaque,
m_surfaceContainerType);