OSDN Git Service

kwin: remove unused kscreen effect
authorIvailo Monev <xakepa10@gmail.com>
Fri, 16 Jul 2021 01:28:58 +0000 (04:28 +0300)
committerIvailo Monev <xakepa10@gmail.com>
Fri, 16 Jul 2021 01:28:58 +0000 (04:28 +0300)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
kwin/CMakeLists.txt
kwin/effects.cpp
kwin/effects/kscreen/CMakeLists.txt [deleted file]
kwin/effects/kscreen/kscreen.cpp [deleted file]
kwin/effects/kscreen/kscreen.desktop [deleted file]
kwin/effects/kscreen/kscreen.h [deleted file]
kwin/effects/kscreen/kscreen.kcfg [deleted file]
kwin/effects/kscreen/kscreenconfig.kcfgc [deleted file]

index 31b38c8..c41e65a 100644 (file)
@@ -45,7 +45,6 @@ set(kwin4_effect_builtins_sources)
 set(kwin4_effect_builtins_config_sources effects/configs_builtins.cpp)
 set(kwin4_effect_include_directories)
 
-include( effects/kscreen/CMakeLists.txt )
 include( effects/presentwindows/CMakeLists.txt )
 include( effects/slidingpopups/CMakeLists.txt )
 include( effects/taskbarthumbnail/CMakeLists.txt )
index 2ae454c..3739eac 100644 (file)
@@ -68,7 +68,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #include "effects/diminactive/diminactive.h"
 #include "effects/dimscreen/dimscreen.h"
 #include "effects/highlightwindow/highlightwindow.h"
-#include "effects/kscreen/kscreen.h"
 #include "effects/logout/logout.h"
 #include "effects/magnifier/magnifier.h"
 #include "effects/minimizeanimation/minimizeanimation.h"
@@ -1375,9 +1374,7 @@ bool EffectsHandlerImpl::loadEffect(const QString& name, bool checkDefault)
     Effect* effect = 0;
     QLibrary* library = 0;
     // builtins first
