File indexing completed on 2025-11-30 12:09:16

0001 /*
0002     SPDX-FileCopyrightText: 2019 Martin Flöser <mgraesslin@kde.org>
0003 
0004     SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005 */
0006 #pragma once
0007 #include <KWindowSystem/private/kwindoweffects_p.h>
0008 #include <QObject>
0009 #include <kwindowsystem_version.h>
0010 
0011 namespace KWin
0012 {
0013 
0014 class WindowEffects : public QObject, public KWindowEffectsPrivate
0015 {
0016 public:
0017     WindowEffects();
0018     ~WindowEffects() override;
0019 
0020     bool isEffectAvailable(KWindowEffects::Effect effect) override;
0021     void slideWindow(WId id, KWindowEffects::SlideFromLocation location, int offset) override;
0022 #if KWINDOWSYSTEM_BUILD_DEPRECATED_SINCE(5, 81)
0023     QList<QSize> windowSizes(const QList<WId> &ids) override;
0024 #endif
0025 #if KWINDOWSYSTEM_BUILD_DEPRECATED_SINCE(5, 82)
0026     void presentWindows(WId controller, const QList<WId> &ids) override;
0027     void presentWindows(WId controller, int desktop = NET::OnAllDesktops) override;
0028     void highlightWindows(WId controller, const QList<WId> &ids) override;
0029 #endif
0030     void enableBlurBehind(WId window, bool enable = true, const QRegion &region = QRegion()) override;
0031     void enableBackgroundContrast(WId window, bool enable = true, qreal contrast = 1, qreal intensity = 1, qreal saturation = 1, const QRegion &region = QRegion()) override;
0032 #if KWINDOWSYSTEM_BUILD_DEPRECATED_SINCE(5, 67)
0033     void markAsDashboard(WId window) override;
0034 #endif
0035 };
0036 
0037 }