forked from qt-creator/qt-creator
QmlDesigner: Fix override cursor on config dialog close in 3D view
Only restore override cursor on dialog destruction if it was actually hidden by current dialog. Fixes: QDS-12300 Change-Id: I8789e060244089c7d83e43926f841012602b27a5 Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
This commit is contained in:
@@ -66,9 +66,11 @@ void CameraSpeedConfiguration::resetDefaults()
|
|||||||
|
|
||||||
void CameraSpeedConfiguration::hideCursor()
|
void CameraSpeedConfiguration::hideCursor()
|
||||||
{
|
{
|
||||||
if (QGuiApplication::overrideCursor())
|
if (m_cursorHidden)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
m_cursorHidden = true;
|
||||||
|
|
||||||
QGuiApplication::setOverrideCursor(QCursor(Qt::BlankCursor));
|
QGuiApplication::setOverrideCursor(QCursor(Qt::BlankCursor));
|
||||||
|
|
||||||
if (QWindow *w = QGuiApplication::focusWindow())
|
if (QWindow *w = QGuiApplication::focusWindow())
|
||||||
@@ -77,9 +79,11 @@ void CameraSpeedConfiguration::hideCursor()
|
|||||||
|
|
||||||
void CameraSpeedConfiguration::restoreCursor()
|
void CameraSpeedConfiguration::restoreCursor()
|
||||||
{
|
{
|
||||||
if (!QGuiApplication::overrideCursor())
|
if (!m_cursorHidden)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
m_cursorHidden = false;
|
||||||
|
|
||||||
QGuiApplication::restoreOverrideCursor();
|
QGuiApplication::restoreOverrideCursor();
|
||||||
|
|
||||||
if (QWindow *w = QGuiApplication::focusWindow())
|
if (QWindow *w = QGuiApplication::focusWindow())
|
||||||
@@ -88,7 +92,7 @@ void CameraSpeedConfiguration::restoreCursor()
|
|||||||
|
|
||||||
void CameraSpeedConfiguration::holdCursorInPlace()
|
void CameraSpeedConfiguration::holdCursorInPlace()
|
||||||
{
|
{
|
||||||
if (!QGuiApplication::overrideCursor())
|
if (!m_cursorHidden)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (QWindow *w = QGuiApplication::focusWindow())
|
if (QWindow *w = QGuiApplication::focusWindow())
|
||||||
|
@@ -71,6 +71,7 @@ private:
|
|||||||
double m_multiplier = 0.;
|
double m_multiplier = 0.;
|
||||||
bool m_changes = false;
|
bool m_changes = false;
|
||||||
QPoint m_lastPos;
|
QPoint m_lastPos;
|
||||||
|
bool m_cursorHidden = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace QmlDesigner
|
} // namespace QmlDesigner
|
||||||
|
@@ -87,9 +87,11 @@ void SnapConfiguration::resetDefaults()
|
|||||||
|
|
||||||
void SnapConfiguration::hideCursor()
|
void SnapConfiguration::hideCursor()
|
||||||
{
|
{
|
||||||
if (QGuiApplication::overrideCursor())
|
if (m_cursorHidden)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
m_cursorHidden = true;
|
||||||
|
|
||||||
QGuiApplication::setOverrideCursor(QCursor(Qt::BlankCursor));
|
QGuiApplication::setOverrideCursor(QCursor(Qt::BlankCursor));
|
||||||
|
|
||||||
if (QWindow *w = QGuiApplication::focusWindow())
|
if (QWindow *w = QGuiApplication::focusWindow())
|
||||||
@@ -98,9 +100,11 @@ void SnapConfiguration::hideCursor()
|
|||||||
|
|
||||||
void SnapConfiguration::restoreCursor()
|
void SnapConfiguration::restoreCursor()
|
||||||
{
|
{
|
||||||
if (!QGuiApplication::overrideCursor())
|
if (!m_cursorHidden)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
m_cursorHidden = false;
|
||||||
|
|
||||||
QGuiApplication::restoreOverrideCursor();
|
QGuiApplication::restoreOverrideCursor();
|
||||||
|
|
||||||
if (QWindow *w = QGuiApplication::focusWindow())
|
if (QWindow *w = QGuiApplication::focusWindow())
|
||||||
@@ -109,7 +113,7 @@ void SnapConfiguration::restoreCursor()
|
|||||||
|
|
||||||
void SnapConfiguration::holdCursorInPlace()
|
void SnapConfiguration::holdCursorInPlace()
|
||||||
{
|
{
|
||||||
if (!QGuiApplication::overrideCursor())
|
if (!m_cursorHidden)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (QWindow *w = QGuiApplication::focusWindow())
|
if (QWindow *w = QGuiApplication::focusWindow())
|
||||||
|
@@ -103,6 +103,7 @@ private:
|
|||||||
double m_scaleInterval = 0.;
|
double m_scaleInterval = 0.;
|
||||||
bool m_changes = false;
|
bool m_changes = false;
|
||||||
QPoint m_lastPos;
|
QPoint m_lastPos;
|
||||||
|
bool m_cursorHidden = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace QmlDesigner
|
} // namespace QmlDesigner
|
||||||
|
Reference in New Issue
Block a user