diff --git a/src/kcms/screenedges/kwintouchscreensettings.kcfg b/src/kcms/screenedges/kwintouchscreensettings.kcfg index c8306ebc25..2102f9c06b 100644 --- a/src/kcms/screenedges/kwintouchscreensettings.kcfg +++ b/src/kcms/screenedges/kwintouchscreensettings.kcfg @@ -29,6 +29,11 @@ ElectricNone + + + ElectricNone + + ElectricNone diff --git a/src/kcms/screenedges/touch.cpp b/src/kcms/screenedges/touch.cpp index e266b17bee..5b0e330831 100644 --- a/src/kcms/screenedges/touch.cpp +++ b/src/kcms/screenedges/touch.cpp @@ -90,6 +90,7 @@ void KWinScreenEdgesConfig::save() QStringLiteral("/Effects"), QDBusConnection::sessionBus()); interface.reconfigureEffect(QStringLiteral("windowview")); + interface.reconfigureEffect(QStringLiteral("overview")); for (const auto &effectId : std::as_const(m_effects)) { interface.reconfigureEffect(effectId); } @@ -128,6 +129,8 @@ void KWinScreenEdgesConfig::monitorInit() m_form->monitorAddItem(i18n("%1 - Current Desktop", presentWindowsName)); m_form->monitorAddItem(i18n("%1 - Current Application", presentWindowsName)); + m_form->monitorAddItem(i18n("Overview")); + m_form->monitorAddItem(i18n("Toggle window switching")); m_form->monitorAddItem(i18n("Toggle alternative window switching")); @@ -183,6 +186,9 @@ void KWinScreenEdgesConfig::monitorLoadSettings() // PresentWindows BorderActivateClass m_form->monitorChangeEdge(m_data->settings()->touchBorderActivateClass(), PresentWindowsClass); + // Overview + m_form->monitorChangeEdge(m_data->settings()->touchBorderActivateOverview(), Overview); + // TabBox BorderActivate m_form->monitorChangeEdge(m_data->settings()->touchBorderActivateTabBox(), TabBox); // Alternative TabBox @@ -216,6 +222,9 @@ void KWinScreenEdgesConfig::monitorLoadDefaultSettings() // PresentWindows BorderActivateClass m_form->monitorChangeDefaultEdge(m_data->settings()->defaultTouchBorderActivateClassValue(), PresentWindowsClass); + // Overview + m_form->monitorChangeDefaultEdge(m_data->settings()->defaultTouchBorderActivateOverviewValue(), Overview); + // TabBox BorderActivate m_form->monitorChangeDefaultEdge(m_data->settings()->defaultTouchBorderActivateTabBoxValue(), TabBox); // Alternative TabBox @@ -237,6 +246,9 @@ void KWinScreenEdgesConfig::monitorSaveSettings() m_data->settings()->setTouchBorderActivatePresentWindows(m_form->monitorCheckEffectHasEdge(PresentWindowsCurrent)); m_data->settings()->setTouchBorderActivateClass(m_form->monitorCheckEffectHasEdge(PresentWindowsClass)); + // Overview + m_data->settings()->setTouchBorderActivateOverview(m_form->monitorCheckEffectHasEdge(Overview)); + // TabBox m_data->settings()->setTouchBorderActivateTabBox(m_form->monitorCheckEffectHasEdge(TabBox)); m_data->settings()->setTouchBorderAlternativeActivate(m_form->monitorCheckEffectHasEdge(TabBoxAlternative)); @@ -265,6 +277,9 @@ void KWinScreenEdgesConfig::monitorShowEvent() m_form->monitorItemSetEnabled(PresentWindowsCurrent, enabled); m_form->monitorItemSetEnabled(PresentWindowsAll, enabled); + // Overview + m_form->monitorItemSetEnabled(Overview, config.readEntry("overviewEnabled", true)); + // tabbox, depends on reasonable focus policy. KConfigGroup config2(m_config, QStringLiteral("Windows")); QString focusPolicy = config2.readEntry("FocusPolicy", QString()); diff --git a/src/kcms/screenedges/touch.h b/src/kcms/screenedges/touch.h index 275bb35dae..0b147296c0 100644 --- a/src/kcms/screenedges/touch.h +++ b/src/kcms/screenedges/touch.h @@ -50,6 +50,7 @@ private: PresentWindowsAll = ELECTRIC_ACTION_COUNT, // Start at the end of built in actions PresentWindowsCurrent, PresentWindowsClass, + Overview, TabBox, TabBoxAlternative, EffectCount