diff --git a/autotests/kwindoweffectstest.cpp b/autotests/kwindoweffectstest.cpp --- a/autotests/kwindoweffectstest.cpp +++ b/autotests/kwindoweffectstest.cpp @@ -142,19 +142,19 @@ { QFETCH(KWindowEffects::SlideFromLocation, location); - KWindowEffects::slideWindow(m_widget.data(), location); + KWindowEffects::slideWindow(m_widget->effectiveWinId(), location); performSlideWindowTest(m_widget->effectiveWinId(), -1, location); } void KWindowEffectsTest::testSlideWindowWidgetRemove() { xcb_window_t window = m_widget->effectiveWinId(); // first install the atom - KWindowEffects::slideWindow(m_widget.data(), KWindowEffects::TopEdge); + KWindowEffects::slideWindow(m_widget->effectiveWinId(), KWindowEffects::TopEdge); performSlideWindowTest(window, -1, KWindowEffects::TopEdge); // now delete it - KWindowEffects::slideWindow(m_widget.data(), KWindowEffects::NoEdge); + KWindowEffects::slideWindow(m_widget->effectiveWinId(), KWindowEffects::NoEdge); performSlideWindowRemoveTest(window); } diff --git a/src/kwindoweffects.h b/src/kwindoweffects.h --- a/src/kwindoweffects.h +++ b/src/kwindoweffects.h @@ -62,17 +62,20 @@ * Desktop and Floating won't have effect. * @param offset distance in pixels from the screen edge defined by location */ -KWINDOWSYSTEM_EXPORT void slideWindow(WId id, SlideFromLocation location, int offset); +KWINDOWSYSTEM_EXPORT void slideWindow(WId id, SlideFromLocation location, int offset = -1); +#ifndef KWINDOWSYSTEM_NO_DEPRECATED /** * Mark a window as sliding from screen edge * This is an overloaded member function provided for convenience * * @param widget QWidget corresponding to the top level window we want to animate * @param location edge of the screen from which we want the sliding effect. * Desktop and Floating won't have effect. + * @deprecated since 5.62, use slideWindow(widget->effectiveWinId(), location); */ -KWINDOWSYSTEM_EXPORT void slideWindow(QWidget *widget, SlideFromLocation location); +KWINDOWSYSTEM_DEPRECATED_EXPORT void slideWindow(QWidget *widget, SlideFromLocation location); +#endif /** * @return dimension of all the windows passed as parameter diff --git a/src/kwindoweffects.cpp b/src/kwindoweffects.cpp --- a/src/kwindoweffects.cpp +++ b/src/kwindoweffects.cpp @@ -20,6 +20,9 @@ #include "kwindoweffects_p.h" #include "pluginwrapper_p.h" #include +#ifndef KWINDOWSYSTEM_NO_DEPRECATED +#include +#endif KWindowEffectsPrivate::KWindowEffectsPrivate() { @@ -72,10 +75,12 @@ KWindowSystemPluginWrapper::self().effects()->slideWindow(id, location, offset); } +#ifndef KWINDOWSYSTEM_NO_DEPRECATED void slideWindow(QWidget *widget, SlideFromLocation location) { - KWindowSystemPluginWrapper::self().effects()->slideWindow(widget, location); + slideWindow(widget->effectiveWinId(), location, -1); } +#endif QList< QSize > windowSizes(const QList< WId > &ids) { diff --git a/src/kwindoweffects_dummy.cpp b/src/kwindoweffects_dummy.cpp --- a/src/kwindoweffects_dummy.cpp +++ b/src/kwindoweffects_dummy.cpp @@ -39,12 +39,6 @@ Q_UNUSED(offset) } -void KWindowEffectsPrivateDummy::slideWindow(QWidget *widget, KWindowEffects::SlideFromLocation location) -{ - Q_UNUSED(widget) - Q_UNUSED(location) -} - QList KWindowEffectsPrivateDummy::windowSizes(const QList &ids) { QList windowSizes; diff --git a/src/kwindoweffects_dummy_p.h b/src/kwindoweffects_dummy_p.h --- a/src/kwindoweffects_dummy_p.h +++ b/src/kwindoweffects_dummy_p.h @@ -28,7 +28,6 @@ ~KWindowEffectsPrivateDummy() override; bool isEffectAvailable(KWindowEffects::Effect effect) override; void slideWindow(WId id, KWindowEffects::SlideFromLocation location, int offset) override; - void slideWindow(QWidget* widget, KWindowEffects::SlideFromLocation location) override; QList< QSize > windowSizes(const QList &ids) override; void presentWindows(WId controller, const QList &ids) override; void presentWindows(WId controller, int desktop = NET::OnAllDesktops) override; diff --git a/src/kwindoweffects_p.h b/src/kwindoweffects_p.h --- a/src/kwindoweffects_p.h +++ b/src/kwindoweffects_p.h @@ -27,7 +27,6 @@ virtual ~KWindowEffectsPrivate(); virtual bool isEffectAvailable(KWindowEffects::Effect effect) = 0; virtual void slideWindow(WId id, KWindowEffects::SlideFromLocation location, int offset) = 0; - virtual void slideWindow(QWidget *widget, KWindowEffects::SlideFromLocation location) = 0; virtual QList windowSizes(const QList &ids) = 0; virtual void presentWindows(WId controller, const QList &ids) = 0; virtual void presentWindows(WId controller, int desktop = NET::OnAllDesktops) = 0; diff --git a/src/platforms/xcb/kwindoweffects.cpp b/src/platforms/xcb/kwindoweffects.cpp --- a/src/platforms/xcb/kwindoweffects.cpp +++ b/src/platforms/xcb/kwindoweffects.cpp @@ -27,7 +27,6 @@ #include #include #include -#include static const char DASHBOARD_WIN_CLASS[] = "dashboard\0dashboard"; using namespace KWindowEffects; @@ -135,11 +134,6 @@ } } -void KWindowEffectsPrivateX11::slideWindow(QWidget *widget, SlideFromLocation location) -{ - slideWindow(widget->effectiveWinId(), location, -1); -} - QList KWindowEffectsPrivateX11::windowSizes(const QList &ids) { QList windowSizes; diff --git a/src/platforms/xcb/kwindoweffects_x11.h b/src/platforms/xcb/kwindoweffects_x11.h --- a/src/platforms/xcb/kwindoweffects_x11.h +++ b/src/platforms/xcb/kwindoweffects_x11.h @@ -28,7 +28,6 @@ ~KWindowEffectsPrivateX11() override; bool isEffectAvailable(KWindowEffects::Effect effect) override; void slideWindow(WId id, KWindowEffects::SlideFromLocation location, int offset) override; - void slideWindow(QWidget* widget, KWindowEffects::SlideFromLocation location) override; QList< QSize > windowSizes(const QList &ids) override; void presentWindows(WId controller, const QList &ids) override; void presentWindows(WId controller, int desktop = NET::OnAllDesktops) override;