|
|
|
@ -1,13 +1,13 @@
|
|
|
|
|
Subject: [PATCH] 5.27.9 Patch
|
|
|
|
|
Subject: [PATCH] revert mass-spring-damper model for slide animation
|
|
|
|
|
---
|
|
|
|
|
Index: src/effects/slide/slide.kcfg
|
|
|
|
|
Index: src/plugins/slide/slide.kcfg
|
|
|
|
|
IDEA additional info:
|
|
|
|
|
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
|
|
|
|
|
<+>UTF-8
|
|
|
|
|
===================================================================
|
|
|
|
|
diff --git a/src/effects/slide/slide.kcfg b/src/effects/slide/slide.kcfg
|
|
|
|
|
--- a/src/effects/slide/slide.kcfg (revision 9d677be2a82a781e6ab19216716d9e0d2dba6d53)
|
|
|
|
|
+++ b/src/effects/slide/slide.kcfg (date 1699986700881)
|
|
|
|
|
diff --git a/src/plugins/slide/slide.kcfg b/src/plugins/slide/slide.kcfg
|
|
|
|
|
--- a/src/plugins/slide/slide.kcfg (revision 9ae6a9fc7377d72e8a320e1eca4dce7fba40205c)
|
|
|
|
|
+++ b/src/plugins/slide/slide.kcfg (date 1699984902100)
|
|
|
|
|
@@ -6,11 +6,17 @@
|
|
|
|
|
http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
|
|
|
|
|
<kcfgfile arg="true"/>
|
|
|
|
@ -26,24 +26,130 @@ diff --git a/src/effects/slide/slide.kcfg b/src/effects/slide/slide.kcfg
|
|
|
|
|
</entry>
|
|
|
|
|
<entry name="SlideBackground" type="Bool">
|
|
|
|
|
<default>true</default>
|
|
|
|
|
Index: src/effects/slide/slide.cpp
|
|
|
|
|
Index: src/plugins/slide/slide_config.ui
|
|
|
|
|
IDEA additional info:
|
|
|
|
|
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
|
|
|
|
|
<+>UTF-8
|
|
|
|
|
===================================================================
|
|
|
|
|
diff --git a/src/effects/slide/slide.cpp b/src/effects/slide/slide.cpp
|
|
|
|
|
--- a/src/effects/slide/slide.cpp (revision 9d677be2a82a781e6ab19216716d9e0d2dba6d53)
|
|
|
|
|
+++ b/src/effects/slide/slide.cpp (date 1699986700867)
|
|
|
|
|
@@ -25,6 +25,8 @@
|
|
|
|
|
diff --git a/src/plugins/slide/slide_config.ui b/src/plugins/slide/slide_config.ui
|
|
|
|
|
--- a/src/plugins/slide/slide_config.ui (revision 9ae6a9fc7377d72e8a320e1eca4dce7fba40205c)
|
|
|
|
|
+++ b/src/plugins/slide/slide_config.ui (date 1699984902103)
|
|
|
|
|
@@ -12,6 +12,39 @@
|
|
|
|
|
</property>
|
|
|
|
|
<layout class="QVBoxLayout" name="verticalLayout">
|
|
|
|
|
<item>
|
|
|
|
|
+ <layout class="QFormLayout" name="layout_Duration">
|
|
|
|
|
+ <item row="0" column="0">
|
|
|
|
|
+ <widget class="QLabel" name="label_Duration">
|
|
|
|
|
+ <property name="text">
|
|
|
|
|
+ <string>Duration:</string>
|
|
|
|
|
+ </property>
|
|
|
|
|
+ </widget>
|
|
|
|
|
+ </item>
|
|
|
|
|
+ <item row="0" column="1">
|
|
|
|
|
+ <widget class="QSpinBox" name="kcfg_Duration">
|
|
|
|
|
+ <property name="sizePolicy">
|
|
|
|
|
+ <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
|
|
|
|
+ <horstretch>0</horstretch>
|
|
|
|
|
+ <verstretch>0</verstretch>
|
|
|
|
|
+ </sizepolicy>
|
|
|
|
|
+ </property>
|
|
|
|
|
+ <property name="specialValueText">
|
|
|
|
|
+ <string extracomment="Duration of the slide animation.">Default</string>
|
|
|
|
|
+ </property>
|
|
|
|
|
+ <property name="suffix">
|
|
|
|
|
+ <string> milliseconds</string>
|
|
|
|
|
+ </property>
|
|
|
|
|
+ <property name="maximum">
|
|
|
|
|
+ <number>9999</number>
|
|
|
|
|
+ </property>
|
|
|
|
|
+ <property name="singleStep">
|
|
|
|
|
+ <number>10</number>
|
|
|
|
|
+ </property>
|
|
|
|
|
+ </widget>
|
|
|
|
|
+ </item>
|
|
|
|
|
+ </layout>
|
|
|
|
|
+ </item>
|
|
|
|
|
+ <item>
|
|
|
|
|
<widget class="QGroupBox" name="groupBox_Gaps">
|
|
|
|
|
<property name="title">
|
|
|
|
|
<string>Gap between desktops</string>
|
|
|
|
|
@@ -64,6 +97,13 @@
|
|
|
|
|
</widget>
|
|
|
|
|
</item>
|
|
|
|
|
</layout>
|
|
|
|
|
+ </widget>
|
|
|
|
|
+ </item>
|
|
|
|
|
+ <item>
|
|
|
|
|
+ <widget class="QCheckBox" name="kcfg_SlideDocks">
|
|
|
|
|
+ <property name="text">
|
|
|
|
|
+ <string>Slide docks</string>
|
|
|
|
|
+ </property>
|
|
|
|
|
</widget>
|
|
|
|
|
</item>
|
|
|
|
|
<item>
|
|
|
|
|
Index: src/plugins/slide/slide.h
|
|
|
|
|
IDEA additional info:
|
|
|
|
|
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
|
|
|
|
|
<+>UTF-8
|
|
|
|
|
===================================================================
|
|
|
|
|
diff --git a/src/plugins/slide/slide.h b/src/plugins/slide/slide.h
|
|
|
|
|
--- a/src/plugins/slide/slide.h (revision 9ae6a9fc7377d72e8a320e1eca4dce7fba40205c)
|
|
|
|
|
+++ b/src/plugins/slide/slide.h (date 1699993636445)
|
|
|
|
|
@@ -68,6 +68,7 @@
|
|
|
|
|
|
|
|
|
|
static bool supported();
|
|
|
|
|
|
|
|
|
|
+ int duration() const;
|
|
|
|
|
int horizontalGap() const;
|
|
|
|
|
int verticalGap() const;
|
|
|
|
|
bool slideBackground() const;
|
|
|
|
|
@@ -97,6 +98,7 @@
|
|
|
|
|
int m_hGap;
|
|
|
|
|
int m_vGap;
|
|
|
|
|
bool m_slideBackground;
|
|
|
|
|
+ int m_fullAnimationDuration; // Miliseconds for 1 complete desktop switch
|
|
|
|
|
|
|
|
|
|
enum class State {
|
|
|
|
|
Inactive,
|
|
|
|
|
@@ -105,6 +107,7 @@
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
State m_state = State::Inactive;
|
|
|
|
|
+ TimeLine m_timeLine;
|
|
|
|
|
SpringMotion m_motionX;
|
|
|
|
|
SpringMotion m_motionY;
|
|
|
|
|
|
|
|
|
|
@@ -132,6 +135,11 @@
|
|
|
|
|
QHash<EffectWindow *, WindowData> m_windowData;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
+inline int SlideEffect::duration() const
|
|
|
|
|
+{
|
|
|
|
|
+ return m_fullAnimationDuration;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
inline int SlideEffect::horizontalGap() const
|
|
|
|
|
{
|
|
|
|
|
return m_hGap;
|
|
|
|
|
Index: src/plugins/slide/slide.cpp
|
|
|
|
|
IDEA additional info:
|
|
|
|
|
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
|
|
|
|
|
<+>UTF-8
|
|
|
|
|
===================================================================
|
|
|
|
|
diff --git a/src/plugins/slide/slide.cpp b/src/plugins/slide/slide.cpp
|
|
|
|
|
--- a/src/plugins/slide/slide.cpp (revision 9ae6a9fc7377d72e8a320e1eca4dce7fba40205c)
|
|
|
|
|
+++ b/src/plugins/slide/slide.cpp (date 1699984902090)
|
|
|
|
|
@@ -26,6 +26,8 @@
|
|
|
|
|
initConfig<SlideConfig>();
|
|
|
|
|
reconfigure(ReconfigureAll);
|
|
|
|
|
|
|
|
|
|
+ m_timeLine.setEasingCurve(QEasingCurve::OutCubic);
|
|
|
|
|
+
|
|
|
|
|
connect(effects, QOverload<int, int, EffectWindow *>::of(&EffectsHandler::desktopChanged),
|
|
|
|
|
connect(effects, &EffectsHandler::desktopChanged,
|
|
|
|
|
this, &SlideEffect::desktopChanged);
|
|
|
|
|
connect(effects, QOverload<uint, QPointF, EffectWindow *>::of(&EffectsHandler::desktopChanging),
|
|
|
|
|
@@ -59,11 +61,8 @@
|
|
|
|
|
connect(effects, &EffectsHandler::desktopChanging,
|
|
|
|
|
@@ -62,11 +64,8 @@
|
|
|
|
|
{
|
|
|
|
|
SlideConfig::self()->read();
|
|
|
|
|
|
|
|
|
@ -57,7 +163,7 @@ diff --git a/src/effects/slide/slide.cpp b/src/effects/slide/slide.cpp
|
|
|
|
|
|
|
|
|
|
m_hGap = SlideConfig::horizontalGap();
|
|
|
|
|
m_vGap = SlideConfig::verticalGap();
|
|
|
|
|
@@ -96,13 +95,10 @@
|
|
|
|
|
@@ -99,13 +98,10 @@
|
|
|
|
|
timeDelta = presentTime - m_lastPresentTime;
|
|
|
|
|
}
|
|
|
|
|
m_lastPresentTime = presentTime;
|
|
|
|
@ -72,7 +178,7 @@ diff --git a/src/effects/slide/slide.cpp b/src/effects/slide/slide.cpp
|
|
|
|
|
+ m_currentPosition = m_startPos + (m_endPos - m_startPos) * m_timeLine.value();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const int w = effects->desktopGridWidth();
|
|
|
|
|
const QList<VirtualDesktop *> desktops = effects->desktops();
|
|
|
|
|
@@ -252,7 +248,7 @@
|
|
|
|
|
|
|
|
|
|
void SlideEffect::postPaintScreen()
|
|
|
|
@ -115,65 +221,3 @@ diff --git a/src/effects/slide/slide.cpp b/src/effects/slide/slide.cpp
|
|
|
|
|
|
|
|
|
|
effects->setActiveFullScreenEffect(this);
|
|
|
|
|
effects->addRepaintFull();
|
|
|
|
|
Index: src/effects/slide/slide_config.ui
|
|
|
|
|
IDEA additional info:
|
|
|
|
|
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
|
|
|
|
|
<+>UTF-8
|
|
|
|
|
===================================================================
|
|
|
|
|
diff --git a/src/effects/slide/slide_config.ui b/src/effects/slide/slide_config.ui
|
|
|
|
|
--- a/src/effects/slide/slide_config.ui (revision 9d677be2a82a781e6ab19216716d9e0d2dba6d53)
|
|
|
|
|
+++ b/src/effects/slide/slide_config.ui (date 1699986700887)
|
|
|
|
|
@@ -12,6 +12,39 @@
|
|
|
|
|
</property>
|
|
|
|
|
<layout class="QVBoxLayout" name="verticalLayout">
|
|
|
|
|
<item>
|
|
|
|
|
+ <layout class="QFormLayout" name="layout_Duration">
|
|
|
|
|
+ <item row="0" column="0">
|
|
|
|
|
+ <widget class="QLabel" name="label_Duration">
|
|
|
|
|
+ <property name="text">
|
|
|
|
|
+ <string>Duration:</string>
|
|
|
|
|
+ </property>
|
|
|
|
|
+ </widget>
|
|
|
|
|
+ </item>
|
|
|
|
|
+ <item row="0" column="1">
|
|
|
|
|
+ <widget class="QSpinBox" name="kcfg_Duration">
|
|
|
|
|
+ <property name="sizePolicy">
|
|
|
|
|
+ <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
|
|
|
|
+ <horstretch>0</horstretch>
|
|
|
|
|
+ <verstretch>0</verstretch>
|
|
|
|
|
+ </sizepolicy>
|
|
|
|
|
+ </property>
|
|
|
|
|
+ <property name="specialValueText">
|
|
|
|
|
+ <string extracomment="Duration of the slide animation.">Default</string>
|
|
|
|
|
+ </property>
|
|
|
|
|
+ <property name="suffix">
|
|
|
|
|
+ <string> milliseconds</string>
|
|
|
|
|
+ </property>
|
|
|
|
|
+ <property name="maximum">
|
|
|
|
|
+ <number>9999</number>
|
|
|
|
|
+ </property>
|
|
|
|
|
+ <property name="singleStep">
|
|
|
|
|
+ <number>10</number>
|
|
|
|
|
+ </property>
|
|
|
|
|
+ </widget>
|
|
|
|
|
+ </item>
|
|
|
|
|
+ </layout>
|
|
|
|
|
+ </item>
|
|
|
|
|
+ <item>
|
|
|
|
|
<widget class="QGroupBox" name="groupBox_Gaps">
|
|
|
|
|
<property name="title">
|
|
|
|
|
<string>Gap between desktops</string>
|
|
|
|
|
@@ -64,6 +97,13 @@
|
|
|
|
|
</widget>
|
|
|
|
|
</item>
|
|
|
|
|
</layout>
|
|
|
|
|
+ </widget>
|
|
|
|
|
+ </item>
|
|
|
|
|
+ <item>
|
|
|
|
|
+ <widget class="QCheckBox" name="kcfg_SlideDocks">
|
|
|
|
|
+ <property name="text">
|
|
|
|
|
+ <string>Slide docks</string>
|
|
|
|
|
+ </property>
|
|
|
|
|
</widget>
|
|
|
|
|
</item>
|
|
|
|
|
<item>
|
|
|
|
|