From 1a1cbc94c5763bc95f1ddf1c80bc79ead6212c5a Mon Sep 17 00:00:00 2001 From: wheaney <42350981+wheaney@users.noreply.github.com> Date: Wed, 24 Sep 2025 12:49:16 -0700 Subject: [PATCH] Fix some inconsistent UI states --- kwin/src/breezydesktopeffect.cpp | 5 +++-- kwin/src/kcm/breezydesktopeffectkcm.cpp | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/kwin/src/breezydesktopeffect.cpp b/kwin/src/breezydesktopeffect.cpp index d1b53ec..f3e2ceb 100644 --- a/kwin/src/breezydesktopeffect.cpp +++ b/kwin/src/breezydesktopeffect.cpp @@ -560,8 +560,9 @@ void BreezyDesktopEffect::setCurvedDisplaySupported(bool supported) { Q_EMIT curvedDisplaySupportedChanged(); } - if (!supported && m_curvedDisplay) { - m_curvedDisplay = false; + bool curvedDisplayEnabled = supported && BreezyDesktopConfig::curvedDisplay(); + if (curvedDisplayEnabled != m_curvedDisplay) { + m_curvedDisplay = curvedDisplayEnabled; Q_EMIT curvedDisplayChanged(); } } diff --git a/kwin/src/kcm/breezydesktopeffectkcm.cpp b/kwin/src/kcm/breezydesktopeffectkcm.cpp index d0c9267..afa7176 100644 --- a/kwin/src/kcm/breezydesktopeffectkcm.cpp +++ b/kwin/src/kcm/breezydesktopeffectkcm.cpp @@ -663,14 +663,12 @@ void BreezyDesktopEffectConfig::pollDriverState() if (m_curvedDisplaySupported) { m_curvedDisplaySupported = false; ui.kcfg_CurvedDisplay->setEnabled(false); - ui.kcfg_CurvedDisplay->setChecked(false); ui.kcfg_CurvedDisplay->setToolTip(QObject::tr("This feature requires Qt version 6.6 or higher")); } } else { if (!m_curvedDisplaySupported) { m_curvedDisplaySupported = true; ui.kcfg_CurvedDisplay->setEnabled(true); - ui.kcfg_CurvedDisplay->setChecked(BreezyDesktopConfig::self()->curvedDisplay()); ui.kcfg_CurvedDisplay->setToolTip(QString()); } } @@ -735,6 +733,8 @@ void BreezyDesktopEffectConfig::updateSmoothFollowEnabled() QJsonObject flags; flags.insert(QStringLiteral("enable_breezy_desktop_smooth_follow"), enabled); XRDriverIPC::instance().writeControlFlags(flags); + + ui.kcfg_FocusedDisplayDistance->setEnabled(ui.kcfg_ZoomOnFocusEnabled->isChecked() || enabled); } bool BreezyDesktopEffectConfig::smoothFollowTrackYawEnabled(std::optional configJsonOpt)