-    if (internalname == "kwin4_effect_kscreen") {
-        effect = new KscreenEffect();
-    } else if (internalname == "kwin4_effect_presentwindows") {
+    if (internalname == "kwin4_effect_presentwindows") {
         effect = new PresentWindowsEffect();
     } else if (internalname == "kwin4_effect_slidingpopups") {
         effect = new SlidingPopupsEffect();
diff --git a/kwin/effects/kscreen/CMakeLists.txt b/kwin/effects/kscreen/CMakeLists.txt
deleted file mode 100644 (file)
index 28a7afd..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-#######################################
-# Effect
-
-# Source files
-set(kwin4_effect_builtins_sources
-    ${kwin4_effect_builtins_sources}
-     effects/kscreen/kscreen.cpp
-)
-
-kde4_add_kcfg_files(kwin4_effect_builtins_sources effects/kscreen/kscreenconfig.kcfgc)
-
-# .desktop files
-install(FILES effects/kscreen/kscreen.desktop DESTINATION ${KDE4_SERVICES_INSTALL_DIR}/kwin)
diff --git a/kwin/effects/kscreen/kscreen.cpp b/kwin/effects/kscreen/kscreen.cpp
deleted file mode 100644 (file)
index 684a11b..0000000
+++ /dev/null
@@ -1,189 +0,0 @@
-/********************************************************************
- KWin - the KDE window manager
- This file is part of the KDE project.
-
- Copyright (C) 2013 Martin Gräßlin <mgraesslin@kde.org>
-
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program.  If not, see <http://www.gnu.org/licenses/>.
-*********************************************************************/
-// own
-#include "kscreen.h"
-// KConfigSkeleton
-#include "kscreenconfig.h"
-
-/**
- * How this effect works:
- *
- * Effect announces that it is around through property _KDE_KWIN_KSCREEN_SUPPORT on the root window.
- *
- * KScreen watches for this property and when it wants to adjust screens, KScreen goes
- * through the following protocol:
- * 1. KScreen sets the property value to 1
- * 2. Effect starts to fade out all windows
- * 3. When faded out the effect sets property value to 2
- * 4. KScreen adjusts the screens
- * 5. KScreen sets property value to 3
- * 6. Effect starts to fade in all windows again
- * 7. Effect sets back property value to 0
- *
- * The property has type 32 bits cardinal. To test it use:
- * xprop -root -f _KDE_KWIN_KSCREEN_SUPPORT 32c -set _KDE_KWIN_KSCREEN_SUPPORT 1
- *
- * The states are:
- * 0: normal
- * 1: fading out
- * 2: faded out
- * 3: fading in
- **/
-
-namespace KWin
-{
-
-KscreenEffect::KscreenEffect()
-    : Effect()
-    , m_state(StateNormal)
-    , m_atom(effects->announceSupportProperty("_KDE_KWIN_KSCREEN_SUPPORT", this))
-{
-    connect(effects, SIGNAL(propertyNotify(KWin::EffectWindow*,long)), SLOT(propertyNotify(KWin::EffectWindow*,long)));
-    reconfigure(ReconfigureAll);
-}
-
-KscreenEffect::~KscreenEffect()
-{
-}
-
-void KscreenEffect::reconfigure(ReconfigureFlags flags)
-{
-    Q_UNUSED(flags)
-
-    KscreenConfig::self()->readConfig();
-    m_timeLine.setDuration(animationTime<KscreenConfig>(250));
-}
-
-void KscreenEffect::prePaintScreen(ScreenPrePaintData &data, int time)
-{
-    if (m_state == StateFadingIn || m_state == StateFadingOut) {
-        m_timeLine.setCurrentTime(m_timeLine.currentTime() + time);
-        if (m_timeLine.currentValue() >= 1.0) {
-            switchState();
-        }
-    }
-    effects->prePaintScreen(data, time);
-}
-
-void KscreenEffect::postPaintScreen()
-{
-    if (m_state == StateFadingIn || m_state == StateFadingOut) {
-        effects->addRepaintFull();
-    }
-}
-
-void KscreenEffect::prePaintWindow(EffectWindow *w, WindowPrePaintData &data, int time)
-{
-    if (m_state != StateNormal) {
-        data.setTranslucent();
-    }
-    effects->prePaintWindow(w, data, time);
-}
-
-void KscreenEffect::paintWindow(EffectWindow *w, int mask, QRegion region, WindowPaintData &data)
-{
-    switch (m_state) {
-    case StateFadingOut:
-        data.multiplyOpacity(1.0 - m_timeLine.currentValue());
-        break;
-    case StateFadedOut:
-        data.multiplyOpacity(0.0);
-        break;
-    case StateFadingIn:
-        data.multiplyOpacity(m_timeLine.currentValue());
-        break;
-    default:
-        // no adjustment
-        break;
-    }
-    effects->paintWindow(w, mask, region, data);
-}
-
-void KscreenEffect::propertyNotify(EffectWindow *window, long atom)
-{
-    if (window || atom != m_atom) {
-        return;
-    }
-    QByteArray byteData = effects->readRootProperty(m_atom, XCB_ATOM_CARDINAL, 32);
-    long *data = reinterpret_cast<long *>(byteData.data());
-    if (!data[0]) {
-        // Property was deleted
-        if (m_state != StateNormal) {
-            m_state = StateNormal;
-            effects->addRepaintFull();
-        }
-        return;
-    }
-    if (data[0] == 0) {
-        // normal state - KWin should have switched to it
-        if (m_state != StateNormal) {
-            m_state = StateNormal;
-            effects->addRepaintFull();
-        }
-        return;
-    }
-    if (data[0] == 2) {
-        // faded out state - KWin should have switched to it
-        if (m_state != StateFadedOut) {
-            m_state = StateFadedOut;
-            effects->addRepaintFull();
-        }
-        return;
-    }
-    if (data[0] == 1) {
-        // kscreen wants KWin to fade out all windows
-        m_state = StateFadingOut;
-        m_timeLine.setCurrentTime(0);
-        effects->addRepaintFull();
-        return;
-    }
-    if (data[0] == 3) {
-        // kscreen wants KWin to fade in again
-        m_state = StateFadingIn;
-        m_timeLine.setCurrentTime(0);
-        effects->addRepaintFull();
-        return;
-    }
-    kDebug(1212) << "Incorrect Property state, immediate stop: " << data[0];
-    m_state = StateNormal;
-    effects->addRepaintFull();
-}
-
-void KscreenEffect::switchState()
-{
-    long value = -1l;
-    if (m_state == StateFadingOut) {
-        m_state = StateFadedOut;
-        value = 2l;
-    } else if (m_state == StateFadingIn) {
-        m_state = StateNormal;
-        value = 0l;
-    }
-    if (value != -1l) {
-        xcb_change_property(connection(), XCB_PROP_MODE_REPLACE, rootWindow(), m_atom, XCB_ATOM_CARDINAL, 32, 1, &value);
-    }
-}
-
-bool KscreenEffect::isActive() const
-{
-    return m_state != StateNormal;
-}
-
-} // namespace KWin
diff --git a/kwin/effects/kscreen/kscreen.desktop b/kwin/effects/kscreen/kscreen.desktop
deleted file mode 100644 (file)
index f7c5bbc..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-[Desktop Entry]
-Name=Kscreen
-Name[bs]=KScreen
-Name[ca]=Kscreen
-Name[ca@valencia]=Kscreen
-Name[cs]=Kscreen
-Name[da]=KScreen
-Name[de]=Kscreen
-Name[el]=Kscreen
-Name[en_GB]=Kscreen
-Name[es]=Kscreen
-Name[et]=Kscreen
-Name[eu]=Kscreen
-Name[fi]=Kscreen
-Name[gl]=KScreen
-Name[hu]=Kscreen
-Name[ia]=Kscreen
-Name[kk]=Kscreen
-Name[ko]=Kscreen
-Name[nb]=Kscreen
-Name[nds]=KScreen
-Name[nl]=Kscreen
-Name[pa]=ਕੇਸਕਰੀਨ
-Name[pl]=Kscreen
-Name[pt]=Kscreen
-Name[pt_BR]=KScreen
-Name[ro]=Kscreen
-Name[ru]=Kscreen
-Name[sk]=Kscreen
-Name[sl]=Kscreen
-Name[sr]=К‑екран
-Name[sr@ijekavian]=К‑екран
-Name[sr@ijekavianlatin]=K‑ekran
-Name[sr@latin]=K‑ekran
-Name[sv]=Kskärm
-Name[tr]=Kscreen
-Name[uk]=Kscreen
-Name[x-test]=xxKscreenxx
-Name[zh_CN]=Kscreen
-Name[zh_TW]=Kscreen
-Icon=preferences-system-windows-effect-kscreen
-Comment=Helper Effect for KScreen
-Comment[bs]=Pomoćni efekat za KScreen
-Comment[ca]=Efecte auxiliar pel KScreen
-Comment[ca@valencia]=Efecte auxiliar pel KScreen
-Comment[cs]=Pomocný efekt pro KScreen
-Comment[da]=Hjælpeeffekt til KScreen
-Comment[de]=Hilfseffekt für KScreen
-Comment[el]=Βοηθητικό εφέ για το KScreen
-Comment[en_GB]=Helper Effect for KScreen
-Comment[es]=Efecto auxiliar para KScreen
-Comment[et]=KScreeni abiefekt
-Comment[eu]=KScreen-entzako efektu laguntzailea
-Comment[fi]=KScreenin avustustehoste
-Comment[gl]=Efecto auxiliar para KScreen.
-Comment[hu]=Segédeffektus a KScreenhez
-Comment[ia]=Effecto de adjutante pro KScreen
-Comment[kk]=KScreen-нің көмек эффекті
-Comment[ko]=KScreen 도우미 효과
-Comment[nb]=Hjelpereffekt for KScreen
-Comment[nds]=Hülpeffekt för KScreen
-Comment[nl]=Effect van hulp voor KScreen
-Comment[pa]=ਕੇਸਕਰੀਨ ਲਈ ਮੱਦਦ ਪ੍ਰਭਾਵ
-Comment[pl]=Efekt pomocniczy dla KScreen
-Comment[pt]=Efeito auxiliar do KScreen
-Comment[pt_BR]=Efeito auxiliar do KScreen
-Comment[ro]=Efect ajutător pentru KScreen
-Comment[ru]=Вспомогательный эффект для KScreen
-Comment[sk]=Pomocný efekt pre KScreen
-Comment[sl]=Pomožni učinek za KScreen
-Comment[sr]=Помоћни ефекат за К‑екран
-Comment[sr@ijekavian]=Помоћни ефекат за К‑екран
-Comment[sr@ijekavianlatin]=Pomoćni efekat za K‑ekran
-Comment[sr@latin]=Pomoćni efekat za K‑ekran
-Comment[sv]=Hjälpeffekt för Kskärm
-Comment[tr]=KScreen için Yardımcı Efekt
-Comment[uk]=Допоміжний ефект KScreen
-Comment[x-test]=xxHelper Effect for KScreenxx
-Comment[zh_CN]=KScreen 的帮助效果
-Comment[zh_TW]=KScreen 輔助效果
-
-Type=Service
-X-KDE-ServiceTypes=KWin/Effect
-X-KDE-PluginInfo-Author=Martin Gräßlin
-X-KDE-PluginInfo-Email=mgraesslin@kde.org
-X-KDE-PluginInfo-Name=kwin4_effect_kscreen
-X-KDE-PluginInfo-Version=0.1.0
-X-KDE-PluginInfo-Category=Appearance
-X-KDE-PluginInfo-Depends=
-X-KDE-PluginInfo-License=GPL
-X-KDE-PluginInfo-EnabledByDefault=true
-X-KDE-Ordering=99
-X-KWin-Requires-Shaders=false
diff --git a/kwin/effects/kscreen/kscreen.h b/kwin/effects/kscreen/kscreen.h
deleted file mode 100644 (file)
index 278deed..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-/********************************************************************
- KWin - the KDE window manager
- This file is part of the KDE project.
-
- Copyright (C) 2013 Martin Gräßlin <mgraesslin@kde.org>
-
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program.  If not, see <http://www.gnu.org/licenses/>.
-*********************************************************************/
-#ifndef KWIN_KSCREEN_H
-#define KWIN_KSCREEN_H
-
-#include <kwineffects.h>
-// Qt
-#include <QTimeLine>
-
-namespace KWin
-{
-
-class KscreenEffect : public Effect
-{
-    Q_OBJECT
-
-public:
-    KscreenEffect();
-    virtual ~KscreenEffect();
-
-    virtual void prePaintScreen(ScreenPrePaintData &data, int time);
-    virtual void postPaintScreen();
-    virtual void prePaintWindow(EffectWindow *w, WindowPrePaintData &data, int time);
-    virtual void paintWindow(EffectWindow *w, int mask, QRegion region, WindowPaintData &data);
-
-    void reconfigure(ReconfigureFlags flags);
-    virtual bool isActive() const;
-
-private Q_SLOTS:
-    void propertyNotify(KWin::EffectWindow *window, long atom);
-
-private:
-    void switchState();
-    enum FadeOutState {
-        StateNormal,
-        StateFadingOut,
-        StateFadedOut,
-        StateFadingIn
-    };
-    QTimeLine m_timeLine;
-    FadeOutState m_state;
-    xcb_atom_t m_atom;
-};
-
-
-} // namespace KWin
-#endif // KWIN_KSCREEN_H
diff --git a/kwin/effects/kscreen/kscreen.kcfg b/kwin/effects/kscreen/kscreen.kcfg
deleted file mode 100644 (file)
index 4123235..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
-    http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
-    <kcfgfile name="kwinrc"/>
-    <group name="Effect-Kscreen">
-        <entry name="Duration" type="Int">
-            <default>0</default>
-        </entry>
-    </group>
-</kcfg>
diff --git a/kwin/effects/kscreen/kscreenconfig.kcfgc b/kwin/effects/kscreen/kscreenconfig.kcfgc
deleted file mode 100644 (file)
index c2b8bbb..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-File=kscreen.kcfg
-ClassName=KscreenConfig
-NameSpace=KWin
-Singleton=true
-Mutators=true