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)